wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Quiz_C_Program

Total questions: 25

Worksheet time: 14mins

Name
Class
Date
1.

Nếu muốn in một số thực với 2 chữ số sau dấu thập phân, bạn sẽ sử dụng định dạng nào trong printf?

a)

%f.2

b)

%2f

c)

%2f

d)

 

 %.2f

2.

Đoạn mã sau sẽ in ra gì: if (0) { printf("True"); } else { printf("False"); }?

a)

TRUE

b)

0

c)

FALSE

d)

1

3.

Đoạn mã sau sẽ in ra gì: int x = 3%4; switch(x) { case 0: printf("Zero"); break; case 1: printf("One"); break; default: printf("Default"); }?

a)

One

b)

Default

c)

Zero

d)

one

4.

Đoạn mã sau sẽ in ra gì: int i = 0; while (i < 5) { printf("%d ", i++); i += 2; }?

a)

0 2 4

b)

0 1 2

c)

0 3

d)

1 4

5.

int i; for(int i=1; i<5;i++)

{

printf("%d ",i);

break;

}

printf("%d ",i);

a)

1

b)

1 1

c)

5

d)

1 2 3 4 1

6.

int i; for(int i=1; i>5;i++){ printf ("%d",i); } printf("%d ",i);

a)

1 2 3 4 1

b)

5

c)

lỗi

d)

1

7.

int i = 0; while (i < 10) { if (i % 2 == 0) { break; } i++; } printf("%d", i);

a)

1

b)

11

c)

10

d)

0

8.

int i = 1; while (i < 10) { if (i % 2 == 0) { break; } i++; } printf("%d", i);

a)

4

b)

0

c)

2

d)

10

9.

int i; for (i = 0; i < 5; i++) { if (i == 3) { continue; } printf("%d ", i); }

a)

0 1 2 3 4

b)

0 1 2 4

c)

 0 1 2 3

d)

0 1 2

10.

int result,a=1; result= a++ + ++a + a++ + --a; printf("%d ",result);

a)

2

b)

9

c)

3

d)

10

11.

Đoạn mã sau sẽ in ra gì: int x = 5; if (x > 10) printf("Greater"); else printf("Smaller");?

a)

Greater

b)

5

c)

10

d)

Smaller

12.

 Trong C, đầu ra của đoạn mã sau là gì: int x = 5; int y = (x == 5) ? 10 : 0; printf("%d", x*y);?

a)

5

b)

10

c)

50

d)

0

13.

Cú pháp đúng cho một vòng lặp for là gì?

a)

for (init; condition; increment)

b)

for (init; increment; condition)

c)

for (condition; init; increment)

d)

for (init,condition,increment)

14.

Đoạn mã sau sẽ in ra gì: for (int i = 0; i < 5; i+=2) { printf("%d ", i); }?

a)

1 2 3 4 5

b)

0 2 4

c)

0 1 2 3 4 5

d)

0 1 2 3 4

15.

Đoạn mã sau sẽ in ra gì: int i = 0; do { printf("%d ", i++); i++; } while (i < 3);?

a)

0-1-2

b)

0-1

c)

0-2

d)

1-2

16.

Đoạn mã sau sẽ in ra gì: for (int i = 0; i < 3; i+=2) { if (i == 1) break; printf("%d ", i); }?

a)

1

b)

0-1

c)

0-2

17.

Thuật toán tìm kiếm nhị phân chỉ hoạt động trên mảng đã được sắp xếp. Tại sao?

a)

Vì tìm kiếm nhị phân kiểm tra các phần tử từ trái sang phải.

b)

Vì tìm kiếm nhị phân chia mảng thành hai nửa và chọn nửa có khả năng chứa phần tử cần tìm.

c)

Vì tìm kiếm nhị phân thực hiện phép so sánh tuyến tính.

d)

Vì tìm kiếm nhị phân cần phải so sánh tất cả các phần tử trong mảng.


18.

Hàm nào trong C được sử dụng để nhận một ký tự từ người dùng?

a)

getchar()

b)

putchar()

c)

gets()

d)

puts()

19.

int i, j; for (i = 0; i < 5; i++) { for (j = 0; j < i; j++) { printf("*"); } } Số lượng kí tự * in ra là bao nhiêu?

a)

15

b)

0

c)

5

d)

10

20.

int i = 1; while (i < 10) { if (i % 2 == 0) { break; } i++; } printf("%d", i);

a)

10

b)

2

c)

4

d)

0

21.

Biến nào sau đây được khai báo đúng với quy tắc đặt tên biến trong C?

a)

int 1number

b)

int number_1

c)

int number-1

d)

int number 7

22.

Độ dài (length) của một mảng được khai báo như thế nào?

a)

array.size();

b)

sizeof(array)/sizeof(array[0]);

c)

array.length;

d)

sizeof(array);

23.

Hàm puts() trong C có chức năng gì?

a)

Đọc đầu vào từ người dùng

b)

Đọc vào một số thực

c)

In ra một số nguyên

d)

In ra một chuỗi ký tự

24.

Đoạn mã sau sẽ in ra gì: for (int i = 0; i < 5; i+=2) { printf("%d ", i); }?

a)

0 1 2 3 4

b)

1 2 3 4 5

c)

0 1 2 3 4 5

d)

0 2 4

25.

int x = 0, y = 10; do { y -= 2; x += y; } while (y > 0); printf("%d", x);

a)

30

b)

40

c)

20

d)

60