wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Ktlt test 2

Total questions: 48

Worksheet time: 36mins

Name
Class
Date
1.

Cho biết kết quả của đoạn chương trình sau: int p=4; p=10+ ++p;

a)

Kết quả khác.

b)

15.

c)

14.

d)

16.

2.

Có các khai báo sau: Char tb, mang[15]; Trong các câu lệnh sau, câu nào đúng:

a)

"chaoban";

b)

"chào bạn";

c)

tb

d)

gets (mang);

e)

gets (tb);

3.

Phép cộng 1 con trỏ với một số nguyên sẽ là:

a)

Cả hai kết quả đều đúng.

b)

Một con trỏ có cùng kiểu.

c)

Một số nguyên.

d)

Cả hai kết quả đều sai.

4.

Phép trừ 2 con trỏ có cùng kiểu sẽ là:

a)

Không thực hiện được.

b)

Một số nguyên.

c)

Một con trỏ có cùng kiểu.

d)

Kết quả khác.

5.

Phép toán 1 ngôi nào dùng để xác định địa chỉ của đối tượng mà con trỏ chỉ tới:

a)

Kết quả khác.

b)

*;

c)

&;

d)

! ;

6.

Khi biến con trỏ không chứa bất kì một địa chỉ nào thì giá trị của nó sẽ là:

a)

NULL hoặc 0.

b)

1 hoặc -1.

c)

255 hoặc 256.

d)

true hoặc false.

7.

Các kí hiệu đặc trưng cho sự tác động lên dữ liệu gọi là:

a)

Hàm.

b)

Biến.

c)

Toán tử.

d)

Biểu thức.

8.

Những phát biểu nào sau đây là đúng:

a)

Kiểu kí tự chứa một kí tự nằm trong dấu nháy

b)

Trong các lệnh if lồng nhau, else thuộc về if phía trước gần nó nhất.

c)

Rẽ nhánh là việc chọn ra một trong hai hay nhiều con đường cho việc thực hiện tính toán sau đó.

d)

Lưu đồ có thể có nhiều điểm bắt đầu và kết thúc.

9.

Ngôn ngữ lập trình C được Dennish phát triển dựa trên ngôn ngữ lập trình nào?

a)

Ngôn ngữ DEC PDP.

b)

Ngôn ngữ BCPL.

c)

Ngôn ngữ B.

d)

Ngôn ngữ B và BCPL.

10.

Hằng có thể được định nghĩa theo cách nào:

a)

giá trị;

b)

const tên_kiểu tên_biến_hằng

c)

Không có cách định nghĩa chung.

d)

A và B.

11.

Hàm gotoxy (int x, int y) là hàm:

4 lines
12.

Cái gì quyết định kích thước của vùng nhớ được cấp phát cho các biến:

a)

Kiểu dữ liệu của biến.

b)

Tên biến.

c)

Tất cả đều đúng.

d)

Giá trị của biến.

13.

Phép toán % có ý nghĩa gì:

a)

Chia hai số thực hoặc nguyên.

b)

Lấy phần dư của phép chia hai số nguyên.

c)

Đổi dấu một số thực hoặc một số nguyên.

d)

A và B.

14.

Toán tử "+n" được hiểu:

a)

Giá trị của n được tăng lên trước khi giá trị của nó được sử dụng.

b)

Giá trị của n được tăng sau khi giá trị của nó được sử dụng.

c)

Giá trị n giảm đi trước khi giá trị của nó được sử dụng.

d)

Giá trị n giảm đi sau khi giá trị của nó được sử dụng.

15.

Tham số hình thức được liệt kê trong ___ của hàm và tham số thực tế được liệt kê trong ____ của hàm.

a)

Cài đặt, lời gọi

b)

Lời gọi, cài đặt

c)

Không phải các câu trên.

16.

Một tham số có kiểu đơn giản (ví dụ như int hoặc double) nên được truyền giá trị nếu luồng dữ liệu của tham số đó là:

4 lines
17.

