Câu 1: Kiểu dữ liệu không có trong C?
a. int b. float c. string d. short e. char
Câu 2: Đoạn mã sau sẽ in ra gì ([ ] biểu diễn
một khoảng trắng)?
float x = 3.6239;
printf("%3.1f \n", x);
a. 3.6 b. 3.62 c. 3.624
d. [ ]3.62 e. [ ][ ]3.6
Câu 3: Cho biết kết quả được in ra bởi đoạn
mã sau?
int x = 27, y = 12;
cout << x/y;
a. 2 b. 2.25 c. 3 d. 3.0
Câu 4: Cho biết giá trị của x khi thực hiện
xong đoạn mã sau?
int x = 4;
x *= x - 2;
a. 2 b. 4 c. 8 d. 14 e. 16
Câu 5: Cho biết giá trị của biểu thức sau?
(x < y) ? x : y;
a. x b. y c. 0
d. giá trị nhỏ hơn giữa a và b
e. giá trị lớn hơn giữa a và b
6 trang |
Chia sẻ: thanhle95 | Lượt xem: 602 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Đề thi cuối học kỳ II môn Lập trình ứng dụng trong kỹ thuật - Mã đề 01 - Năm học 2017-2018 - Đại học Sư phạm Kỹ thuật thành phố Hồ Chí Minh, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1
TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT TPHCM
KHOA CƠ KHÍ CHẾ TẠO MÁY
BỘ MÔN CƠ ĐIỆN TỬ
ĐỀ THI CUỐI KỲ HỌC KỲ II NĂM HỌC 2017-2018
Môn: LẬP TRÌNH ỨNG DỤNG TRONG KỸ THUẬT
Mã môn học: APEN331329
Đề số/Mã đề: 01. Đề thi có 06 trang.
Thời gian: 75 phút.
Được phép sử dụng tài liệu (KHÔNG dùng laptop).
SV làm bài trực tiếp trên đề thi và nộp lại đề
Chữ ký giám thị 1 Chữ ký giám thị 2
Điểm và chữ ký
CB chấm thi thứ nhất CB chấm thi thứ hai
Họ và tên: ...........................................................................
Mã số SV: ...........................................................................
Số TT: .......................... Phòng thi: ....................................
PHẦN I: TRẮC NGHIỆM (7 điểm, 0.25 điểm/câu)
PHIẾU TRẢ LỜI
Hướng dẫn trả lời câu hỏi
Chọn câu trả lời đúng: Bỏ chọn: Chọn lại:
STT a b c d e STT a b c d e
1 15
2 16
3 17
4 18
5 19
6 20
7 21
8 22
9 23
10 24
11 25
12 26
13 27
14 28
2
Câu 1: Kiểu dữ liệu không có trong C?
a. int b. float c. string d. short e. char
Câu 2: Đoạn mã sau sẽ in ra gì ([ ] biểu diễn
một khoảng trắng)?
float x = 3.6239;
printf("%3.1f \n", x);
a. 3.6 b. 3.62 c. 3.624
d. [ ]3.62 e. [ ][ ]3.6
Câu 3: Cho biết kết quả được in ra bởi đoạn
mã sau?
int x = 27, y = 12;
cout << x/y;
a. 2 b. 2.25 c. 3 d. 3.0
Câu 4: Cho biết giá trị của x khi thực hiện
xong đoạn mã sau?
int x = 4;
x *= x - 2;
a. 2 b. 4 c. 8 d. 14 e. 16
Câu 5: Cho biết giá trị của biểu thức sau?
(x < y) ? x : y;
a. x b. y c. 0
d. giá trị nhỏ hơn giữa a và b
e. giá trị lớn hơn giữa a và b
Câu 6: Cho biết các giá trị được in ra khi
thực hiện đoạn mã sau?
int k = 1, t;
t = -k--;
printf ("%d %d", k, t);
a. 0 1 b. 0 -1 c. -1 -2
d. 0 -2 e. -1 -1
Câu 7: Cho biết đoạn mã nào sau đây sẽ đọc
được biến x kiểu số nguyên từ dòng lệnh?
a. scanf("%d", &x); b. scanf("%d", x);
c. scanf("%f", &x); d. scanf("%f", x);
Câu 8: Lệnh nào sẽ cho kết quả x = 1.0?
a. double x = 6.0/4.0;
b. double x = (int)6.0/4.0;
c. double x = (int)(6.0/4.0);
d. double x = 6.0/(int)4.0;
Câu 9: Cho biết kết quả của đoạn mã sau?
void fun() {
int a = 91, b = -1;
if (a >= 90)
if (b <= -2) cout << "A";
else cout << "B";
}
a. A b. B c. Không in gì cả d. Lỗi
Câu 10: Cho biết chuỗi được in ra khi thực
hiện đoạn mã sau?
int x = -1;
if (x++) printf("A");
else printf("B");
if (!x) printf("C");
a. A b. B c. C d. BC e. AC
Câu 11: Cho biết các giá trị được in ra khi
thực hiện đoạn mã sau?
int c = 0, n = 0;
switch (c == 0) {
case 0: n += 1;
case 1: n = n * 2;
}
a. 0 b. 1 c. 2 d.3 e. 4
Câu 12: Cho biết kết quả được in ra bởi
đoạn mã sau nếu x = 0?
if (x == 0) {
cout << "x is 0";
} if (x == 1) {
cout << "x is 1";
} else {
cout << "not 0 or 1";
}
3
a. x is 0 b. x is 1
c. x is 0 d. x is 0 e. x is 1
x is 1 not 0 or 1 not 0 or 1
Câu 13: Cho biết kết quả được in ra bởi
đoạn mã sau?
for(n = 1, m = 5; n <= 5; n++, m--)
printf("%d %d - ", n, m);
a. 1 5 - 2 4 - 3 3 - 4 2 - 5 1 -
b. 1 4 - 2 3 - 3 2 - 4 1 - 5 0 -
c. 5 1 - 4 2 - 3 3 - 2 4 - 1 5 -
d. 1 5 - 2 4 - 3 3 - 4 2 -
e. 1 4 - 2 3 - 3 2 - 4 1 -
Câu 14: Cho biết bao nhiêu dấu * được in ra
bởi đoạn mã sau?
int i = 0, n = 10;
while (i++ < n){
if (i %2 == 0) continue;
cout << "*";
}
a. 0 b. 1 c. 5 d. 10 e. Vô hạn
Câu 15: Ta cần sử dụng lệnh lặp nào để
chắc rằng các lệnh trong vòng lặp được thực
hiện ít nhất một lần?
a. while b. do c. for d. Tất cả đều sai
Câu 16: Cho biết lệnh printf được thực hiện
bao nhiêu lần trong đoạn mã sau?
int i = 0;
while (i < 10) {
if(i = 2) printf("hi");
i++;
}
a. 0 b. 1 c. 9 d. 10 e. Đáp án khác
Câu 17: Cho biết kết quả được in ra khi hàm
main() được gọi?
void fun(int x){
x = 73;
cout << x << " ";
}
void main() {
int x = 29;
fun(x);
cout << x << "\n";
}
a. 29 29 b. 73 73 c. 29 73
d. 73 29 e. Tất cả đều sai
Câu 18: Cho biết đoạn mã sau in ra giá trị
nào?
void main(){
int[] a = {1, 2, 3, 4, 1, 2, 3, 4};
cout << fun(a, 3);
}
int fun(int[] a , int i){
int s = i % 2 == 0 ? a[i] * 2 : a[i] +1;
if(i == 0) return s;
return s + f(a, i - 1);
}
a. 16 b. 32 c. 15 d. 30
e. Tất cả đều sai
Câu 19: Cho biết giá trị được in ra bởi đoạn
mã sau?
void main() {
int a[10] = {0,1,2,3,4,5,6,7,8,9};
for(int i = 0; i < 10; i++)
if(!(a[i] % 2)) printf("%d", a[i]);
}
a. 02468 b. 13579 c. 01234
d. 56789 e. Tất cả đều sai
Câu 20: Cho trước khai báo: int a[10];
Lệnh nào tương đương với lệnh sau?
*(a + 2) = 6;
4
a. a[3] = 6; b. *a[2] = 6;
c. a[2] = 6; d. *a[3] = 6;
Câu 21: Cho biết giá trị của i khi đoạn mã
sau thực hiện xong?
int *p, i = 3;
p = &i;
(*p)++;
i++;
a. 3 b. 4 c. 5 d. 6 e. 8
Câu 22: Cho mảng a như sau:
int a[3][5] = {{27, 32, 14, 9, 26},
{74, 42, 30, 15, 19},
{41, 63, 48, 20, 3}};
Cho biết giá trị a[3][4]?
a. 3 b. 19 c. 20 d. Không tồn tại
Câu 23: Trong C, biểu thức nào sau đây sẽ
trả về 1 nếu s1 = "hi" và s2 = "hi"?
a. s1 == s2 b. strcmp(s1, s2)
c. strlen(s1) d. s1 == "hi"
Câu 24: Những đối tượng như text box,
check box, button được thêm vào Form từ?
a. Menu bar b. Properties Window
c. Toolbox d. Menu bar
Câu 25: Đối tượng nào sau đây có thể được
chọn hoặc bỏ chọn?
a. Label b. Radio button c. Text box
d. Check box e. Tất cả đều sai
Câu 26: Lệnh nào sau đây dùng để thiết lập
check box tên cbx ở trạng thái được chọn?
a. cbx = False; b. cbx = True;
c. cbx = Visible; d. cbx = Enable;
e. Tất cả đều sai
Câu 27: Cho biết phương thức dùng để
thêm một item vào cuối listbox?
a. Items.Insert b. Items.End
c. Items.Add d. Items.New
Câu 28: Phát biểu nào sai về listbox và
combobox?
a. Cả hai đều có thể chứa nhiều item
b. Ta có thể nhập giá trị cho combobox
c. Cả hai đều chỉ cho phép chọn một item
d. Listbox chỉ cho phép chọn item có sẵn
e. Tất cả đều sai
5
PHẦN II: TỰ LUẬN (3 điểm)
Câu 29 (1 điểm): Cho 2 đối tượng giao diện: Textbox (T1) và ListBox (L1) (các phần tử của
Listbox là số nguyên). Hãy viết đoạn lệnh cho phép hiển thị vị trí đầu tiên của giá trị nhỏ nhất
trong Listbox ra Textbox.
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
Câu 30 (1 điểm): Giả sử ta đã có hàm LaSNT(n) trả về 1 nếu n là số nguyên tố và trả về 0 nếu n
không là số nguyên tố. Viết hàm liệt kê m số nguyên tố liên tiếp bắt đầu từ p.
void LietKeSNT(int m, int p) { ...................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
...................................................................................................................................................... .
...................................................................................................................................................... .
...................................................................................................................................................... .
...................................................................................................................................................... .
}
6
Câu 31 (1 điểm): Cho mảng số nguyên a có n phần tử, và số k. Viết hàm đếm xem trong mảng a
có bao nhiêu cặp phần tử mà tổng của chúng là k.
int DemCapPhanTu(int a[], int n, int k) { ...................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
...................................................................................................................................................... .
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
.......................................................................................................................................................
.......................................................................................................................................................
.......................................................................................................................................................
...................................................................................................................................................... .
.......................................................................................................................................................
}
Ghi chú: Cán bộ coi thi không được giải thích đề thi.
Chuẩn đầu ra của học phần (về kiến thức) Nội dung kiểm tra
[CĐR 1.1]: Giải thích được, mô tả được hoạt động của một
chương trình lập trình máy tính.
Câu 1-28.
[CĐR 2.2]: Trình bày được các bài toán điều khiển dưới
dạng thuật toán và giải thuật.
Câu 29,30, 31
[CĐR 4.1]: Biết sử dụng các phương pháp lập trình để xây
dựng chương trình.
Câu 29,30, 31
Ngày 01 tháng 06 năm 2018
Thông qua Bộ môn