











Preview text:
//------------------------------------------------------------------------
1. Cho biết kết quả đoạn lệnh sau: int a, b;
a = 10 ; b = 20 ; printf(“%d”, (a{ ~ 10 ~ 20 ~ Lỗi biên dịch ~ Kết quả khác }
//------------------------------------------------------------------------
2. Dòng nào sau đây là đoạn lệnh tìm m: giá trị lớn nhất của 2 số a, b { ~ m = b; if (m>a) m = a;
~ if (a>b) m = b; else m = a;
~ m = (a ~ Tất cả đều đúng }
//------------------------------------------------------------------------
3. Kết quả của đoạn lệnh sau là gì ?
int i, j ; for (i=1; i<5; i++) j=i ; printf("%d ",j) ; { ~ 1 2 3 4 ~ 4 ~ 5 ~ Kết quả khác }
//------------------------------------------------------------------------
4. Cho biết kết quả của đoạn lệnh sau: int a=2, b=5;
int c = a>b ? ++a : ++b; printf(“%d”, --c); { ~ 4 ~ 5 ~ 6 ~ 7 }
//------------------------------------------------------------------------
5. Cho biết kết quả đoạn lệnh sau: int m, n = 1; switch (n) { case 1: m = n+2; case 3: m = n*2;
case 4: m = n<<2; break; case 5: m = n/2; } printf(“ m=%d”,m); { ~ m=2 ~ m=3 ~ m=4 ~ Kết quả khác }
//------------------------------------------------------------------------
6. Các dòng nào sau đây là tương đương nhau:
a. s=0; for (j=1; j<10; j+=2) s = s+j;
b. for (j=1, s=0; j<10; j+=2) s = s+j;
c. s=0; j=1; do { s = s+j; j+=2; } while (j<10) ;
d. s=0; j=1; while (j<10) { j+=2; s = s+j; } { ~ a và c và d ~ b và c ~ a và b ~ a và d }
//------------------------------------------------------------------------
7. Tính ước số chung lớn nhất của 2 số nguyên dương m, n. Chọn phương án sai?
a. while (m!=n) if (m>n) m=m-n; else n=n-m; printf(“%d”, m);
b. do { if (m>n) m=m-n; else n=n-m; } while (m!=n); printf(“%d”, m); { ~ a ~ b }
//------------------------------------------------------------------------
8. Tính ước số chung lớn nhất của 2 số nguyên dương m, n. Chọn phương án đúng?
a. do { if (m>n) m=m-n; else n=n-m;} while (m!=n); printf(“%d”, m);
b. do { if (m>n) m=m-n; if (mm); { ~ a ~ b }
//------------------------------------------------------------------------
9. Chọn phương án đúng để tính q = n! {
~ q=1; for (i=1; i<=n; i++) q=q*i ;
~ q=1; i=1; while (i<=n) { i++; q=q*i; }
~ q=1; i=1; do { i++; q=q*i; } while (i<=n) ; ~ Tất cả đều đúng }
//------------------------------------------------------------------------
10. Chọn phương án đúng để tính q=1/2 + 1/4 + 1/6+ …+ 1/2n {
~ q=0; for (i=1; i<=n; i++) q = q + 1.0/(2*i);
~ q=0; for (i=2; i<=2*n; i+=2) q = q + float(1/i);
~ q=0; for (i=2; i<=n; i+=2) q = q + float(1/i);
~ q=0; for (i=1; i<=n; i++) q = q + 1.0/2/i; }
//------------------------------------------------------------------------
11. Cho biết giá trị biến q khi thực hiện đoạn lệnh sau:
q=0; for (i=1; i<10; i=i+3) q = q + 2*i; { ~ 10 ~ 24 ~ 44 ~ Số khác }
//------------------------------------------------------------------------
12. Cho biết giá trị biến q khi thực hiện đoạn lệnh sau:
q=0; i=1; while (i<=5) { q = q+3*i; i = i+2;} { ~ 12 ~ 27 ~ 15 ~ Số khác }
//------------------------------------------------------------------------
13. Cho biết lệnh tính q trong vòng lặp được thực hiện bao nhiêu lần? q=0; for (i=1; i<=5; i++)
{ s=1; for (j=1; j<=i; j++) s = s*j; if (i<3) q = q+s; } { ~ 2 ~ 3 ~ 5 ~ Số khác }
//------------------------------------------------------------------------
14. Điền vào # trong đoạn lệnh sau để tính:
float q=0; for (int i=1; i<=n; i++) #; { ~ q = q+1/sqrt(i) ~ q = q+1.0/sqrt(i) ~ q = q+(float)1/sqrt(i) ~ Tất cả đều đúng }
//------------------------------------------------------------------------
15. Cho biết kết quả của đoạn chương trình sau: int i, j, d=0; for (i=0; i<=10; i++)
for (j=0; j<=5; j++) if (i+j*2==10) d++; printf(“%d”, d); { ~ 8 ~ 7 ~ 6 ~ 5 }
16. Kết quả của đoạn lệnh sau là gì? C int x = 5;
printf("%d", x > 5 ? x : x * 2);
~ 5 ~ 10 ~ 0 ~ Lỗi biên dịch
17. Đoạn lệnh nào sau đây tìm giá trị nhỏ nhất giữa a và b đúng cách?
~ m = a > b ? a : b; ~ m = (a < b) ? a : b; ~ if (a < b) m = b; else m = a; ~ m = a; if (a > b) m = b;
18. Kết quả của đoạn lệnh sau là gì? C int i = 0, s = 0;
while (i < 4) { s += i; i++; } printf("%d", s); ~ 0 ~ 6 ~ 10 ~ 12
19. Kết quả của đoạn lệnh sau là gì? C int i = 1, s = 0;
do { s += i; i += 2; } while (i <= 5); printf("%d", s); ~ 9 ~ 15 ~ 1 ~ 5
20. Đoạn lệnh sau in ra bao nhiêu số? C int i;
for (i = 10; i > 5; i--) printf("%d ", i);
~ 4 ~ 5 ~ 6 ~ Không in gì
21. Kết quả của đoạn lệnh sau là gì? C int n = 3, k; switch (n) { case 1: k = 10; case 2: k = 20; case 3: k = 30; break; case 4: k = 40; } printf("%d", k);
~ 10 ~ 20 ~ 30 ~ Lỗi biên dịch
22. Đoạn lệnh nào sau đây tính tổng các số chẵn từ 2 đến 10 đúng?
~ s=0; for(i=2; i<=10; i+=2) s+=i; ~ s=0; for(i=1; i<=10; i+=2) s+=i; ~
s=0; for(i=2; i<10; i+=2) s+=i; ~ s=0; for(i=0; i<=10; i+=2) s+=i;
23. Giá trị của s sau đoạn lệnh sau là bao nhiêu? C int i=1, s=0; while (i <= 10) {
if (i % 3 == 0) { i++; continue; } s += i; i++; } printf("%d", s); ~ 37 ~ 40 ~ 45 ~ 55
24. Đoạn lệnh sau thực hiện vòng lặp trong bao nhiêu lần? C int i=0, dem=0; do { dem++; i++; } while (i < 0); printf("%d", dem);
~ 0 ~ 1 ~ Vô hạn ~ Lỗi biên dịch
25. Kết quả của đoạn lệnh sau là gì? C int a=5, b=8; int c = a++ + ++b; printf("%d %d %d", a, b, c);
~ 5 9 14 ~ 6 9 14 ~ 6 8 13 ~ 5 8 13
26. Đoạn lệnh nào sau đây tính tổng bình phương các số từ 1 đến n đúng?
~ s=0; for(i=1; i<=n; i++) s += ii; ~ s=0; for(i=0; ii; ~
s=0; for(i=1; ii; ~ s=0; i=1; while(ii; i++; }
27. Giá trị của k sau đoạn lệnh sau là bao nhiêu? C int k=0; for (int i=1; i<=5; i++) { if (i==3) break; k += i; }
~ 3 ~ 6 ~ 10 ~ 15
28. Đoạn lệnh sau in ra kết quả gì? C int i=0;
while (i++ < 5) printf("%d", i);
~ 12345 ~ 01234 ~ 1234 ~ 56789
29. Cho đoạn lệnh tính tổng S = 1 + 1/3 + 1/5 + … + 1/(2n-1). Cách nào đúng?
~ s=0.0; for(i=1; i<=n; i++) s += 1.0/(2i-1); ~ s=0; for(i=1; i<=n; i++) s
+= 1/(2i-1); ~ s=0.0; for(i=0; ii+1); ~ s=0; for(i=1; i<=2n; i+=2) s += 1.0/i;
30. Giá trị của dem sau đoạn lệnh sau là bao nhiêu? C int dem=0; for (int i=1; i<=10; i++) { for (int j=1; j<=5; j++) { if (i + j == 8) dem++; } } ~ 5 ~ 6 ~ 7 ~ 8
31. Kết quả của đoạn lệnh sau là gì? C int x=10;
int y = (x > 5) ? (x < 15 ? 1 : 2) : 3; printf("%d", y);
~ 1 ~ 2 ~ 3 ~ Lỗi biên dịch
32. Đoạn lệnh sau thực hiện bao nhiêu lần lệnh s += i? C int i=5, s=0; while (--i) s += i;
~ 4 ~ 5 ~ 6 ~ Vô hạn
33. Kết quả in ra của đoạn lệnh sau là gì? C int n=2; switch (n+1) { case 1: printf("A"); case 2: printf("B"); case 3: printf("C"); break; default: printf("D"); } ~ ABC ~ BC ~ C ~ BCD
34. Giá trị của s sau đoạn lệnh sau là bao nhiêu? C int s=0; for (int i=1; i<=4; i++) { if (i==2) continue; s += i*i; } ~ 20 ~ 30 ~ 25 ~ 16
35. Đoạn lệnh nào sau đây tính n! đúng (q là kết quả)?
~ q=1; for(i=2; i<=n; i++) q*=i; ~ q=1; for(i=1; i; ~ q=1;
i=1; while(i36. Kết quả của đoạn lệnh sau là gì? C int a=3, b=4, c=5;
int max = a > b ? (a > c ? a : c) : (b > c ? b : c); printf("%d", max); ~ 3 ~ 4 ~ 5 ~ Lỗi
37. Đoạn lệnh sau in ra bao nhiêu lần chữ “Hi”? C int i=0; do { printf("Hi "); i++; } while (i < 3); ~ 2 ~ 3 ~ 4 ~ Vô hạn
38. Giá trị của s sau đoạn lệnh sau là bao nhiêu? C int s=0, i=10; while (i > 0) { s += i; i -= 3; } ~ 22 ~ 25 ~ 28 ~ 30
39. Đoạn lệnh sau đếm số ước của n (n>1). Kết quả dem là bao nhiêu khi n=6? C int dem=0; for(int i=1; i<=n; i++) if(n % i == 0) dem++; ~ 2 ~ 3 ~ 4 ~ 6
40. Kết quả của đoạn lệnh sau là gì? C int x=1; for(; x<=3; ) { printf("%d ", x); x++; }
~ 1 2 ~ 1 2 3 ~ 2 3 4 ~ Không in gì