Câu khẳng định nào sau đây là đúng khi tham số được truyền theo giá trị:

a)

Tham số thật không bao giờ được thay đổi bởi sự thực thi của hàm.

b)

Tham số thật phải là một biến.

c)

Tham số hình thức không bao giờ được thay đổi bởi sự thực thi của hàm.

d)

Câu a, b và c đúng.

18.

Câu khẳng định nào sau đây là đúng khi tham số được truyền theo con trỏ:

a)

Chỉ có câu a và b là đúng.

b)

Tham số thật có thể được thay đổi bởi sự thực thi của hàm.

c)

Tham số hình thức có thể được thay đổi bởi sự thực thi của hàm.

d)

Tham số thật không thể là một biến.

19.

Hai phần của hàm đệ quy tức thì là:

a)

(1) Chia vấn đề thành các vấn đề nhỏ hơn, và (2) đưa ra lời giải trực tiếp cho các vấn đề khó hơn.

b)

(1) Giải vấn đề bằng cách yêu cầu nó giải chính nó, và (2) giải các trường hợp đơn giản trong một bước.

c)

(1) Bỏ qua các trường hợp khó, và (2) giải các trường hợp dễ.

d)

(1) Nếu vấn đề là đơn giản thì giải ra ngay, và (2) nếu vấn đề không thể được giải ra ngay thì chia nó ra thành các vấn đề nhỏ hơn để giải.

20.

Việc chạy hàm đệ quy tốn rất nhiều bộ nhớ vì:

a)

Các lời gọi hàm trước đó vẫn còn mở khi một hàm gọi chính nó và thông tin về các lời gọi hàm trước đó vẫn còn được lưu trong stack của bộ nhớ.

b)

Các hàm đệ quy có xu hướng khai báo rất nhiều biến.

c)

Có quá nhiều phiên bản của mã lệnh của hàm được tạo ra.

d)

Hàm đệ quy cần giá trị cực lớn cho dữ liệu của nó.

21.

Chọn tên biến được viết đúng theo quy tắc đặt tên của ngôn ngữ lập trình C.

a)

bien_so1

b)

1bien_so

c)

bien-so

d)

bien so

22.

Khai báo biến nào sau đây là đúng?

a)

3diemtoan

b)

_diemtoan

c)

-diemtoan

d)

diem toan

23.

Việc chạy hàm đệ quy tốn rất nhiều bộ nhớ vì:

a)

Các hàm đệ quy có xu hướng khai báo rất nhiều biến.

b)

Có quá nhiều phiên bản của mã lệnh của hàm được tạo ra.

c)

Hàm đệ quy cần giá trị cực lớn cho dữ liệu của nó.

d)

Các lời gọi hàm trước đó vẫn còn mở khi một hàm gọi chính nó và thông tin về các lời gọi hàm trước đó vẫn còn được lưu trong stack của bộ nhớ.

24.

Điều gì sẽ xảy ra khi ta gán một phần tử vượt quá chỉ số của mảng?

a)

Chương trình có thể bị treo nếu một số dữ liệu bị ghi đè

b)

Kích thước mảng sẽ tự tăng theo

c)

Trình biên dịch sẽ báo lỗi

d)

Phần tử sẽ được gán ở chỉ số 0

25.

Với hai chuỗi ký tự giống nhau, hàm strcmp() trả lại kết quả gì?

a)

yes

b)

-1

c)

0

d)

1

26.

Hàm nào trong các hàm sau đây tìm một ký tự trong chuỗi và trả lại vị trí của kết quả sau cùng tìm kiếm được?

a)

strchr()

b)

strrchr()

c)

strnset()

d)

strstr()

27.

26. Khai báo con trỏ nào sau đây là đúng?

a)

int *p;

b)

int p*;

c)

int &p;

d)

int * p()

28.

Lệnh nào sau đây dùng để lấy địa chỉ của biến a?

a)

&a;

b)

a;

c)

address(a);

d)

*a;

29.

Lệnh nào sau đây trả về địa chỉ của biến đang được trỏ tới bởi con trỏ a?

