TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM KHOA ĐIỆN – ĐIỆN TỬ BM: KT MÁY TÍNH VÀ VIỄN THƠNG Chữ ký giám thị Chữ ký giám thị ĐỀ THI CUỐI KỲ HK NĂM HỌC 2015- 2016 Môn: Kỹ thuật lập trình giao tiếp Mã mơn học: PRIN337664 Đề số/Mã đề: 01 Đề thi có 08 trang Thời gian: 75 phút Được sử dụng tài liệu giấy Điểm chữ ký CB chấm thi thứ CB chấm thi thứ hai SV làm trực tiếp đề thi, viết kết vào dòng ô trống qui định Họ tên: Mã số SV: Số TT: Phòng thi: Câu 1: (0.5 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { int a = 5, b = 2; float c = 2; b += a++/c; printf("%d %d ", a, b); } Kết in hình: Câu 2: (0.5 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { int a = 6, b = 4, c = 5; if (a > b) if (b > c) a = b + c; else b = a + c; printf ("%d %d", a, b); } Kết in hình: Câu 3: (0.5 điểm) Cho chương trình sau: #include void main() { int a, b; scanf("%d%d", &a, &b ); if (a == b) printf ("bang nhau! "); else printf("khac nhau!"); } Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 1/8 Hãy viết lại chương trình dùng cú pháp lệnh switch case cho chức chương trình khơng đổi Câu 4: (0.5 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { int i, a = 0; for (i = 9; i > 0; i-=2) if (i%5 != 0) a+= i; else break; printf ("%d %d", a, i); } Kết in hình: Câu 5: (0.5 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { int i = 0, a = 4; { a += i; i++; }while (i < && a < 8); printf("%d %d", a, i); } Kết in hình: Câu 6: (0.5 điểm) Cho chương trình sau: #include void main() { int i = 5; while ( i > 0) printf("%d } ", i); Hãy viết lại chương trình dùng lệnh for cho chức chương trình không đổi Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 2/8 Câu 7: (1.0 điểm) Cho biết kết in hình sau chạy chương trình sau: #include void main() { float a[4] = {1,1,0,0}; float *p1 = &a[0]; float *p2 = &a[2]; *p1 = *p2; *(p1 + 2) = *p2 + 2; printf (" %f %f %f %f", a[0], a[1], a[2], a[3]); } Kết in hình: Câu 8: (1.0 điểm) Cho biết kết in hình sau chạy chương trình sau: #include int func1 (int x, int y, int *z, int *t) { x++; y++; *z = y; *t = x; if (x > y) { *z = x; *t = y; } if ( x!=y) return 1; else return 0; } void main() { int a = 3, b = 5, c = 0, d = 0; if (func1(a, b, &c, &d) == 0) printf("Not found!"); else printf ("%d %d %d %d", a, b, c, d); } Kết in hình: Câu 9: (2.0 điểm) Chương trình sau thực chức năng: Nhập vào mảng gồm n số nguyên, dùng trỏ cấp phát nhớ động Kiểm tra xem mảng nhập có theo thứ tự tăng dần hay chưa: o Nếu chưa: in thông báo “Mang chua duoc sap xep tang” o Nếu theo thứ tự tăng dần: in tất số chẵn có mảng, mảng khơng tồn số chẵn in thơng báo “Mang khong co so chan” Hãy viết hồn thiện chương trình #include #include #include //Hàm Function1 thực nhập liệu cho mảng chiều số nguyên void Function1(int *x, int y) { //Hoàn thiện nội dung hàm nhập liệu cho mảng (0.25 đ) Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 3/8 } //Hàm Function2 thực việc kiểm tra mảng có số chẵn hay khơng //Hàm trả về: số có, số khơng có số chẵn mảng int Function2(int *x, int y) { //hoàn thiện nội dung hàm kiểm tra mảng có số chẵn hay không (0.25 đ) } //Hàm Function3 thực việc kiểm tra xem mảng xếp tăng dần chưa Hàm trả về: số mảng xếp tăng dần, số chưa int Function3(int *x, int y) { //hoàn thiện nội dung hàm kiểm tra liệu mảng (0.5 đ) } void main() { int *array, n, i; printf("\n Nhap so luong phan tu mang: "); scanf("%d", &n); //cấp phát nhớ mảng cho trỏ array (0.25 đ) if(array!=NULL) { printf("\n Nhap gia tri cho cac phan tu\n"); //Gọi hàm Function1 để xử lý nhập liệu vào mảng (0.25 đ) //Kiểm tra liệu mảng theo thứ tự tăng dần chưa, dùng hàm Function3 if ( Function3(array, n) == 0) printf("\n Mang chua duoc sap xep tang! \n"); else Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 4/8 { //xử lý mảng theo thứ tự tăng dần //Gọi hàm Function2 để kiểm tra mảng có tồn số chẵn hay khơng // không tồn số chẵn: in thông báo (0.25 đ) // có số chẵn: in tất số chẵn có (0.25 đ) } } } Câu 10: (2.0 điểm) Chương trình sau thực chức năng: Tạo kiểu cấu trúc LinhKien để quản lý linh kiện có, gồm thông tin: Mã linh kiện (maLk): định dạng số nguyên Tên linh kiện (tenLk): định dạng chuỗi Số lượng có (soLuong): định dạng số nguyên Nhập thông tin (mã linh kiện, tên linh kiện, số lượng) 10 loại linh kiện khác Kiểm tra in thông tin loại linh kiện hết (có số lượng có 0) 10 loại Cho phép người dùng tìm kiếm thơng tin loại linh kiện cách nhập vào mã linh kiện Sau đó: Nếu tìm thấy: in tra thơng tin chi tiết linh kiện Nếu khơng tìm thấy: in thông báo “khong co linh kien can tim” Hãy viết hồn thiện chương trình #include #include struct LinhKien { //Khai báo thành phần cấu trúc (0.25 đ) }; void main() { struct LinhKien data[10]; int i, ma; //Nhập liệu 10 loại linh kiện, lưu vào mảng data (0.25 đ) Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 5/8 //In thông tin loại linh kiện hết (0.5 đ) printf("\n Nhap ma linh kien muon tim: \n"); scanf("%d", &ma); //Tim kiếm linh kiện theo mã vừa nhập //Nếu tìm thấy: in thơng tin chi tiết linh kiện (0.5 đ) //Nếu khơng tìm thấy: in thơng báo (0.5 đ) } Câu 11: (1.0 điểm) Cho chương trình C# với giao diện thiết kết hình Tên đối tượng Form (radioButton, textbox, Button) đặt minh họa hình Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 6/8 Chương trình thực chức tìm số lớn tìm số nhỏ số nhập vào số nhập vào textBox1 textBox2 Lựa chọn chức tìm số lớn hay tìm số nhỏ radioButton1 radioButton2 Kết xuất textBox3 Hãy viết mã nguồn hàm xử lý cho nút nhấn “Thực thi” private void button1_Click(object sender, EventArgs e) { } Ghi chú:Cán coi thi khơng giải thích đề thi Chuẩn đầu học phần (về kiến thức) G1.2 Trình bày cấu trúc chương trình C, C# Trình bày cú pháp lệnh, hoạt động áp dụng cấu trúc rẽ nhánh lặp ngơn ngữ C Trình bày cách khai báo áp dụng mảng, chuỗi để quản lý liệu C Trình bày cách khai báo trỏ sử dụng trỏ để truy xuất vùng nhớ Nội dung kiểm tra Câu Câu Câu Câu Câu Câu Câu Trình bày định nghĩa hàm sử dụng hàm chương trình Trình bày định nghĩa kiểu cấu trúc sử dụng biến cấu trúc để lưu trữ quản lý liệu G2.2 Phân tích, kiểm chứng, điều chỉnh chương trình ứng dụng viết ngôn ngữ C, C# Câu G4.4 Áp dụng cấu trúc điều khiển, áp dụng thao tác xử lý liệu, Câu Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 7/8 xây dựng sử dụng hàm hỗ trợ để thiết kế, lập trình ứng dụng giải Câu 10 yêu cầu dùng ngôn ngữ C, C# Câu 11 Ngày tháng năm 2016 Thông qua môn Số hiệu: BM3/QT-PĐBCL-RĐTV Trang: 8/8