Tạo Trắc Nghiệm

100+ câu trắc nghiệm Lập trình nâng cao có đáp án phần 2

25 câu · Đề ôn tập tổng hợp

Xem trước: đọc nhanh mọi câu dạng chữ, chưa tính giờ, chưa hiện đáp án.
Luyện tập: chọn đáp án là biết đúng sai ngay, kèm lời giải.
Thi thử: nộp bài mới chấm điểm và hiện lời giải.

Câu 1

Anh (Chị) hãy cho biết kết quả đoạn lệnh khi thu =2?

switch (thu) {

case 2:

cout << “Van, Toan”;

break;

case 3:

cout<< “Hoa, Ly”;

break;

default:

cout <<“Ngay nghi”;

break;

}

Đáp án và lời giải

Đáp án: A

Câu 2

Anh (Chị) hãy cho biết kết quả đoạn lệnh sau khi color = DEN?

enum mausac { DEN = 3, LAM, LUC, TRANG };

mausac color;

char * t;

switch (color) {

case 0:

t = “Mau trang”; break;

case 1:

t =“Mau den”; break;

case 2:

t = “Mau lam”; break;

case 3:

t = “Mau luc”;

break;

default:

t = “Khong co trong danh sach mau”;

break;

}

cout << t;

Đáp án và lời giải

Đáp án: D

Câu 3

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int s = 0; for (int i = 0; i

< 10; i++) s+=i; cout

<< s << endl;

>

Đáp án và lời giải

Đáp án: A

Câu 4

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int i = 0; int s = 0; for

(int i = 0; i < 10; i++)

s+=i; cout << i << end;

>

Đáp án và lời giải

Đáp án: B

Câu 5

Anh (Chị) hãy cho biết khối lệnh sai ở dòng nào?

1. int i=0;

2. do {

3. i += 1;

4. } while (i == 0); 5 . cout << i;

Đáp án và lời giải

Đáp án: A

Câu 6

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

double i = 0, n = 10, s = 0;

while (i < n)

{ double s = s + n;

n--;

} cout <<s;

Đáp án và lời giải

Đáp án: A

Câu 7

Anh (Chị) hãy cho biết chương trình sau thực hiện công việc gì?

#define length(a) (sizeof(a) / sizeof(*a))

int main() {

int mang[] = {12, 37, 48, 51, 2, 9};

int tk = 51,

i;

bool check = false;

for (i = 0; i < length(mang); i++)

{ if (mang[i] == tk)

{ check = true;

break;

}

}

if (check) cout << “Found “ << tk << “ at index “ << i << endl;

else cout <<“Not found”; return 0;

}

>

Đáp án và lời giải

Đáp án: A

Câu 8

Anh (Chị) hãy cho biết chương trình sai ở dòng nào?

1. define length(a) (sizeof(a) / sizeof(*a ))

2. int main() {

3. int mang[] = {12, 37, 48, 51, 2, 9};

4. int tk = 51, i;

5. bool check = false;

6. for (i = 0; i < length(mang); i++) {

7. if (mang[i] = tk) {

8. check = true;

9. break;

10. }

11. }

12. cout << i ;

14. return 0;

15.}

>

Đáp án và lời giải

Đáp án: B

Câu 9

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

char chuoi[] = “peter pan put a pepper into pen”;

int max = strlen(chuoi);

int number = 0;

for (int i = 0; i < max; i++)

{ if (chuoi[i] != 'p')

continue; number++; }

cout << number <<

endl;

>

Đáp án và lời giải

Đáp án: A

Câu 10

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

void indl (int *a) { cout << *a;

}

int main() {

int a = 10;

indl (&a);

return 0;

}

Đáp án và lời giải

Đáp án: A

Câu 11

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau nếu nhập chuỗi Rome từ bàn phím?

char str[40];

cin.getline (str,40);

if ( strcmp(str, “Juliet”) == 0) cout << “Same here”;

else cout <<str;

Đáp án và lời giải

Đáp án: B

Câu 12

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int i = 10; int

n = ++i%5

Đáp án và lời giải

Đáp án: D

Câu 13

Đoạn Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int s = 0; string str; for

(int i = 0; i < 5; i++) {

int k = 0; k += i; s = k;

}

str = ((k % 2) == 0) ? “true” : “false”;

cout << str << endl;

>

Đáp án và lời giải

Đáp án: C

Câu 14

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

const int row = 3;

const int col = 4;

int seasonTemp[row][col] = {

{ 26, 34, 22, 17 },

{ 24, 32, 19, 13 },

{ 28, 38, 25, 20 }

} ;

int functionM (temp[row][col]) {

int m = 0;

for (int i = 0; i < row; i++)

for (int j = 0; j < col; j++)

if (temp[i][j] > m)

m = temp[i][j];

return m;

}