a)

address(a)

b)

a

c)

&a

d)

*a

30.

Lệnh nào sau đây trả về giá trị của biến mà con trỏ a đang trỏ tới?

a)

a.a;

b)

b.val(a);

c)

c.&a;

d)

d.*a;

31.

Hàm/Lệnh nào dưới đây dùng để cấp phát vùng nhớ động trong C?

a)

create

b)

malloc

c)

new

d)

value

32.

Lệnh nào sau đây dùng để giải phóng một vùng nhớ được cấp phát động?

a)

a.delete

b)

b.free

33.

Một biến được gọi là biến toàn cục nếu:

a)

Nó được khai báo tất cả các hàm, ngoại trừ hàm main ().

b)

Nó được khai báo bên ngoài hàm main ().

c)

Nó được khai báo bên trong hàm main ().

d)

Nó được khai báo ngoài tất cả các hàm kể cả hàm main ().

34.

Hàm và con trỏ trong C có thể được sử dụng thay thế lẫn nhau?

a)

Đúng

b)

Sai

35.

Cho p là một con trỏ kiểu int và i là một biến kiểu int. Câu lệnh nào sau đây là đúng?

a)

p

b)

i;

c)

p

d)

p + 1;

e)

&i;

36.

Con trỏ có thể trỏ đến kiểu dữ liệu nào sau đây?

a)

Tất cả các kiểu trên

b)

char

c)

int

d)

struct

37.

Ký tự nào sau đây là ký tự kết thúc chuỗi?

a)

' '

b)

'\0'

c)

"

38.

Cho hai câu khai báo sau: char *p = "Sanjay"; char a[] = "Sanjay"; hãy chọn câu phát biểu sai:

a)

Kết quả khác

b)

p là một non-const pointer trỏ tới một non-const string còn a là một const pointer trỏ tới một nonconst string

c)

Có thể cho con trỏ p trỏ tới một chuỗi khác, còn a thì không mà chỉ có thể thay đổi giá trị của a.

d)

Trong cả hai trường hợp, ký tự '\0' sẽ được thêm vào cuối chuỗi.

39.

Hàm nào dùng để so sánh hai chuỗi?

a)

cmp()

b)

strcmp()

c)

stringcompare()

d)

compare()

40.

Câu lệnh nào sau đây là sai?

a)

"TX"

b)

"A"

c)

"Texas"

d)

char str4[3]

e)

char str3[2]

41.

Cho một biến con trỏ char *ptr_ch, những câu lệnh nào sau đây là đúng?

a)

"This is Quiz 2.";

b)

*ptr_ch

c)

*ptr_ch

42.

Đối tượng nào đại diện cho 1 tập tin trong C?

a)

a.FILE*

b)

b.printf

c)

c.fprintf

d)

d.fopen

43.

Chế độ nào dùng để mở và ghi tiếp vào tập tin thay vì tạo tập tin mới?

a)

w

b)

a

c)

r

d)

W+

44.

Một biến được gọi là một biến địa phương nếu:

a)

Nó được khai báo bên trong hàm main ().

b)

Nó được khai báo bên ngoài các hàm kể cả hàm main ().

c)

Nó được khai báo bên trong các hàm hoặc thủ tục, kể cả hàm main ().

d)

Nó được khai báo bên trong các hàm ngoại trừ hàm main ().

45.

Trước khi đọc hoặc ghi vào tập tin, bạn cần làm gì?

a)

Dùng fprintf

b)

Gọi fopen

c)

Gọi fclose

d)

Tạo tập tin

46.

Câu nào sau đây dùng để truy cập một biến trong cấu trúc b?

(a)  

47.

Câu nào sau đây là đúng:

a)

ptr

b)

Cả hai câu trên đều sai.

c)

msg;

d)

ptr

e)

Cả hai câu trên đều đúng.

48.

Phép gán nào là không hợp lệ:

a)

kitu;

b)

(char) tongquat;

c)

nguyen

d)

kitu

e)

tongquat