400 Câu hỏi trắc nghiệm lập trình C/C++ có đáp án và lời giải chi tiết
Tổng hợp câu hỏi trắc nghiệm lập trình C/C++ có đáp án và lời giải đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức. Để ôn tập hiệu quả các bạn có thể ôn theo từng phần trong bộ câu hỏi này bằng cách trả lời các câu hỏi và xem lại đáp án và lời giải chi tiết. Sau đó các bạn hãy chọn tạo ra đề ngẫu nhiên để kiểm tra lại kiến thức đã ôn.
Chọn hình thức trắc nghiệm (50 câu/60 phút)
Chọn phần
-
Câu 1:
Which of the following is the correct usage of condition operators used in C?
A. a>b? c = 20 : c = 21;
B. a>b? c = 20;
C. max = a>b? a>c?a:c:b>c?b:c;
D. return (a>b)?(a:b);
-
Câu 2:
The expression of the right hand side of || operators does not get evaluated if the left hand side determines the outcome.
A. True
B. False
-
Câu 3:
Which of the following correctly shows the hierarchy of arithmetic operator in C?
A. / + * –
B. * – / +
C. + – / *
D. / * + –
-
Câu 4:
hich of the following is the correct order of evaluation for the below expression? z = x + y * z / 4 % 2 – 1;
A. * / % + – =
B. = * / % + –
C. / * % – + =
D. * % / – + =
-
Câu 5:
What will be the output of the program?
#include<stdio.h> #include<conio.h> int main() { int i = 4, j = -1, k = 0, w, x, y, z; w = i||j||k; x = i&&j&&k; y = i||j&&k; z = i&&j||k; printf("%d %d %d %d", w, x, y, z); getch(); }
A. 1 1 1 1
B. 1 0 0 1
C. 1 0 1 1
D. Other
-
Câu 6:
What will be the output of the program?
#include <stdio.h> #include <conio.h> void main() { static int a[20]; int i = 0; a[i] = i; printf("%d %d %d", a[0], a[1], i); getch(); }
A. 1 0 1
B. 1 1 1
C. 0 0 0
D. 0 1 0
-
Câu 7:
What will be the output of the program?
#include <stdio.h> #include <conio.h> void main() { int x = 12, y = 7, z = 2; z = x != 4 || y == 2; printf("z = %d", z); getch(); }
A. z = 0
B. z = 1
C. z = 4
D. z = 3
-
Câu 8:
Every operators has an Associativity
A. Yes
B. No
-
Câu 9:
What will be the output of the program?
#include <stdio.h> #include <conio.h> void main() { int i = 3, j = 2, k = -1, m; m = ++i||++j&&++k; printf("%d %d %d %d", i, j, k, m); getch(); }
A. 4 2 -1 1
B. 4 3 0 1
C. 3 2 -1 1
-
Câu 10:
What is output of the program?
#include <stdio.h> #include <conio.h> void main() { int i = 3, j = 2, k = -1, m; m = ++i&&++j&&++k; printf("%d %d %d %d", i, j, k, m); getch(); }
A. 4 3 0 0
B. 3 3 0 1
C. 4 2 0 0
D. None of these
-
Câu 11:
Are the following two statement same?
a <= 20 ? (b = 30) : (c = 30); (a <= 20) ? b : (c = 30);
A. Yes
B. No
-
Câu 12:
What will be the output of the program?
#include <stdio.h> #include <conio.h> void main() { int i = 2; int j = i + (1, 2, 3, 4); printf("j = %d", j); getch(); }
A. 6
B. 3
C. 12
D. Complier error
-
Câu 13:
What will be output of the program?
#include <stdio.h> #include <conio.h> void main() { int n = 2; printf("%d %d %d", n <= 3, n = 4, n >= 2); getch(); }
A. 0 4 1
B. 1 4 1
C. 4 4 1
D. None of these
-
Câu 14:
What will be output of the program?
#include <stdio.h> #include <conio.h> void main() { int n = 2; printf("%d %d", ++n, ++n); getch(); }
A. 4 4
B. 3 4
C. 2 2
D. 2 3
-
Câu 15:
What will be output of the program?
#include <stdio.h> #include <conio.h> void main() { int a = 10, b = 19; int c; c = (a == 10 || b < 20); printf("c = %d", c); getch(); }
A. c = 1
B. c = 29
C. c = 10
D. c = 19
-
Câu 16:
What will be output of the program?
#include <stdio.h> #include <conio.h> void main() { int x = 4, y, z; y = --x; z = x--; printf("%d %d %d", x, y, z); getch(); }
A. 4 3 2
B. 4 3 3
C. 2 3 2
D. 2 3 3
-
Câu 17:
What will be output of the program?
#include <stdio.h> #include <conio.h> void main() { int k, num = 20; k = (num>5 ? (num <= 10 ? 10 : 30): 40); printf("%d", k); getch(); }
A. 20
B. 30
C. 40
D. 10
-
Câu 18:
What is output of the program?
#include <stdio.h> #include <conio.h> void main() { int i = 3; i = i++; printf("%d", i); getch(); }
A. 4
B. 3
C. Complier error
D. None of above
-
Câu 19:
What will be output of the program?
#include <stdio.h> #include <conio.h> void main() { int arr[3] = {3}; int i; for(i = 0; i <= 2; i++) printf("%d, ", arr[i]); getch(); }
A. 3, 0, 0,
B. 3, 3, 3,
C. 3, garbage, garbage
D. Another
-
Câu 20:
What value is returned by function func()?
float func() { int r = 0, d = 0, i = 0; for (i; i < 2; i++) { r += 5 / d; } return r; }
A. 5
B. 0
C. Exception
D. Another
-
Câu 21:
What will be output when you will execute following c code?
void main() { char s[] = "man"; int i; for(i = 0; s[i]; i++) printf("%c%c%c%c\t", s[i], *(s+i), *(i+s), i[s]); getch(); }
A. mmmm aaaa nnnn
B. mmm aaa nnn
C. mmmm aaa nnn
D. Another
-
Câu 22:
What will be output when you will execute following c code?
void main() { int i = 0; char ch = 'A'; do { putchar(ch); } while(i++ < 5 || ++ch <= 'F'); getch(); }
A. AAAAAABCDEF
B. AAAAAABCDE
C. ABCDEF
D. Another
-
Câu 23:
What gets printed?
void main() { int array[2][2] = {0, 1, 2, 3}; int i; int sum = 0; for (i = 0; i < 4; ++i) { int x, y; x = i % 2; if (x) { y = 0; } else { y = 1; } sum += array[x][y]; } printf("%d\n", sum); getch(); }
A. 3
B. 4
C. 5
D. 6
-
Câu 24:
What is output?
#include <stdio.h> #include <conio.h> void main() { int k; for (k = -3; k < -5; k++) printf("Hello"); getch(); }
A. Hello
B. Nothing
C. Complier Error
D. Run time error
-
Câu 25:
What is output?
void main() { double k = 0; for (k = 0.0; k < 3.0; k++); printf("%lf", k); getch(); }
A. 012
B. Run time error
C. 3
D. 2
-
Câu 26:
What is output?
#include <stdio.h> int main() { int i = 0; for (; ; ; ) printf("In for loop\n"); printf("After loop\n"); }
A. Complie time error
B. Infinite Loop
C. Nothing
-
Câu 27:
What is output?
#include <conio.h> #include <stdio.h> int foo(); void main() { int i = 0; for (foo(); i == 1; i = 2) printf("In for loop\n"); printf("After loop\n"); getch(); } int foo() { return 1; }
A. In for loop
B. After loop
C. Complie error
-
Câu 28:
What is output?
#include <conio.h> #include <stdio.h> int main() { int i = 0; while (i = 0) printf("True\n"); printf("False\n"); getch(); }
A. True
B. False
C. Complie Error
D. Another
-
Câu 29:
What is output ?
#include <conio.h> #include <stdio.h> int main() { int i = 0, j = 0; while (i < 5, j < 10) { i++; j++; } printf("%d, %d\n", i, j); getch(); }
A. 5, 5
B. 10, 10
C. Syntax error
-
Câu 30:
What is output?
#include <conio.h> #include <stdio.h> int main() { int a = 0, i = 0, b = 0 ; for (i = 0; i < 5; i++) { a++; continue; b++; } printf("\n a = %d,b =%d", a, b); getch(); }
A. a = 5,b = 5
B. a = 4,b = 4
C. a = 5,b = 0
D. Another
-
Câu 31:
What is output ?
void main() { int i = 0; for (i = 0; i < 5; i++) if (i < 4) { printf("Hello"); break; } getch(); }
A. Hello
B. Hello is printed 3 times
C. Hello is prined 4 times
D. Hello is printed 5 times
-
Câu 32:
What is output?
#include <stdio.h> #include <conio.h> void main() { int i = 0; for(; i <= 2; ) printf(" %d", ++i); getch(); }
A. 1 2 3
B. 0 1 2 3
C. 0 1 2
-
Câu 33:
What is output ?
#include <stdio.h> #include <conio.h> void main() { int x; for(x = 1; x <= 5; x++); printf("%d", x); getch(); }
A. 12345
B. 123456
C. 6
D. 1234
-
Câu 34:
What is output?
#include <stdio.h> #include <conio.h> int main() { int i = 3; while (i--) { int i = 100; i--; printf("%d ", i); } getch(); }
A. 99 99 99
B. Complier Error
C. 1
-
Câu 35:
How many times will “vncoding” is printed on screen?
#include <stdio.h> #include <conio.h> int main() { int i = 1024; for (; i; i >>= 1) printf("\nlaptrinhc++"); getch(); }
A. 10
B. 11
C. Infinite
-
Câu 36:
What is output?
#include <stdio.h> #include <conio.h> void main() { int i = 2, j = 2; while(i+1? --i : j++) printf("%d", i); getch(); }
A. 1
B. 2
C. Complier Error
-
Câu 37:
What is output?
#include <stdio.h> #include <conio.h> void main() { int i, j; i = j = 2; while(--i&&j++) printf("%d %d", i, j); getch(); }
A. 1 3
B. 1 2
C. Không in ra kí tự nào
-
Câu 38:
What is output?
#include <stdio.h> #include <conio.h> int main() { int x = 011, i; for(i = 0; i < x; i += 3) { printf("Start "); continue; printf("End"); } getch(); }
A. Start End Start End
B. Start Start Start
C. Start Start Start Start
-
Câu 39:
What is output of the following code?
#include <stdio.h> #include <conio.h> void main() { int s = 0; while (s++ < 10) { if (s < 4 && s < 9) continue; printf(" %d ", s); } getch(); }
A. 1 2 3 4 5 6 7 8 9
B. 3 4 5 6 7 8 9
C. 4 5 6 7 8 9
D. 4 5 6 7 8 9 10
-
Câu 40:
What is output?
#include <stdio.h> #include <conio.h> void main() { int i = 6; while(i) { if (i > 5) { i--; } i = i + 5; if (i > 34) { break; } } printf("%d", i); getch(); }
A. Infinite loop
B. 35
C. 38
D. 39
-
Câu 41:
What is output?
#include <stdio.h> #include <conio.h> int print(int i); void main() { int i = 6; while(print(i) || --i); getch(); } int print(int i) { printf("%d, ", i); return 0; }
A. 6, 5, 4, 3, 2, 1,
B. 6, 5, 4, 3, 2, 1, 0,
C. Complier Error
D. Infinite loop
-
Câu 42:
What is output?
#include <stdio.h> #include <conio.h> int func(int* i); void main() { int i = 15; while(func(&i) && i++ > 0); printf("%d", i); getch(); } int func(int* i) { *i -= 5; return(*i); }
A. 0
B. -1
C. -2
D. -3
-
Câu 43:
What is output?
#include <stdio.h> #include <conio.h> void main() { static int i; int j; for(j = 0; j <= 5; j++) switch(j) { case 1: i++; break; case 2: i+=2; case 4: i /= 1; j += 1; continue; default: --i; continue; } printf ("%d", i); getch(); }
A. 0
B. 2
C. 3
D. -4
-
Câu 44:
What is output?
#include <stdio.h> #include <conio.h> void main() { int i, j; for(i = 0, j = 0; i < 5, j < 6; i++, j++) { printf("i = %d \t j = %d\n", i, j); } getch(); }
A. print i and j from 0 till 4
B. print i and j from 0 till 5
C. print i from 0 to 4, print j from 0 to 5
D. Complier Error
-
Câu 45:
What gets printed?
void main() { int i = 3; if (!i) i++; i++; if (i == 3) i += 2; i += 2; printf("%d\n", i); getch(); }
A. 5
B. 6
C. 7
D. Another
-
Câu 46:
What gets printed?
void main() { int x; if(x = 0) printf ("Value of x is 0"); else printf ("Value of x is not 0"); getch(); }
A. Value of x is 0
B. Value of x is not 0
C. Error
-
Câu 47:
What gets printed?
void main() { int i; for(i = 0; i < 20; i++) { switch(i) { case 0:i+=5; case 1:i+=2; case 5:i+=5; default: i+=4; break; } printf("%d,", i); } getch(); }
A. 14,18,
B. 16,20,
C. 16,21,
-
Câu 48:
What gets printed ?
void main() { static int i; while(i <= 10&&i >= 0) (i > 2 ? i++ : i--); printf("%d", i); getch(); }
A. -1
B. 0
C. 1
D. Complier error
-
Câu 49:
What is output ?
void main() { int i = 10, j = 20; if(i = 20) printf(" Hello"); else printf(" Hi"); getch(); }
A. Hello
B. Hi
C. Complier error
-
Câu 50:
What is output?
void main() { int x = 0, y = 0; if(x == 0 || ++y) printf("x=%d", x); printf(" y=%d", y); getch(); }
A. x=0 y=1
B. x=0 y=0
C. Error syntax