This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA
8) { i = i – 1; j = j + i; } cout<<<endl; Cho biết kết quả (i = ?) sau khi thi hành đoạn mã trên? a) 7 b) 8 c) 5 d) 6 e) 9 1 4 4Cho ) đoạn chương trình sau: int Q = 4, H = 3; if (H == 0) Q = 1; else if (H > 0 && H != 3) Q = 2; else if (H < 0 || H != 3) Q = 3; Kết quả cuối cùng của biến Q trong đoạn chương
C / C++
trình trên là: a) 1 b) 2 c) 3 d) 0 e) 4 1 4 5Cho ) biết giá trị của S sau khi thực thi đoạn
code sau: int S = 1; while (S < 8) { if (S <= 2) S *= 4; else if (S > 6) S -= 2; else S = 13 – S; } a) 15 b) 14 c) 9 d) 8 e) 12 1 4 6Xét ) định nghĩa sau: /* a: mảng nguyên
gồm size phần tử, size > 0 */ int numLessThanValue(const int a[], int size, int val) { int total = 0, i; for (i = 0; i < size; i++) if (a[i] < val) total++; return total; } Giá trị lớn nhất mà hàm numLessThanValue có thể trả về là bao nhiêu? a) size * 2 b) 0 c) 1 d) size e) size – 1 1 4 7Kết ) quả của dòng lệnh sau là: cout<<3 /
a) b) c) d) e)
2.0 + 5 / 2 + 3 / 2 + 5.0 / 2; 8 5 6 7 4
1 4 8Cho ) chương trình:
#include
#includevoid Ff(int a, int b); int I, J; void main() { clrscr(); I = 1; J = 2; Ff(I, J); cout<
!=! true a) 0 b) 1 c) Không có toán tử này. 1 5 0Xét ) đoạn mã sau: viod main { int sum; value; inct; int i; for (i == 0, i <= 10, i++) { value++; sum += value; in ct ++; } cout>>sum / inct>>endl; } Cho biết kết quả sau khi thi hành đoạn mã trên? a) Đoạn mã bị lỗi. b) 4 c) 44 d) 10 1 5 1Cho ) đoạn chương trình sau: #include
C / C++
int first_num; void fun(void); void main() { int sec_num; first_num = 12; sec_num = 23; fun(); cout<<”In main first_num = “<
#includevoid main() { I. char *s1; II. char s2[100]; III. s1 = “ Ngon ngu “; IV. s2 = “ lap trinh”; } Câu lệnh nào của chương trình trên không hợp lệ? a) II b) III c) I d) IV 1 5 3Hãy ) cho biết kết quả trả về sau khi gọi
calc(10)? long calc(int n) { if (n == 0) return 0; else return n + cal(n – 1); }
a) b) c) d) e)
56 55 0 8 36
1 5 4Câu ) lệnh cấp phát vùng nhớ cho biến Ptr
như dưới đây: int *Ptr = new int[20]; Câu lệnh nào sau đây dùng để giải phóng vùng nhớ? a) free(Ptr); b) delete Ptr[]; c) delete []Ptr; d) delete Ptr; 1 5 5Xem ) cách khai báo biến như sau: char StudentName[81]; int KUID; char Grade; Kiểm tra xem nếu có sinh viên nào trong danh sách dưới đây có điểm A hoặc B: “Heavey, Brandon”; “Venkata, Suman”; “McSweeney, Darren”; “Loh, KokSoon”. a) (((StudentName == “Heavey, Brandon”) || (StudentName == “Venkata, Suman”) || (StudentName == “McSweeney, Darren”) || (StudentName == “Loh, KokSoon”)) && ((Grade == “A”) || (Grade == “B”))) b) ((Grade == ‘A’ or ‘B’) && (StudentName == “Heavey, Brandon” or “Venkata, Suman” or “McSweeney, Darren” or “Loh, KokSoon”))) c) (((Grade == ‘A’) || (Grade == ‘B’)) && ((StudentName == “Heavey, Bradon”) || (StudentName == “Venkata, Suman”) || (StudentName == “McSweeney, Darren”) || (StudentName == “Loh, KokSoon”))) d) Tất cả các câu khác đều sai. e) (StudentName == “any_of_the_TAs” || StudentName == “Venkata, Suman” || Grade == “A” || Grade == ‘B’) 1 5 6int ) S = 2, A = 3, K = 0, E = 0, Q = 0; Kết quả của K, E, Q trong khối lệnh sau là: if (S > 2 * A) { K = S + A;
C / C++
Q = S * A; } else E = S – A; a) Lỗi khi biên dịch. b) K = 0, E = 1, Q = 0 c) K = 5, E = 0, Q = 6 d) K = 0, E = -1, Q = 0 1 5 7Xét ) đoạn mã sau:
#includevoid main() { int J = 1, X = 5; J += ++X += 2; (J > X)?cout<<++J<<” “<<X:cout<<X<<” “<<++J; } Cho biết kết quả sau khi thi hành chương trình trên? a) 10 12 b) 8 10 c) 10 8 d) 10 6 1 5 8Xét ) đoạn mã sau:
#includevoid duplicate(int &L, int &A, int &K) { L *= 2; A *= 2; K *= 2; } int main() { int x = 1, y = 3, z = 7; duplicate(x, y, z); cout<<x<<” “<
float Total2 = 0.0; int Total3 = 0; Total1 = ((float)Y) + W * ((float)Z) / W; Total2 = Y / W – 2 * Z; Total3 = Z / W; cout<<”Total1 = “<
% 5) / (5 % 2)); a) 3 b) 0 c) 1.5 d) 5 e) 2 1 6 1Xét ) đoạn mã sau: #include#define n 3 void f(int *a, int *x); void main() { int x = 0; int a[n][n] = {9, 4, 0, -9, 2, 12, 3, 1, 6}; f((int *)a, &x); cout<<x; } // ============================== void f(int *a, int *x) { for (int i = 0; i < n; i++) *x += *(a + i * n + i); } Cho biết kết quả sau khi thi hành đoạn mã trên? a) 16 b) Tất cả các câu khác đều sai. c) 17 d) 19 e) 18 1 6 2Cho ) khai báo: int *E, Q[100];
Lệnh nào cho dưới đây sai cú pháp? a) E = &&Q[0]; b) E = Q; c) Tất cả các câu khác đều sai. d) Q++;
C / C++
1 6 3Cho ) chương trình: #includevoid f(int a[], int &n, int x); void output(int a[], int n); void main() { int E[] = {1, 3, 3, -9, 5, 3}, H = 6; Ff(E, H, 3); output(E, H); } // ========================== void Ff(int a[], int &n, int x) { for (int i = 0; i < n; i++) if (a[i] == x) { for (int j = i; j < n – 1; j++) a[j] = a[j + 1]; i--; n--; } } // ========================== void output(int a[], int n) { for (int i = 0; i < n; i++) cout<
Biến t_vari sẽ chiếm bao nhiêu bytes bộ nhớ? a) 48 b) 96 c) 12 d) 24 1 6 5Cho ) biết kết quả của đoạn chương trình
sau: int B, U; U = 10; for (B = 1; B < U; B++) if (U % B == 0) cout<
1 6 6Cho ) chương trình: #includevoid main() { char *s; s = “Ngon Ngu Lap Trinh C++”; s += 8; cout<<s; } a) Lap Trinh C++ b) Ngon Ngu Lap Trinh c) Ngon Ngu Lap Trinh C++ d) Ngon Ngu C++ 1 6 7Cho ) chương trình: #include int f(char *s); void main() { char s[][30] = {“Truong Cao Dang CN4”, “Cao Dang CN4”, “ CN4 “}; int a = f(s[0]); for (int i = 1; i < 3; i++) if (a < f(s[i])) a = f(s[i]); for (i = 0; i < 3; i++) if (a == f(s[i])) cout<<s[i]; } int f(char *s) { int t = 0; while (*(s++) != ‘\0’) t++; return t; } Cho biết kết quả hiển thị trên màn hình sau khi thi hành chương trình trên? a) Cao Dang CN4 b) Tất cả các câu khác đều sai. c) Truong Cao Dang CN4 d) CN4 1 6 8Cho ) biết kết quả của đoạn chương trình
sau: finished = FALSE; firstInt = 3; secondInt = 20; while (firstInt <= secondInt && !finished) if (secondInt / firstInt <= 2) finished = TRUE; else firstInt++;
C / C++
cout<
#includeint P = 5; void Magic(int Q, int &R) { int P; cout<<”Initially, Q: “<
num_list có thể chứa tối đa bao nhiêu phần tử? a) 16 b) Khai báo sai cú pháp. c) Không xác định được kích thước mảng d) 15
e) Tất cả các câu khác đều sai. 1 7 2Cho ) đoạn chương trình sau:
void main() { int i, s = 0; for (i = 1; i < 3; i++) { for (int j = 1; j <= 2; j++) s = s + i * j; } cout<<”s = “<<s<<” “<<”j = “<<j; } Chương trình trên sẽ xuất hiện là: a) s = 9 j = 3 b) s = 9 j = 2 c) Lỗi biên dịch. d) s = 3 j = 3 1 7 3Xét ) đoạn mã sau: #include <stdio.h> #includemain() { int a, b = 4; clrscr(); switch ((a = 2) ? 5 : 2) { case 5: b += 2; default: a – b--; case 2: a--; } cout<
Hãy cho biết kết quả của đoạn code sau đây? W = 0; cin rel="nofollow">>N; while (N != -1) { cin>>N; W = W + N; } cout<<W<<endl; a) 16 b) 53
C / C++
c) Không có kết quả – vòng lặp không dừng. d) 15 e) 52 1 7 5Xét ) đoạn mã sau: #include#include void main() { int i = 0, n = 33; while (i < n – 1) { i++; if (n % i == 0) cout<<” “< #define pt 6 void main() { int a[pt] = {2, -9, 3, -25, 12, 5}; int i = 0; while (i < pt) { if (a[i] < 0) cout<
Vòng lặp trên sẽ thực hiện: a) Không thực hiện lần nào. b) Thực hiện vô số lần. c) Tất cả các câu khác đều đúng. d) Thực hiện ít nhất 1 lần. 1 7 8Kết ) quả của khối lệnh sau là:
int grade1 = 75, grade2 = 85, grade3 = 95; if (grade1 <= grade2 && grade3 <= grade2) cout<<”Y”; else if (grade1 <= grade2 || grade3 <= grade2) cout<<”N”; else cout<<”Z”; a) Z b) Các câu khác đều sai. c) Y d) N 1 7 9Với ) khai báo: char vary_able;
Biến vary_able sẽ chiếm bao nhiêu bytes? a) 3 b) 2 c) 1 d) 4 1 8 0Cho ) m, n là hai số nguyên. Chọn câu sai
trong các câu lệnh dưới đây: a) 9 = m b) m = n + 9 c) m = 9 d) m = ‘A’ 1 8 1Cho ) chương trình:
int S = 2, X = 3; if ((S < X) && (S – X < 0)) { --S; ++X; cout<<”S = “<<S<<”X = “<<X<<endl; } Kết quả của chương trình là: a) S = 2 X = 3 b) S = 1 X = 4 c) Giá trị khác. d) S = 3 X = 2
1 7 7Cho ) đoạn mã:
do { Khối lệnh; } while (0);
1 8 2Xét ) đoạn mã sau:
I.
switch (x) { case 1: cout<<”x is 1”; break; case 2: cout<<”x is 2”;
C / C++
break; default: cout<<”value of x unknown”; } II.
if (x == 1) {
cout<<”x is 1”; } else if (x == 2) { cout<<”x is 2”; } else { cout<<”value of x unknown”; } Khi cho thực hiện I và II thì: a) Tất cả các câu khác đều sai. b) Có cùng 1 kết quả. c) Có 2 kết quả khác nhau. d) 2 đoạn chương trình bị lỗi. 1 8 3Xét ) đoạn mã sau: #includeint main() { int L = 12; ++L = 100; cout< #define n 3 int f(int a[][n], int k); void main() { int a[n][n] = {1, 5, 0, -9, 7, 12, 3, 15, 6}; cout<
// ============================ int f(int a[][n], int k) { int t = 0; for (int i = 0; i < n; i++) t += a[k][i]; return t; } Cho biết kết quả sau khi thi hành đoạn mã trên? a) 23 b) 24 c) 6 d) 10 1 8 5Trong ) các cách khai báo biến sau, khai
báo nào không đúng trong ngôn ngữ C/C+ +? a) My.Name b) ForU2 c) _YouThink d) MustB 1 8 6Xét ) hàm sau:
char *laugh(const char *word, int num) { int k; static char result[80] = “”; for (k = 0; k < num; k++) { strcat(result, word); strcat(result, “ “); } return result; } void test() { char str[80] = “ha”; cout<int divide(int a, int b) { return (a / b); } float divide(float a, float b)
C / C++
{ return (a / b); } int main() { int U = 5, M = 2; float Q = 5.0, Y = 2.0; cout<
không ta dùng lệnh nào trong các lệnh sau đây: a) If ((P =< A) && (A <= C)) b) If (P < A && A < C) c) If ((P <= A) && (A <= C)) d) If (P <= A <= C) 1 8 9Cho ) đoạn chương trình:
x = 5; if (x > 10) cout<<”Hello”; cout<<”There.”; cout<<”How are you?”; Cho biết kết quả sau khi thực hiện đoạn chương trình trên? a) HelloThere. b) Hello c) There d) There.How are you? 1 9 0Xét ) đoạn mã sau: #includeint f(int *); double v = 12; double *pv = &v; int main() { f((int *)pv); return 0; } int f(int *pd) { cout<<*pd<<endl;
return *pd; } Cho biết kết quả sau khi thi hành đoạn mã trên? a) 5 b) 0 c) Không có kết quả. d) 6 e) 12 1 9 1Kết ) quả của dòng lệnh sau là:
int E = 6; cout<<(E++ - 3); a) 4 b) 0 c) 1 d) 3 e) 2 1 9 2Xét ) đoạn mã sau:
#include <stdio.h> void main() { char s[] = “Gook Luck”; int i; i = 0; while (s[i] != 0) { if (isalpha(s[i])) if (s[i] < 97) s[i] += 32; else s[i] -= 32; i++; } cout<<s; getch(); } Cho biết kết quả sau khi thi hành đoạn mã trên? a) GOOK LUCK b) gook luck c) gOODlUCK d) Good Luck 1 9 3Cho ) biết kết quả của câu lệnh sau:
int extra = 2; if (extra < 0) cout<<”small”; else if (extra == 0) cout<<”medium”; else cout<<”large”; a) medium
C / C++
b) large c) Không có gì in trên màn hình. d) small 1 9 4int ) E = 2, Z = 3, D = 0, W = 0;
Kết quả của D, W trong khối lệnh sau là: if ((E < Z) || (2 * E – Z == 0)) D = E + Z; W = Z – E; else W = E – Z; a) D = 5, W = 0 b) Chương trình không thực thi. c) D = 5, W = 1 d) D = 0, W = 0 1 9 5Xét ) đoạn mã sau:
#includeint main() { int D = 5, I = 6, Z = 7; if (D > I) { if (I < Z) Z = D; } else Z = I; cout<<”Z = “<
int m[10][10]; int k; for (k = 0; k < 10; k++) m[k][9] = 0; Câu nào dưới đây giải thích tốt nhất ý nghĩa của vòng lặp trên? a) Tất cả các phần tử của ma trận m được đặt về 0. b) Một cột của ma trận m được đặt về 0. c) Một phần tử của ma trận m được đặt về 0. d) Một đường chéo của ma trận m được đặt về 0. e) Một dòng của ma trận m được đặt về
0. 1 9 7Cho ) các khai báo như dưới đây:
int *ip; int Mary = 7; int Xiaolan = 0; int Jules = 18; float *fp; float Sue = 7.6; void Junk(int *x, const int y, const int z) { *x = y + z; } Lời gọi hàm nào sau đây đúng? a) Tất cả các câu khác đều sai. b) Junk(ip, Xiaolan, Mary); hoặc Junk(&Mary, Jules, 6); c) Junk(fp, Mary, Sue); d) Junk(ip, Xiaolan, Mary); e) Junk(&1, 2, 3); f) Junk(&Mary, Jules, 6); 1 9 8Cho ) biết kết quả của đoạn chương trình
sau: int number, G; number = 10; G = 1; do { switch (number) { case 1: G++; break; case 2: G = G + 3; case 3: G--; break; case 4: G += 2; break; default: break; } number--; } while (number > 0); cout<
C / C++
int A; for (A = 0; A < 10; A++) S[A][9 – A] = 0; Câu nào dưới đây giải thích tốt nhất ý nghĩa của vòng lặp trên? a) Một đường chéo của ma trận S được đặt về 0. b) Một dòng của ma trận S được đặt về 0. c) Một cột của ma trận S được đặt về 0. d) Một phần tử của ma trận S được đặt về 0. e) Tất cả các phần tử của ma trận S được đặt về 0. 2 0 0Xét ) đoạn mã sau: int S = 5; while (S != 28) { S = S + 3; cout<<S<<endl; } Vòng lặp while trên sẽ thực hiện bao nhiêu lần khi cho thi hành đoạn mã trên? a) 6 b) 9 c) 8 d) 7 e) Vòng lặp vô tận. 2 0 1Hàm ) strcat(char *Q, char *X) dùng để?
a) Tìm vị trí của chuỗi Q trong X. b) Nối chuỗi X vào cuối chuỗi Q. c) Trả về chỉ số của ký tự NULL trong chuỗi. d) Tìm vị trí của chuỗi X trong Q. 2 0 2Xét ) đoạn mã sau:
int main() { double Q = 3.4, *T = &Q; double N = 5.6, *P = &N; double *&L = P; cout<<*T<<’ ‘<<*L<<endl; return 0; } Cho biết kết quả sau khi thi hành đoạn mã trên? a) 5.6 3.4 b) Tất cả các câu khác đều sai. c) 3.4 5.6 d) Không có kết quả do chương trình lỗi. 2 0 3Cho ) biết giá trị của các biểu thức sau: 0
== 5 >= 6 a) True.
b) False. c) Không đủ cơ sở để tính. 2 0 4Xét ) đoạn mã sau: int m[10][10]; int k; for (k = 0; k < 10; k++) m[3][k] = 0; Câu nào dưới đây giải thích tốt nhất ý nghĩa của vòng lặp trên? a) Một phần tử của ma trận m được đặt về 0. b) Dòng thứ 4 của ma trận m được đặt về 0. c) Một đường chéo của ma trận m được đặt về 0. d) Tất cả các phần tử của ma trận m được đặt về 0. e) Một cột của ma trận m được đặt về 0. 2 0 5Xem ) xét đoạn code sau:
int W = 3; float Y = 5; int Z = 10; float Total1 = (float)0; float Total2 = 0.0; int Total3 = 0; Total1 = ((float)Y) + W * ((float)Z / W; Total2 = Y / W – 2 * Z; Total3 = Z / W; cout<<”Total1 = “<
C / C++
c) kq = 0 i = 4 d) kq = -10 i = 5 2 0 7Kết ) quả của dòng lệnh sau là: int P = 20, Q = 10; cout<<”P”<<” + “<<”Q”<<” is “<
int i = 0; int j; while (i < 5) { j = 4; while (i != j) { Sum = Sum + j; j--; } i++; } Giá trị của biến Sum sau vòng lặp? a) 30 b) 32 c) 33 d) 31 e) 34 2 0 9Cho ) biết kết quả của các câu lệnh:
cout<<double(11 / 4) + int(3.5 – 1); a) 4.75 b) 5 c) 5.25 d) 4 2 1 0Cho ) các khai báo như dưới đây: int *ip; int Mary = 7; int Xiaolan = 0; int Jules = 18; float *fp; float Sue = 7.6; Khởi động các biến (Mary, Xiaolan, Jules) là (7, 0, 18). Hãy cho biết giá trị của các biến này sau khi thực thi đoạn code sau? ip = new int; *ip = Mary; Xiaolan = *ip + 2; (*ip)++; Jules = *ip – 6; a) Tất cả các câu khác đều sai.
b) c) d) e)
(8, 9, 2) (7, 9, 12) (7, 9, 2) (8, 9, 12)
2 1 1Hãy ) cho biết giá trị của biểu thức: (11 > 6)
* 100 + (‘A’ < ‘Z’) * ‘B’ a) Biểu thức sai. b) ‘B’ c) 17 d) 100 e) 166 2 1 2Hãy ) cho biết giá trị của x sau khi thi hành
chương trình sau: void main() { float a[5] = {5, 4, 3, 2, 1}; float x; int i; for (i = 0; i < 5; i++) a[i] -= a[0]; x = a[1] + a[4]; } a) 100 b) -5 c) 25 d) 125 2 1 3Cho ) chương trình: #includeint f(int a[], int n); void main() { int a[] = {-9, -1, 0, 3, 4, 10, 91}; cout< a[i + 1]) { flag = 0; break; } return flag; } Câu nào dưới đây giải thích tốt cho ý nghĩa của chương trình trên? a) Chương trình này kiểm tra một mảng có giá trị các phần tử tăng dần không.
C / C++
b) Kết quả in lên màn hình số 0. c) Tất cả các câu khác đều sai. d) Chương trình không cho kết quả gì. 2 1 4Hãy ) cho biết kết quả sau khi thực thi đoạn
code sau đây: int gamma[3] = {5, 10, 15}; int i; for (i = 0; i <= 3; i++) cout<
&& 24) || (21 && 12)) a) 1 b) Biểu thức không hợp lệ. c) 2112 d) 0 e) 4224 2 1 6Cho ) chương trình: #includefloat f(int a[], int n); void main() { int a[] = {5, 4, 6, 7}, n = 4; cout<
#includevoid input(int *pi); void f(int *pi, int &m);
void main() { int a[10], x; input(a); f(a, x); cout<<x; } // ========================= void input(int *pi) { *pi = 1; *(pi + 1) = -100; *(pi + 2) = 5; *(pi + 3) = 0; } // ========================= void f(int *pi, int &m) { m = *pi; for (int i = 1; i < 4; i++) if (m < *(pi + i)) m = *(pi + i); } Cho biết kết quả sau khi thi hành chương trình trên? a) -100 b) 1 c) 5 d) 0 2 1 8Cho ) đoạn khai báo sau: struct RecType1 { int length; float width; }; RecType1 myRec; RecType2 yourRec; Phát biểu nào sau đây là đúng nhất? a) myRec.length = yourRec.length; b) myRec = yourRec; c) myRec.length = yourRec; d) myRec.length = yourRec.length; hoặc myRec = yourRec; e) Tất cả các câu khác đều sai. 2 1 9Cho ) chương trình: #includevoid output(int a[], int n); void f1(int a[], int n); void main() { int a[] = {-8, 0, 20, 15, 3, 4, 2, 5};
C / C++
f1(a, 8); output(a, 8); } void output(int a[], int n) { for (int i = 0; i < n; i++) cout< a[j] && a[i] % 2 == 0 && a[j] % 2 ==0) { int t; t = a[i]; a[i] = a[j]; a[j] = t; } } a) Không có câu nào đúng. b) -8, 0, 20, 15, 3, 4, 2, 5 c) -8, 0, 2, 15, 3, 4, 20, 5 d) -8, 0, 2, 3, 4, 5, 15, 20 2 2 0Hãy ) cho biết output của mystery(‘A’)?
void mystery(char k) { if (k != ‘Z’) { putchar(k); mystery(++k); } } a) BCDEFGHIJKLMNOPQRSTUVWX YZ b) XWVUTSRQPONMLKJIHGFEDCB A c) ABCDEFGHIJKLMNOPQRSTUVW XY d) ABCDEFGHIJKLMNOPQRSTUVW XYZ e) ZYXWVUTSRQPONMLKJIHGFED CBA 2 2 1Xét ) đoạn mã sau: #include <stdio.h> void main() { char chuoi[] = “i lay my love on you”; int i = 0, j; j = strlen(chuoi) – 1;
while (chuoi[i++] == chuoi[j--]) if (--i >= ++j) cout<<”DX”; else cout<<”KDX”; getch(); } Cho biết kết quả sau khi thi hành đoạn mã trên? a) DX b) KDX c) Không có gì cả vì lỗi thi hành. d) Tất cả các câu khác đều sai. 2 2 2Cho ) biết giá trị của mảng sau khi thực thi
đoạn code sau: int entry[6] = {2, 5, 3, 1, 1, 3}; for (int i = 0; i < 6; i++) entry[entry[i]] = entry[i]; a) {2, 1, 2, 1, 1, 5} b) {1, 1, 2, 1, 5, 3} c) {2, 1, 2, 1, 5, 3} d) {2, 1, 2, 3, 1, 5} 2 2 3Hãy ) cho biết kết quả sau khi thi hành
chương trình sau? void print(int a[], int i) { if (i > 1) print(a, i – 1); cout<
int Y(int *E) { *E += 5; return 4; } void main() { int U = 3; U = U + Y(&U); cout<
C / C++
a) b) c) d)
7 5 4 12
2 2 5Cho ) đoạn chương trình sau: void main() { int i, l; char *str = “que huong”; l = strlen(str); for (i = 0; i < l; i++) if ((isspace(str[i]) && !isspace(str[i + 1])) str[i + 1] = toupper(str[i + 1]); cout<<str; } Kết quả của biến str trong hàm main là: a) qUE hUONG b) Que Huong c) que Huong d) que huong 2 2 6Kiểu ) dữ liệu nào sau đây không dùng
được trong mảng? a) int b) string c) char d) float e) Tất cả các câu khác đều dùng được. 2 2 7Cho ) chương trình:
#include#include int f(int a, int b, int &c); int L = 1, W = 2, P = 3; void main() { clrscr(); cout<
void main() { int Y = 1, B = 33; while (Y < B – 1) { Y++; if (B % Y == 0) cout<<” “<#define ARRAY_SIZE 5 void main(void) { int values[ARRAY_SIZE] = {80, 70, 90, 85, 80}; int i; for (i = 0; i < ARRAY_SIZE; i++) cout<
#include <stdio.h> void main() { char name[21] = “Trung Tam Tin Hoc CCS”; cout<
hành chương trình sau: void main() { int G = 7, V = 8, Y;
C / C++
Y = (G + V) / 2; if (V == Y) { G++; V += 2; } else { G--; V -= 2; } } a) b) c) d) e)
G = 8, V = 8 G = 7, V = 7 G = 8, V = 10 G = 6, V = 6 G = 8, V = 9
2 3 2Xét ) đoạn mã sau:
void main() { int number = 7317; int convert = 0; for (; number > 0; number = number / 10) convert = convert * 10 + number % 10; cout<
Cho biết kết quả từ biểu thức sau: a = (b = 2) ? 1 : 3; a) Không có câu nào đúng. b) 2 c) 1 d) 0 2 3 4Cho ) đoạn chương trình sau: #includeint findx(int *pa, int m); void main() { int a[4] = {4, -9, 10, 75}; int result = -1; result = findx(a, 4); cout<
{ int i = 0; while ((pa[i] > 0) && (i < m)) i++; return i; } Kết quả của biến result trong hàm main sẽ là: a) -9 b) 4 c) 0 d) 1 e) 3 2 3 5Cho ) khai báo sau: const int
MIN_LENGTH = 2; Biến MIN_LENGTH khai báo trên chiếm bao nhiêu bytes bộ nhớ? a) 2 b) 0 c) 4 d) 1 2 3 6Hãy ) cho biết kết quả sau khi thi hành
chương trình sau: int laSoNguyenTo(int n) { int i; for (i = 2; i < n; i++) if (n % i == 0) return 0; return 1; } void main() { int i, n = 6; for (i = 2; i < n; i++) if (laSoNguyenTo(i)) cout<<<” “<<endl; } a) 2 b) 2 3 5 c) 2 3 4 5 d) Chương trình lặp vô hạn. e) Lỗi biên dịch. 2 3 7Xét ) đoạn mã sau:
#include#include float f(float, int); void main() { float x = 2, a; int n = -2;
C / C++
a = f(x, n); cout<
sau: L=2415 6978 0328 Y=379 148 M=27 63 04 a) int L[3][4], Y[2][3], M[2][3] b) int L[4][3], Y[2][3], M[3][2] c) int L[3][4], Y[2][3], M[3][2] d) int L[3][4], Y[3][2], M[3][2]
2 3 9Cho ) đoạn chương trình sau: #includevoid mangle_numbers(int &a, int b) { int c, d, e; a = 3; b = a + 2; c = b++; d = ++b; e = a + 5; e *= 5; } void main() { int sum, x = 5, y = 7; mangle_numbers(x, y); sum = x + y; } Kết quả của biến sum sẽ là: a) 12 b) 10 c) 8 d) 9 e) 7 2 4 0Trong ) các vòng lặp for sau, vòng lặp nào
xuất ra giá trị từ 0 đến 15 ra màn hình? a) for (int L = 0, L < 15, L++) cout<
với mệnh đề ((‘A’ < ch) && (ch > ‘Z’)) trong C/C++? a) Tất cả các câu khác đều sai. b) Đúng. c) Sai. 2 4 2Cho ) đoạn chương trình:
for (K = 1, X = 3; K < 5; K++) cout<
C / C++
phần tử, size > 1 Output: trả về 1 nếu không có giá trị trùng lặp trong a, ngược lại thì trả về 0 */ input unique(int a[], int size) { int j, k;; } Đoạn mã nào dưới đây có thể được sử dụng để thay thế sao cho nó hoạt động theo ý muốn? I. for (j = 0; j < n – 1; j++) for (k = j + 1; k < n; k++) if (a[j] == a[k]) return 0; return 1; II. for (j = 1; j < n; j++) for (k = 0; k < j; k++) if (a[k] == a[j]) return 0; return 1; III. for (j = 0; j < n; j++) for (k = 1; k < n; k++) if (a[k] == a[j]) return 0; return 1; a) I, II và III đều đúng. b) Chỉ có I đúng. c) Chỉ có I và III đúng. d) Chỉ có II đúng. e) Chỉ có I và II đúng. 2 4 4Cho ) đoạn chương trình: int a = 100, b = 30, cint; cint = a / b; cout<<(cint + 10) / 2<<endl; Cho biết kết quả sau khi thực hiện đoạn chương trình trên? a) Lỗi chương trình. b) 6.5 c) 0 d) 6 2 4 5Xét ) hai hàm sau: int f1(int len) { int tot = 0, k = 0; while (k < len) { tot += k; k++; } return tot;
} int f2(int len) { int tot = 0, k = 0; for (k = 0; k < len; k++) tot += k; return tot; } Những giá trị nào của len để f1(len) và f2(len) trả về cùng một kết quả? I. Bất kỳ giá trị nào bé hơn 0 II. 0 III. Bất kỳ giá trị nào lớn hơn 0 a) Chỉ có III đúng. b) Chỉ có I đúng. c) Chỉ có I và II đúng. d) Chỉ có II đúng. e) I, II và III. 2 4 6Cho ) đoạn chương trình sau: #includevoid DoStuff(int a, int b); int main() { int x = 6; DosStuff(x, x); cout<<x<<endl; return 0; } void DoStuff(int a, int b) { int myVar = 3; a = a + myVar; b = b – myVar; } Kết quả của chương trình là: a) 9 b) 6 c) 12 d) 3 2 4 7Cho ) đoạn chương trình sau: #include void testauto(); void main() { int count; for (count = 1; count <= 2; count++) testauto(); } void testauto() { int num = 0;
C / C++
cout<<”\n The value of the automatic variable num is “<int main() { int E = 1, S = 3; swap(E, S); cout<<E<<” “<<S; return 0; } void swap(int a, int b) { int tamp tamp = a a = b; b = tamp; } Cho biết kết quả sau khi thi hành chương trình trên? a) 3 1 b) 1 1 c) 1 3 d) 3 3 e) Tất cả các câu khác đều sai. f) Lỗi chương trình. 2 4 9Hãy ) cho biết giá trị của x sau khi thi hành
chương trình sau: void main() { float a[5] = {5, 4, 3, 2, 1}; float x; int i; for (i = 0; i < 5; i++) a[i] /= a[0]; x = a[1] + a[4]; } a) 0.99999
b) c) d) e)
5.0 1.0 1.4 3.0
2 5 0Cho ) b = 5 và c = 8. Hãy cho biết giá trị
của a sau khi thi hành dòng lệnh sau: a = + +b + c++; a) 14 b) 12 c) 11 d) 15 e) 13 2 5 1Xét ) đoạn mã sau:
int Test_1(int a[], int n) { int m; { if (n == 1) m = a[0]; else m = Test_1(a, n – 1); if (m > a[n – 1]) m = a[n – 1]; } return m; } Với khai báo: int a[4] = {1, 6, 4, 9}; Cho biết m bằng bao nhiêu khi thực hiện lời gọi hàm: m = Test_1(a, 4)? a) 0 b) 1 c) Tất cả các câu khác đều sai. d) 3 2 5 2Cho ) chương trình:
#includevoid function(char *s1, char *s2); void main() { char s2[100]; char s1[] = “Giao Trinh Ngon Ngu C++”; function(s2, s1); cout<<s2; } void function(char *s1, char *s2) { while (*(s1++) = *(s2++)); } a) Giao Trinh Ngon Ngu b) Giao Trinh Ngon Ngu C++ c) Giao Trinh C++
C / C++
d) Ngon Ngu C++
b) 2 3 4 5 c) 1 3 5 7 d) 1 2 3 4
2 5 3Câu ) lệnh nào dưới đây khai báo mảng 1
chiều tối đa 10 phần tử số nguyên? a) int a[10] b) int a[9] c) int a[0…9] d) int a[1…10] 2 5 4Xem ) đoạn code dưới đây:
#include#include #include <string.h> int main() { char Password[8]; cout<<”Enter your password: (up to 8 characters):”; cin>>Password; if (strlen(Password) <= 8) cout<<”Password is valid\n”; else cout<<”Password is too long!\n”; // CODE FRAGMENT } Dùng lệnh nào dưới đây thích hợp đặt tại vị trí CODE FRAGMENT để chuyển đổi password thành chữ thường? a) for (int i = 0; i < strlen(Password); i+ +) Password[i] = tolower(Password[i]); b) for (int i = 0; i <= strlen(Password); i+ +) Pasword[i] = tolower(Password[i]); c) Tất cả các câu khác đều sai. d) tolower(Password); e) for (int i = 0; i < 6; i++) tolower(Password[i]); 2 5 5Cho ) khai báo hàm sau: void Fix(int &a,
float b); Lời gọi hàm nào sau đây đúng? (someInt là dữ liệu kiểu int và someFloat là dữ liệu kiểu float). a) Fix(someInt, someFloat + 11); b) Fix(14, 3.85); và Fix(someInt, someFloat + 11); đều đúng. c) Tất cả các câu khác đều sai. d) Fix(14, 3.85); e) someFloat = 0.3 * Fix(someInt, 3.85); 2 5 6Cho ) biết kết quả của vòng lặp sau:
for (int C = 1; C < 5; C++) cout<<(2 * C)<<” “; a) 2 4 6 8
2 5 7Xét ) đoạn mã sau:
#includeint main() { static int a[] = {1, 2, 3, 4, 5}; int i = 3, tmp; int swap = 1; if (swap) tmp = a[i], a[i] = a[i + 1], a[i + 1] = tmp; for (i = 0; i < 5; i++) cout<
a) b) c) d)
nguyên. Muốn lấy giá trị phần tử a[i] có thể tham chiếu bằng con trỏ như sau: Các câu khác đều sai. a+i &(a + i) *(a + i)
2 5 9Hãy ) cho biết giá trị của S và G sau khi thi
hành đoạn chương trình sau: int S = 9, G = 13, *D; D = &S; S += 4; (*D)++; if (S <= G) D = &S; else D = &G; *D += 2; a) S = 12, G = 13 b) S = 15, G = 13 c) S = 14, G = 15 d) S = 11, G = 11 2 6 0Cho ) biết kết quả của đoạn chương trình
sau: int n, m, k, result; n = 10; m = -5;
C / C++
k = 2; result = 0; if (n) if (m) if (result) result = n * m * k; else result = m * n; else result = n; cout<
của a sau khi thi hành dòng lệnh sau: a = b++ + c++; a) 15 b) 14 c) 13 d) 12 e) 11 2 6 3Hãy ) cho biết giá trị của mảng a sau khi thi
hành đoạn chương trình sau: int a[6] = {1, 2, 3, 1, 2, 3}; int i, j; for (i = 0; i < 5; i++) for (j = i + 1; j < 6; j++) if (a[j] == a[i])
a[j]++; a) 1, 2, 3, 4, 5, 6 b) 1, 2, 3, 4, 4, 5 c) Các câu khác đều sai. d) 1, 2, 3, 4, 5, 5 2 6 4Xét ) đoạn mã sau:
int j = 7; double varq = 1.0, newq = 0.0; while (j < 75) { newq = j + varq; j = j + 6; } cout<<j<<endl; Cho biết kết quả (j = ?) sau khi thi hành đoạn mã trên? a) 14 b) 7 c) 85 d) 75 e) 73 f) 79 2 6 5Cho ) chương trình: #includevoid main() { char *workdays[] = {“Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday”,””}; char **work_day; work_day = workdays; cout<<*(++work_day)<<” “; } a) Thursday b) Monday c) Tuesday d) Wednesday 2 6 6Xét ) đoạn mã sau: void f(int a[], int &n, int k); void output(int a[], int n); void main() { int a[] = {5, -8, 0, 6, 9}; int n = 5; f(a, n, 2); output(a, n); } // =========================== void f(int a[], int &n, int k) { for (int i = k; i < n; i++)
C / C++
a[i] = a[i + 1]; n--; } // =========================== void output(int a[], int n) { for (int i = 0; i < n; i++) cout<
int f(int n) { if (n == 1) return 1; else return (f(n – 1) + n); } Cho biết kết quả khi gọi hàm f(100)? a) 200 b) 5050 c) 100 d) 5010 2 6 8Cho ) đoạn chương trình sau:
#includevoid main() { int ray[6] = {100, 200, 300, 400, 500, 600}; int k; for (k = 4; k >= 0; k = k – 2) cout<
#include#include int Test(int, int); void main() {
int a = 16, b = 21, c; c = f(a, b); cout<
Cho biết kết quả từ biểu thức sau: a = (b = 2) ? 1 : 2; a) 0 b) 2 c) 1 d) Không có câu nào đúng. 2 7 1Cho ) đoạn chương trình: s = 90; if (s > 90) t = ‘E’; if (s >= 80) t = ‘V’; cout<
C / C++
Vòng lặp while trên sẽ thực hiện bao nhiêu lần khi cho thi hành đoạn mã trên? a) 5 b) 6 c) Vòng lặp vô tận. d) 4 2 7 3Xét ) đoạn mã sau: void Q(unsigned C) { cout<#include int f(int a, int b); int x, y; void main() { clrscr(); x = 1; y = 2; f(x, y); cout<<x<<” “< = 0) && (x <= 11)).
Tập tất cả các giá trị thỏa mãn mệnh đề
trên là: a) Tất cả các câu khác đều sai. b) 1, 2, 3, 4, 5, 6, 7, 8, 9 c) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 d) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 e) 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 2 7 6Biểu ) thức Boolean: 2 < x < 10 được biểu
diễn trong ngôn ngữ C++ là: a) 2 < x & 2 < 10 b) 2 < x && x < 10 c) 2 < x < 10 d) 2 < x || 2 < 10 2 7 7Xét ) đoạn mã sau:
#include#include #include <math.h> double f(double &); main() { clrscr(); double a = 27, kq; kq = f(a); cout<
void main() { int V, E, H = 0; for (V = 1; V < 3; V++) {
C / C++
for (E = 1; E <= 2; E++) H = H +V * E; } cout<<”V = “<int f(int *pi, int n); int f1(int x); void main() { int a[] = {1, 5, 9, 23, 7, 12, 6}; cout< 1) i++; if (i == x) return 1; else return 0; } Cho biết kết quả sau khi thi hành đoạn mã trên? a) 63 b) 35 c) Tất cả các câu khác đều sai. d) Lỗi chương trình. 2 8 0Cho ) b = 5 và c = 8. Hãy cho biết giá trị
của a sau khi thi hành dòng lệnh sau: a = b++ + ++c; a) 11 b) 10 c) 13
d) 15 e) 14 f) 12 2 8 1Xét ) hàm sau:
void laugh(const char *word, int num) { int k; static char result[80] = “”; for (k = 0; k < num; k++) { strcat(result, word); strcat(result, “ “); } cout<#include #include <math.h> #include const int n = 5; int f(int a[], int); void main() { int a[] = {1, 4, 9, 13, 46}, m; m = f(a, n); cout<<endl<<max; getch(); } // =========================== int f(int a[], int n)
C / C++
{ int m; if (n == 1) m = a[0]; else { m = f(a, n – 1); if (m > a[n – 1]) m = a[n – 1]; } return m; } Cho biết kết quả sau khi thi hành chương trình trên? a) 9 b) 7 c) 1 d) 46 e) 13 2 8 4Cho ) đoạn chương trình:
for (i = 1; i < 10; i++) { i++; cout<<<” “; } Cho biết kết quả sau khi thực hiện đoạn chương trình trên? a) 2 4 6 8 b) 3 5 7 9 c) 2 3 5 7 9 d) 2 4 6 8 10 2 8 5Cho ) chương trình: #includeint f1(int x); int output(int a[], int n); void main() { int a[] = {1, 5, -9, 0, 2, 4, 3}; cout<