50+ câu Trắc nghiệm Nhập môn lập trình có đáp án - Phần 4
21 câu hỏi
Cho đoạn chương trình:
int x = 6;
int y = 4;
if (x > 5)
if (y > 5)
printf("x and y are > 5");
else
printf("x is <= 5");
x is <= 5
x and y are > 5
Cả A và B đều sai
Chọn đáp án C
Câu lệnh:
rate = (10 > 40) ? 0.4 : 0.2;
Giá trị của rate là:
0.2
0.4
10
40
Chọn đáp án A
Nhận định đúng về while và do...while:
Giống nhau hoàn toàn
Thân vòng lặp do...while luôn thực hiện ít nhất một lần
Thân vòng lặp while luôn thực hiện ít nhất một lần
Cả hai đều không thực hiện nếu điều kiện sai
Chọn đáp án B
int k = 0;
while (k = 1)
k++;
Vòng lặp thực hiện:
Vô số lần
1 lần
Không lần nào
Lỗi
Chọn đáp án A
Kết quả:
int num = 0;
while (num <= 2)
{
num++;
printf("%d; ", num);
}
1; 2; 3; 4;
1; 2; 3;
1; 2;
1;
Chọn đáp án B
Kết quả:
for (i = 2; i <= 14; i += 3)
count = count + 1;
Thực hiện bao nhiêu lần?
2
5
13
14
Chọn đáp án B
Kết quả:
for (i = 14; i >= 4; i -= 2)
for (j = 1; j < 20; j++)
count = count + 1;
110
112
114
116
Chọn đáp án C
Kết quả:
int a, b;
for (a = 1, b = 1; a <= 100; a++)
{
if (b >= 10)
break;
if (b % 3 == 1)
{
b += 3;
continue;
}
}
printf("%d", a);
101
6
5
4
Chọn đáp án C
Câu lệnh nào KHÔNG phải vòng lặp vô hạn?
for (int i = 0; ; i++);
for (;;);
for ();
while (1);
Chọn đáp án C
Kết quả:
int sum = 0, score;
scanf("%d", &score);
while (score != -1)
{
sum += score;
scanf("%d", &score);
}
Nhập: 5, 3, 2, -1
10
1
2
9
Chọn đáp án A
Cho hàm foo như sau:
int foo(int x) {
return x;
return x * x;
return x * x * x;
}
Lời gọi foo(5) trả về giá trị bao nhiêu?
5
25
125
Cả 3 đáp án trên đều sai vì hàm foo bị lỗi biên dịch.
Chọn đáp án A
Trong số các hàm dưới đây, hàm nào được định nghĩa đúng cú pháp?
int sum(int a, int b) {
int sum;
sum = a + b;
}
void sum(int a, int b) {
int sum;
sum = a + b;
return (sum);
}
maximum(int a, int b) {
int c;
return (c = a >= b ? a : b);
}
void fun(void) {
cout << "Hello! Everyone";
void fun1() {
cout << "Please sit down";
}
}
Chọn đáp án A
Cho hàm:
unsigned func(unsigned num) {
unsigned k;
do {
k = num % 10;
num /= 10;
} while (num);
return k;
}
Lời gọi func(26) trả về giá trị bao nhiêu?
2
3
4
0
Chọn đáp án A
Hãy cho biết kết xuất của đoạn chương trình sau:
#include <iostream.h>
void fun(int x, int y, int z) {
z = x * x + y * y;
}
void main() {
int z = 68;
fun(5, 2, z);
printf("%d", z);
}
0
29
68
Một giá trị ngẫu nhiên
Chọn đáp án C
Cho hàm:
int fun(int a, int b) {
return ++a * b++;
}
Lời gọi fun(fun(3, 4), 5); trả về giá trị bao nhiêu?
85
60
126
120
Chọn đáp án B
Cho biết kết xuất của đoạn chương trình sau:
char st[] = "hello friend!";
void func1(int i) {
printf("%c", st[i]);
if (i < 3) {
i += 2;
func2(i);
}
}
void func2(int i) {
printf("%c", st[i]);
if (i < 3) {
i += 2;
func1(i);
}
}
void main() {
func1(0);
}
hello
hel
hlo
hlm
Chọn đáp án C
Chọn khai báo hợp lệ trong C cho một dãy foo gồm 5 phần tử kiểu nguyên.
int foo[5];
foo: int[5];
int[5] foo;
int foo[] = {0, 0, 0, 0, 0};
int* foo[5];
Chọn đáp án A
Nếu foo là mảng 10 phần tử, truy xuất phần tử cuối cùng như thế nào?
foo[10]
foo[9]
foo(10)
foo(9)
foo[last]
Chọn đáp án B
Cho khai báo:
float foo[10], b = 1.4;
int a = 2;
Câu lệnh nào không hợp lệ?
foo[0] = a;
foo[a] = b;
foo[b] = a;
b = foo[a + 2];
foo[foo[a]] = foo[2] + 5;
Chọn đáp án C
Truy xuất phần tử hàng 2, cột 3 của mảng foo (4 hàng, 9 cột):
foo[2][3]
foo[1][2]
foo[3][2]
foo[2][1]
foo[11]
Chọn đáp án B
Cho khai báo:
char foo[] = "Array";
Kích thước của mảng là:
4
5
6
10
Không biết trước
Chọn đáp án C



