intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Đề thi & đáp án lý thuyết Lập trình máy tính năm 2012 (Mã đề LT33)

Chia sẻ: Chien Chien | Ngày: | Loại File: PDF | Số trang:6

36
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Đề thi lý thuyết Lập trình máy tính năm 2012 (Mã đề LT33) sau đây có nội dung đề thi gồm 3 câu hỏi với hình thức thi tự luận và thời gian làm bài trong vòng 150 phút. Ngoài ra, tài liệu này còn kèm theo đáp án giúp bạn có thể dễ dàng kiểm tra so sánh kết quả được chính xác hơn. Mời các bạn cùng tham khảo và thử sức mình với đề thi nghề này nhé.

Chủ đề:
Lưu

Nội dung Text: Đề thi & đáp án lý thuyết Lập trình máy tính năm 2012 (Mã đề LT33)

  1. CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ĐỀ THI TỐT NGHIỆP CAO ĐẲNG NGHỀ KHÓA 3 (2009-2012) NGHỀ: LẬP TRÌNH MÁY TÍNH MÔN THI: LÝ THUYẾT CHUYÊN MÔN NGHỀ Mã đề thi: LTMT - LT33 Hình thức thi: Tự luận Thời gian: 150 phút (không kể thời gian giao đề thi) ĐỀ BÀI Câu 1: (2.5 điểm) Cho lược đồ quan hệ R(U, F) với U = ABCDEG, F = {B --> C, AC --> D, D --> G, AG --> E} Cho biết những phụ thuộc hàm sau đây có thuộc hay không? a. AB --> G b. BD --> E Câu 2: (3 điểm) Cho dãy khóa K: 32 43 18 80 60 59 93 70 55 Hãy sắp xếp lại dãy khóa trên theo thứ tự tăng dần và minh họa quá trình tìm kiếm với X1 = 80; X2 = 81 theo phương pháp tìm kiếm nhị phân. Câu 3: (1.5 điểm) Cho biết kết quả hiển thị ra màn hình của đoạn chương trình sau: Lập bảng để giải thích từng dòng lệnh #include; int main () { int value1 = 5, value2 = 15; int *p1, *p2; p1 = &value1; p2 = &value2; *p1 = 10;
  2. *p2 = *p1; p1 = p2; *p1 = 20; cout
  3. CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ĐÁP ÁN ĐỀ THI TỐT NGHIỆP CAO ĐẲNG NGHỀ KHÓA 3 (2009-2012) NGHỀ: LẬP TRÌNH MÁY TÍNH MÔN THI: LÝ THUYẾT CHUYÊN MÔN NGHỀ Mã đề thi: DA LTMT - LT33 Hình thức thi: Viết tự luận Thời gian: 150 phút (không kể thời gian giao đề thi) ĐÁP ÁN Câu 1: (2.5 điểm) TT Nội dung Điểm a v× 1.5 điểm b Không thuộc v× 1 điểm Câu 2: (3 điểm) Cho dãy khóa K: 32 43 18 80 60 59 93 70 55 Minh họa quá trình tìm kiếm X1 = 80; X2 = 81 theo phương pháp tìm kiếm nhị phân. TT Nội dung Điểm Cho dãy khóa K: 32 43 18 80 60 59 93 70 55 Minh họa quá trình tìm kiếm X1 = 80; X2 = 81 theo 3 điểm phương pháp tìm kiếm nhị phân. Dãy khóa K: 32 43 18 80 60 59 93 70 55 1 điểm Để có thể tìm kiếm được theo phương pháp tìm kiếm nhị phân, dãy tìm kiếm phải là dãy có thứ tự. Ta Trang: 1/ 4
  4. có thể sắp xếp dãy K theo thứ tự tăng dần: 18 32 43 55 59 60 70 80 93 * Minh họa quá trình tìm kiếm X1 = 80 theo phương pháp tìm kiếm nhị phân: + Khởi đầu: L = 1; R = 9. - m = (L + R) div 2 = (1 + 9) div 2 = 5 - So sánh K[m] = K[5] = 59 < X1 nên tiếp tục tìm kiếm X1 trong dãy con có: L = 6; R = 9 + Với L = 6; R = 9 - m = (L + R) div 2 = (6 + 9) div 2 = 7 1 điểm - So sánh K[m] = K[7] = 70 < X1 nên tiếp tục tìm kiếm X1 trong dãy con có: L = 8; R = 9 + Với L = 8; R = 9 - m = (L + R) div 2 = (8 + 9) div 2 = 8 - So sánh K[m] = K[8] = 80 = X1 nên quá trình tìm kiếm dừng lại vì đã tìm thấy X1 tại vị trí thứ 8 trong dãy K. * Minh họa quá trình tìm kiếm X2 = 81 theo phương pháp tìm kiếm nhị phân: + Khởi đầu: L = 1; R = 9. - m = (L + R) div 2 = (1 + 9) div 2 = 5 - So sánh K[m] = K[5] = 59 < X2 nên tiếp tục tìm kiếm X2 trong dãy con có: 1 điểm L = 6; R = 9 + Với L = 6; R = 9 - m = (L + R) div 2 = (6 + 9) div 2 = 7 - So sánh K[m] = K[7] = 70 < X2 nên tiếp tục tìm kiếm X2 trong dãy con có: L = 8; R = 9 Trang: 2/ 4
  5. + Với L = 8; R = 9 - m = (L + R) div 2 = (8 + 9) div 2 = 8 - So sánh K[m] = K[8] = 80 < X2 nên tiếp tục tìm kiếm X2 trong dãy con có: L = 9; R = 9 + Với L = 9; R = 9 - m = (L + R) div 2 = (9 + 9) div 2 = 9 - So sánh K[m] = K[9] = 80 > X2 nên tiếp tục tìm kiếm X2 trong dãy con có: L = 9; R = 8 + Với L = 9; R = 8 ta thấy L > R nên quá trình tìm kiếm dừng lại mà không tìm thấy X2 trong dãy khóa K Câu 3: (1.5 điểm) Cho biết kết quả hiển thị ra màn hình của đoạn chương trình sau: Lập bảng để giải thích từng dòng lệnh #include; int main () { int value1 = 5, value2 = 15; int *p1, *p2; p1 = &value1; p2 = &value2; *p1 = 10; *p2 = *p1; p1 = p2; *p1 = 20; cout
  6. Lệnh Giá trị của các biến int value1 = 5, value2 = 15; Khai báo 2 biến value1 và value2 kiểu int và gán giá trị cho 2 biển. Value1 =5,value2 =15 int *p1, *p2; khai con trỏ p1,p2 kiểu int p1 = &value1; Cho con trỏ p1 trỏ tới p2 = &value2; địa chỉ của value1 và con trỏ p2 trỏ tới value2 *p1 = 10; Gán giá trị của ô nhớ con trỏ p1 đang trỏ tới bằng 10=> value1 =10 1 điểm *p2 = *p1 Giá trị trỏ bỏi p2 gán = giá trị trỏ bởi p1 Lúc này value1 = 10, value 2 =10 p1 = p2; Phép gán 2 con trỏ, lúc này p1 cũng trỏ tới value2 *p1 = 20; giá trị trỏ bới p1 sẽ được gán là 20=> value2 =20 cout
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2