Đề thi Cuối kì môn Kỹ thuật lập trình - Trường Đại học Bách khoa Hồ Chí Minh

Đại Học Bách Khoa TP. HCM  
ĐỀ TH  CUỐ  K  
Khoa KH & KT Máy tính  
M n  K  Thu t   p Tr nh  
Thời gian: 90 phút  
Đề thi gồm 04 trang. Sinh viên kh ng được sử dụng tài liệu  
Họ và tên ………………………………………………..  
MSSV ……………………………………… h m l p……………………  
(Lưu ý: Sinh viên nộp lại đề thi. Làm phần I t ên đề thi. Làm phần II t ên giấy thi)  
PHẦ     (5 điểm)  
1.  
2.  
3.  
4.  
5.  
6.  
11.  
16.  
7.  
12.  
17.  
8.  
13.  
18.  
9.  
14.  
19.  
10.  
15.  
20.  
Hãy chọn duy nhất một đáp án (đáp án đúng nhất). Các khai báo về thư viện, các hàm cơ bản  
(clrscr(), getch(), void main(), …) và khai báo khác (nếu cần thiết) được xem như đầy đủ.  
1. Trong C++, lệnh nào c  tác dụng x a màn h nh   
A. clrssr();  
B. clrscl();  
C. clrsr();  
D. clrscr();  
2. Trong C++, nếu muốn dùng lệnh x a màn h nh th  phải khai báo câu lệnh tiền xử lý nào  
A. #include <iostream.h>  
C. #include <conio.h>  
B. #include <stdio.h>  
D. không khai báo gì cả  
3. Chọn phát biểu sai  
A. Ngôn ngữ C++ không dùng chữ có dấu Tiếng Việt.  
B. Mỗi chữ cái, chữ số hoặc ký hiệu được gọi là một ký tự (character) trong ngôn ngữ C++.  
C. Dòng chú thích là một lệnh trong chương trình.  
D. Ký tự trống là một ký tự trong tập ký tự của ngôn ngữ C++, nó dùng để tách các từ.  
4. Cho biết giá trị của a, b, c sau khi chạy đoạn chương tr nh sau đây.  
int bla(int x, int y) {  
x = x + y;  
y = 7;  
return y;  
}
void main() {  
int a, b, c;  
}
a = 1;  
b = 2;  
c = bla(a,b);  
A. a = 3 b = 1 c = 1  
C. a = 1 b = 7 c = 7  
B. a = 1 b = 2 c = 7  
D. a = 3 b = 7 c = 7  
5. Cho biết giá trị của x = 15 / -4 và y = 15 % -4  
A. x = -3 y = -3  
B. x = -3 y = 3  
C. x = 3 y = 3  
D. x = 3 y = -3  
6. Cho biết giá trị của n và x sau khi chạy đoạn chương tr nh sau đây:  
int n, x = 7;  
A. n = 60 x = 6  
C. n = 80 x = 5  
x = x - 1;  
n = (n = 5, n *= 10 + x); x--;  
B. n = 80 x = 6  
D. Câu A, B, C đều sai.  
7. Cho biết giá trị của b sau khi chạy đoạn chương tr nh sau đây:  
int a = 1, b = (a)? 1 : 2;  
b += 1;  
A. 2  
B. 0  
C. 3  
D. Lỗi chương trình  
Page 1 of 4  
8. Cho biết kết quả xuất ra sau khi chạy đoạn chương tr nh sau đây:  
void main()  
{
int a, b, c, n;  
n = 889;  
a = n / 100;  
b = (n % 100) / 10;  
c = (n % 100) % 10;  
cout << a << b << c;  
}
A. 25  
B. 889  
C. 16  
D. 9  
9. Cho biết kết quả xuất ra sau khi chạy đoạn chương tr nh sau đây:  
int num = 5, sum = 0;  
while (num > 0)  
{
if (num % 2 != 0)  
sum += num;  
--num;  
}
cout << "The sum is " << sum << endl;  
A. The sum is 9  
B. The sum is 5  
C. The sum is 15  
D. The sum is 2  
10. Cho biết kết quả xuất ra sau khi chạy đoạn chương tr nh sau đây:  
int int1 = 120;  
cin >> int2;  
int int2, int3;  
// Giả sử người sử dụng nhập vào 30  
if ((int1 > 100) && (int2 = 50))  
int3 = int1 + int2;  
else  
int3 = int1 - int2;  
cout << int1 << ' ' << int2 << ' ' << int3 << endl;  
A. 120 30 15  
B. 120 30 70  
C. 120 50 170  
D. 120 30 90  
11. Cho đoạn chương tr nh sau  
if (i == j)  
{ cout << "a" << endl; }  
else if ((i % j) < 3) { cout << "b" << endl; }  
else if (i < (j-1))  
else  
{ cout << "c" << endl; }  
{ cout << "d" << endl; }  
Nếu i = 4 và j = 9, cho biết kết quả xuất ra:  
A. a B. d C. b  
D. c  
12. Cho biết kết quả xuất ra sau khi chạy chương tr nh sau đây:  
void main() {  
int x = 7, y = 45, z = 63, min_num;  
if (x < z) min_num = x;  
else  
if(y < z) min_num = y;  
else min_num = z;  
cout << "The minimum is: " << min_num << endl;  
min_num = z;  
}
A. Các câu trả lời khác đều sai.  
C. The minimum is 45  
B. The minimum is 7  
D. The minimum is 63  
13. Cho biết kết quả xuất ra sau khi chạy chương tr nh sau đây:  
void fn(int n[]) { n[3] = n[3] + 1; }  
int main() {  
int num[5] = { 2, 4, 6, 8, 10 };  
for( i = 0; i < 5; i++ )  
cout << num[i] << ' ';  
return 0;  
int i;  
fn(num);  
}
Page 2 of 4  
A. 2 4 6 9 10  
B. 2 4 6 8 10  
C. 2 4 7 8 10  
D. Không hiển thị gì cả.  
14. Cho biết kết quả xuất ra sau khi chạy chương tr nh sau đây:  
void fun(int a, int b)  
{
a += 20;  
b += 30;  
}
void main()  
{
int x = 10, y = 50;  
fun(x, y);  
cout << x << " " << y << endl;  
}
A. 30 80  
B. 10 50  
C. 30 50  
D. 10 80  
15. Cho biết kết quả xuất ra sau khi chạy đoạn chương tr nh sau đây:  
int n;  
n = (1 / 3) * 3;  
cout << n;  
A. 1  
B. 3  
C. 0  
D. 9  
16. Cho biết giá trị của x sau khi chạy đoạn chương tr nh sau đây  
void main()  
{
float a[5] = {5, 4, 3, 2, 1};  
for (i = 0; i < 5; i++)  
a[i] += a[0];  
float x;  
int i;  
x = a[1] + a[4];  
}
A. 125  
B. 25  
C. 5  
D. 100  
17. Cho biết kết quả xuất ra sau khi chạy chương tr nh sau đây:  
void main() {  
int a[ ][4]={1,2,3,4,5,6,7,8,9};  
for (int i = 0; i < 4; i++)  
cout << a[1][i] << " ";  
}
A. 5 7 8 9  
B. 1 2 3 4  
C. 5 6 7 8  
D. 4 5 6 7  
18. Cho biết kết quả xut ra sau khi chạy đoạn chương tr nh sau đây:  
int S = 0, i = 1, j;  
while (i < 10) {  
j = 1;  
while (j < 10) {  
S++;  
i += 3;  
cout << S << endl;  
j += 2;  
}
}
A. -10  
B. 15  
C. 221  
D. 108  
19. Cho biết kết quả xuất ra sau khi chạy đoạn chương tr nh sau đây:  
int S = 10;  
for (int i = 0; i < 5; i++)  
for (int j = 0; j < 5; j++) {  
if((i + j) % 2 == 1)  
S += 2;  
else  
S--;  
}
cout << S;  
Page 3 of 4  
A. -18  
B. 41  
C. 21  
D. 118  
20. Cho biết kết quả xuất ra sau khi chạy đoạn chương tr nh sau đây:  
int i, s = 0;  
for( i = 2; i >= 1; i--)  
for(int j = 3; j >= 1; j--)  
s = s + i * j;  
cout << s << endl;  
A. -123  
B. 15  
C. 20  
D. 18  
PHẦ     (5 điểm)  
Bài 1 (2 điểm)  
Cho n là số nguyên dương và s là tổng các ước số của nó (kể cả số 1). Biết rằng:  
n deficient  
n perfect  
n abundant  
nếu s < n  
nếu s = n  
nếu s > n  
Viết chương trình nhập vào số nguyên dương n; sau đó, in phân loại (deficient, perfect,  
abundant) của số n.  
Ví dụ: số 8 là deficient  
vì 1 + 2 + 4 < 8  
số 6 là perfect vì 1 + 2 + 3 = 6  
số 12 là abundant  
Bài 2 (1,5 điểm)  
vì 1 + 2 + 3 + 4 + 6 > 12  
Viết chương trình nhập vào số nguyên dương n; sau đó, in tích số của các số nguyên tố bằng số  
nguyên n, theo dạng như sau với a, b, c là các số nguyên tố: n = 1 × a × b × … × c  
Ví dụ: Nếu n 140 thì in 1 × 2 × 2 × 5 × 7  
Bài 3 (1,5 điểm)  
Số nguyên đối xứng (palindrome) là một số khi ta đọc xuôi và đọc ngược đều giống nhau.  
Ví dụ: các số đối xứng là 7, 55, 252, 12321, 2222; các số không đối xứng là 12, 1232, 323232.  
Viết chương trình nhập vào số nguyên dương n, in ra "So doi xung" nếu n là số đối xứng, ngược  
lại thì in "So khong doi xung".  
Lưu ý: Sinh Viên viết chương t ình hoàn thiện.  
=====================HẾT=======================  
Cán bộ coi thi kh ng giải thích g  thêm  
Page 4 of 4  
pdf 4 trang Thùy Anh 28/04/2022 7320
Bạn đang xem tài liệu "Đề thi Cuối kì môn Kỹ thuật lập trình - Trường Đại học Bách khoa Hồ Chí Minh", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfde_thi_cuoi_ki_mon_ky_thuat_lap_trinh_truong_dai_hoc_bach_kh.pdf