int main()

{ cout << functionM (seasonTemp) << endl; return 0;

}

>>

Đáp án và lời giải

Đáp án: A

Câu 15

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

const int row = 3;

const int col = 4;

int seasonTemp[row][col] = {

{ 26, 34, 22, 17 },

{ 24, 32, 19, 13 },

{ 28, 38, 25, 20 }

} ;

int functionM (temp[row][col]) {

int m = 0;

for (int i = 0; i < row; i++)

for (int j = 0; j < col; j++)

if (temp[i][j] < m)

m = temp[i][j];

return m;

}

int main() { cout << functionM (seasonTemp) << endl; return 0;

}

>>>

Đáp án và lời giải

Đáp án: C

Câu 16

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

string expletive = “Expletive “;

string PG13 = “deleted”;

string message = expletive + PG13;

Đáp án và lời giải

Đáp án: A

Câu 17

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int BinSearch (char*item,char *table[],int n, int (*Sosanh)(const char*,const char*))

{ int bot = 0, top = n - 1, mid, cmp;

while (bot < top) { mid = (bot + top) / 2;

if ((cmp = Sosanh(item,table[mid])) == 0) return mid;

else if (cmp < 0) top = mid - 1;

else bot = mid + 1;

}

return -1;

}

int main() { char *cities[] = { “Boston”, “London”, “Sydney”, “Tokyo” };

cout << BinSearch (“Sydney”,cities,4,strcmp) << endl;

}

>>

Đáp án và lời giải

Đáp án: B

Câu 18

Anh (Chị) hãy cho biết đoạn chương trình sau thực hiện công việc gì?

int BinSearch (char *item,char *table[],int n, int (*Sosanh)(const char*,const char*)) {

int bot = 0, top = n - 1, mid, cmp;

while (bot < top) { mid = (bot + top) / 2;

if ((cmp = Sosanh(item,table[mid])) == 0) return mid;

else if (cmp < 0) top = mid - 1; else bot = mid + 1;

}

return -1;

}

int main() { char *cities[] = { “Boston”, “London”, “Sydney”, “Tokyo” };

cout << BinSearch (“Sydney”,cities,4,strcmp) << endl;

}

>>

Đáp án và lời giải

Đáp án: C

Câu 19

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

void functionS w (int *x, int *y) { int tmp = *x; *x =*y; *y = tmp;}

int main() {

int I = 10, j = 20;

functionSw (i,j);

cout << i << “, “ << j << endl;

}

Đáp án và lời giải

Đáp án: D

Câu 20

Anh (Chị) hãy cho biết đoạn lệnh sau thực hiện công việc gì?

char* ReChar (char* str) { int len = strlen (str);

char* ketqua = new char[len+1];

for (int i = 0; i< len; i++)

ketqua[i] = str[len-i-1];

ketqua[len] ='\0'; return ketqua;

}

int main() {

char *p = 178892”; cout << ReChar (p) << endl; return 0;

}

>

Đáp án và lời giải

Đáp án: B

Câu 21

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

char* ReChar (char* str) { int len = strlen (str);

char* ketqua = new char[len+1];

for (int i = 0; i< len; i++) ketqua[i] = str[len-i-1];

ketqua[len] ='\0'; return ketqua;

}

int main() { char *p =178892”; cout << ReChar(p) << endl; return 0;

}

>

Đáp án và lời giải

Đáp án: B

Câu 22

Anh (Chị) hãy cho biết, chương trình sau sai ở dòng nào?

1. char ReChar (char str) {

2. int len = strlen (str);

3. char ketqua = new char[len+1];

4. for (int i = 0; i < len; i++) ketqua[i] = str[len-i-1];

5. ketqua[len] = '\0';

6. return ketqua;

7. }

8. int main() {

9. char p[] = 178892”;

10. cout << ReChar (p) << endl;

11. return 0;

12.}

>

Đáp án và lời giải

Đáp án: A

Câu 23

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int val1, val2; int * pointer;

pointer = &val1; *pointer = 10; pointer = &val2;

*pointer = 20; cout << val1

* val2 << endl;

Đáp án và lời giải

Đáp án: B

Câu 24

Anh (Chị) hãy cho biết, tại dòng thứ 6, val2 có giá trị là gì?

1. int val1 = 5, val2 = 15;

2. int *p1, *p2;

3. p1 = &val1;

4. p2 = &val2;

5. *p1 = 10;

6. *p2 = *p1;

7. p1 = p2; 8 . *p2 = 20;

Đáp án và lời giải

Đáp án: A

Câu 25

Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?

int number[5] = { 10, 20, 30, 40, 50 };

int *p;

p = number;

p++;

*p += 60;

cout << number[1] << endl;

Đáp án và lời giải

Đáp án: D