vietjack.com

320 Câu hỏi trắc nghiệm lập trình C có đáp án - Phần 5
Quiz

320 Câu hỏi trắc nghiệm lập trình C có đáp án - Phần 5

A
Admin
50 câu hỏiIT TestTrắc nghiệm tổng hợp
50 CÂU HỎI
1. Nhiều lựa chọn

Cho một danh sách móc nối với các phần tử trong danh sách có kiểu S1 được định nghĩa như sau: struct S1{ int info; struct S1 * next;} *head; Biết con trỏ “head” lưu địa chỉ của phần tử đầu tiên trong danh sách. Cho biết mục đích của câu lệnh sau: { head->next->next->info=111;};

A. Câu lệnh bị lỗi

B. Giá trị “info” trong phần tử thứ 3 đã bị thay đổi

C. Giá trị “info” trong phần tử thứ 2 đã bị thay đổi

D. Giá trị “info” trong phần tử bất kì đã bị thay đổi.

2. Nhiều lựa chọn

Cho một danh sách móc nối với các phần tử trong danh sách có kiểu S1 được định nghĩa như sau: struct S1{ int info; struct S1 * next;}
*head; Biết con trỏ “head” lưu địa chỉ của phần tử đầu tiên trong danh sách. Cho biết mục đích của câu lệnh sau: {(head->next)=(head>next)->next;};

A. Loại bỏ phần tử thứ nhất ra khỏi danh sách.

B. Loại bỏ phần tử thứ 2 ra khỏi danh sách.

C. Loại bỏ phần tử thứ 3 ra khỏi danh sách.

D. Câu lệnh bị lỗi.

3. Nhiều lựa chọn

Một danh sách trong đó tất cả các thao tác chèn thực hiện tại một đầu, thao tác xóa được thực hiện tại đầu kia của danh sách gọi là:

A. Stack.

B. Queue;

C. Cây nhị phân

D. Cả 3 đáp án trên

4. Nhiều lựa chọn

Đâu là phát biểu đúng về danh sách móc nối:

A. Chỉ có thể thêm phần tử mới vào đầu danh sách

B. Không thể thêm phần tử mới vào cuối danh sách

C. Có thể thêm phần tử mới vào vị trí bất kì trong danh sách

D. Không câu nào đúng

5. Nhiều lựa chọn

Đâu là phát biểu đúng về danh sách:

A. Chỉ có thể xóa phần tử đầu tiên trong danh sách

B. Chỉ có thể xóa phần tử cuối cùng trong danh sách

C. Có thể xóa một phần tử tại vị trí bất kì trong danh sách

D. Tất cả đều sai

6. Nhiều lựa chọn

Hàm dùng để cấp phát bộ nhớ động cho kiểu nhớ động do lập trình viên tự định nghĩa như (union, struct):

A. calloc();

B. malloc();

C. realloc();

D. Cả 3 đáp án trên

7. Nhiều lựa chọn

Cho một danh sách móc nối với các phần tử trong danh sách có kiểu S1 được định nghĩa như sau. Biết con trỏ “*head” lưu địa chỉ của phần
tử đầu tiên trong danh sách. Nhóm câu lệnh nào sau đây thêm một phần tử vào đầu danh sách:
struct S1 {
int info;
struct S1 * next;
}* head;

A. p->next=head; head=p;

B. p->next=head; head->p; head=p->next;

C. head->next=p; p=head;

D. Không có câu nào đúng

8. Nhiều lựa chọn

Cho một danh sách móc nối với các phần tử trong danh sách có kiểu S1 được định nghĩa như sau. Biết con trỏ “*head” lưu địa chỉ của phần tử đầu tiên trong danh sách. Nhóm câu lệnh nào sau đây xóa phần tử đầu tiên ra khỏi danh sách:
struct S1 {
int info;
struct S1 * next;
}* head;

A. head->next=head;

B. head=head->next;

C. head=head->next->next;

D. B và C đều đúng

9. Nhiều lựa chọn

Đâu là phát biểu sai khi nói về danh sách liên kết:

A. Mỗi phần tử trong danh sách liên kết phải có ít nhất một trường dùng để lưu địa chỉ.

B. Sử dụng danh sách liên kết thường tiết kiệm bộ nhớ hơn dùng mảng.

C. Sử dụng danh sách liên kết thường tốn bộ nhớ hơn dùng mảng.

D. Tất cả các đáp án đều sai.

10. Nhiều lựa chọn

Câu nào không nói đến ưu điểm của việc sử dụng cấu trúc:

A. Bạn có thể xử lí một cách hỗn hợp các kiểu dữ liệu trong một đơn vị.

B. Bạn có thể lưu dữ xâu kí tự có đọ dài khác nhau vào trong một biến cấu trúc.

C. Dữ liệu có thể lưu trữ trong một module và dưới dạng phân cấp.

D. Cần ít nhất một bộ nhớ cho cùng dữ liệu.

11. Nhiều lựa chọn

Làm thế nào có thể biểu diễn phần tử “hoten” của SV1
struct SV {
char hoten[20];
}
SV1, * p;
p = & SV1;

A. SV1.hoten;

B. p->hoten;

C. &hoten;

D. A và B đều đúng

12. Nhiều lựa chọn

Đâu là phát biểu sai:

A. Có thể truyền tham số là một biến struct cho hàm.

B. Có thể truyền tham số là một biến con trỏ cho hàm.

C. Có thể truyền tham số là một biến con trỏ struct cho hàm.

D. Không thể truyền tham số là phần tử của struct cho hàm.

13. Nhiều lựa chọn

Cho mảng A gồm các phần tử kiểu struct, phát biểu nào là đúng khi truy cập đến các trường của các phần tử:

A. A[chỉ số].tên_trường;

B. A.tên_trường;

C. &A.tên_trường;

D. &A[chỉ số].tên_trường;

14. Nhiều lựa chọn

Không gian nhớ dùng để lưu trữ các node của danh sách liên kết kép:

A. Lưu trữ rởi rác trong bộ nhớ.

B. Luôn lưu trữ liên tục trong bộ nhớ

C. Lưu trữ theo kiểu phân trang.

D. Lưu trữ theo kiểu phân đoạn

15. Nhiều lựa chọn

Khi thực hiện việc thêm một node x vào cây nhị phân tìm kiếm ta chỉ cần:

A. Tìm vị trí thích hợp cho nhánh cây con bên phải.

B. Tìm vị trí thích hợp cho x trên toàn bộ cây

C. Tìm vị trí thích hợp cho nhánh cây con ở bên trái.

D. Không ý nào đúng.

16. Nhiều lựa chọn

Dấu hiệu nào dưới đây cho biết node p của một danh sách liên kết đơn là node cuối cùng bên phải:

A. (p->info!=NULL);

B. (p->info==NULL);

C. (p->next!=NULL);

D. (p->next==NULL);

17. Nhiều lựa chọn

Khi loại bỏ node x ở cây nhị phân tìm kiếm ta chỉ cần kiểm tra xem:

A. x có phải là node lá trái của cây nhị phân tìm kiếm hay không.

B. x có phải là node lá phải của cây nhị phân tìm kiếm hay không.

C. Sự tồn tại của x trên cây.

D. Cả 3 phương án a, b, c đều sai.

18. Nhiều lựa chọn

Cơ chế nào dưới đây được cài đặt cho hàng đợi

A. FIFO

B. Round Robin

C. Tuần tự

D. FILO

19. Nhiều lựa chọn

Dấu hiệu nào dưới đây cho biết danh sách liên kết đơn rỗng:

A. (p->right==NULL);

B. (p->info==NULL);

C. (p==NULL);

D. (p->next==NULL);

20. Nhiều lựa chọn

Dấu hiệu nào cho biết node phải của p có cây con bên phải:

A. (p->right!=NULL);

B. (p->left!=NULL);

C. (p->right!=NULL)&&(p->right->right==NULL);

D. (p->right!=NULL)&&(p->right->right!=NULL);

21. Nhiều lựa chọn

Cơ chế nào dưới đây được cài đặt cho Stack:

A. FILO

B. Tuần tự

C. Round Robin

D. FIFO

22. Nhiều lựa chọn

Một cây nhị phân được gọi là đúng nếu:

A. Node gốc và tất cả các node trung gian đều có 2 node con.

B. Giá trị khóa của node gốc bao giờ cũng lớn hơn giá trị các khóa của nhánh cây con bên phải.

C. Giá trị khóa của node gốc bao giờ cũng lớn hơn giá trị các khóa của nhánh cây con bên trái.

D. Node gốc và các node trung gian đều có 2 node con và các node lá đều có mức giống nhau

23. Nhiều lựa chọn

Khi thực hiện phép thêm một node lá x vào bên phải node p của cây nhị phân thông thường, ta cần:

A. Kiểm tra sự tồn tại của p và các lá bên phải p;

B. Kiểm tra sự tồn tại của node lá bên phải p

C. Kiểm tra sự tồn tại của node p.

D. Không cần thực hiện cả 3 điểu kiện nêu trong câu hỏi.

24. Nhiều lựa chọn

Cho đoạn chương trình sau. Kết quả là
int a, * p, * q;
float * t;
a = 5;
p = & a;
p = q;
t = p;
printf(“ % d % f”, a, t);

A. 5-12

B. 5

C. Chương trình lỗi.

D. Kết quả khác.

25. Nhiều lựa chọn

Số màu có thể biểu diễn trong chế độ đồ họa do yếu tố nào quy định:

A. Số bít tương ứng với 1 pixel

B. Độ phân giải màn hình

C. Do kích thước màn hình

D. Không phải 3 yếu tố trên

26. Nhiều lựa chọn

Trong chế độ 256 màu, số bít cho mỗi pixel là:

A. 5

B. 6

C. 7

D. 8

27. Nhiều lựa chọn

Các file tối thiểu cần cho việc vẽ đồ họa:

A. GRAPH.H, *.BGI, *.CHR.

B. GRAPH.H, *.TXT, *.DOC

C. *.BGI, *.TXT, *.DOC

D. *.CHR, *.TXT, *.DOC.

28. Nhiều lựa chọn

Một chương trình đồ họa gồm bao nhiêu đoạn:

A. 2

B. 3

C. 4

D. 5

29. Nhiều lựa chọn

Trong chế độ graphic, gốc tọa độ là

A. Góc trên bên trái

B. Góc trên bên phải

C. Góc dưới bên trái

D. Góc dưới bên phải

30. Nhiều lựa chọn

Ba màu cơ bản trong máy tính là:

A. RED, GREEN, BLUE

B. RED, YELLOW, BLUE

C. BLUE, YELLOW, BLUE

D. GREEN, RED, PING

31. Nhiều lựa chọn

Hàm getpixel(int x, int y) dùng để làm gì:

A. Vẽ một điểm tại tọa độ (x,y);

B. Lấy giá trị màu của điểm tại tọa độ (x,y);

C. Vẽ một điểm tại vị trí con trỏ.

D. Cả 3 phương án đều sai.

32. Nhiều lựa chọn

Sau khi hàm setwiewport(int x1, int y1, int x2, int y2, int clip); được thực hiện thì tọa độ (0,0) của tất cả các hàm vẽ sẽ là:

A. Góc trên phải của màn hình.

B. Góc trên phải của viewport.

C. Góc trên trái của màn hình.

D. Góc trên trái của viewport.

33. Nhiều lựa chọn

Trong chế độ đồ họa, hàm nào thường được dùng để hiện nội dung xâu:

A. printf();

B. outtext(char far * textstring);

C. outtextxy(int x, int y, char far *textstring);

D. putchar();

34. Nhiều lựa chọn

Trong bước khởi tạo đồ họa ta cần:

A. Xác định vi mạch

B. Chọn chế độ đồ họa.

C. Cả 2 phương án trên đều sai

D. Cả 2 phương án trên đều đúng

35. Nhiều lựa chọn

Khẳng định nào dưới đây là sai:

A. Hàm moveto(int x, int y) di chuyển vị trí hiện tại của màn hình đồ họa tới điểm có tọa độ (x,y);

B. lineto(int x, int y) là hàm vẽ đường thẳng từ vị trí con trỏ đồ họa hiện tại tới điểm có tọa độ (x,y).

C. linerel(int x, int y) vẽ đường thẳng tử gốc tọa độ tới điểm có tọa độ (x,y);

D. line(int x1, int y1, int x2, int y2) vẽ đường thẳng nối liền 2 điểm có tọa độ (x1,y1) và (x2,y2);

36. Nhiều lựa chọn

Hàm putpixel(int x, int y) dùng để làm gì?

A. Vẽ một điểm tại tọa độ (x,y);

B. Lấy màu của điểm có tọa độ (x,y);

C. Vẽ một điểm tại vị trí con trỏ.

D. Cả 3 phương án trên đều sai

37. Nhiều lựa chọn

Lệnh nào dùng để đóng chế độ đồ họa:

A. getch();

B. closegraph();

C. Cả 2 phương án trên đều sai.

D. Cả 2 phương án trên đều đúng.

38. Nhiều lựa chọn

Hàm closegraph() dùng để làm gì:

A. Sẽ giải phóng hết các vùng nhớ giành cho đồ họa.

B. Dùng để dừng màn hình

C. Dùng để xóa màn hình.

D. Cả 3 phương án trên đều sai.

39. Nhiều lựa chọn

Phát biểu nào là đúng khi nói về 2 hàm: rectangle(int x1, int y1, int x2, int y2) và bar(int x1, int y1, int x2, int y2):

A. Cả 2 hàm đều vẽ hình chữ nhật.

B. Hàm thứ nhất chỉ vẽ đường viền hình chữ nhật, không tô màu bên trong còn hàm thứ 2 thì tô cả màu bên trong.

C. Hàm thứ 2 chỉ vẽ đường viền hình chữ nhật, không tô màu bên trong còn hàm thứ nhất thì tô cả màu bên trong.

D. Cả hai hàm đều vẽ hình chữ nhật và tô cả màu bên trong.

40. Nhiều lựa chọn

Chế độ đồ họa bao gồm các vấn đề:

A. Bao nhiêu màu.

B. Gồm những màu gì.

C. Độ phân giải của màn hình là bao nhiêu.

D. Cả 3 phương án trên.

41. Nhiều lựa chọn

Hàm setcolor(int color) làm nhiệm vụ gì:

A. Thiết lập màu nền.

B. Đặt màu vẽ hiện tại.

C. Cả 2 ý trên đều đúng.

D. Cả hai ý trên đều sai.

42. Nhiều lựa chọn

Tham số clip trong hàm setviewport(int x1, int y1, int x2, int y2, int clip); qui định vấn đề gì:

A. Cho phép hiển thị hay không hiển thị các nét vẽ bên trong viewport

B. Cho phép hiển thị hay không hiển thị các nét vẽ bên ngoài viewport.

C. Cả 2 đều đúng.

D. Cả 2 đều sai.

43. Nhiều lựa chọn

Điểu gì là đúng nhất khi nói về hàm floodfill(int x, int y, int Border);

A. Dùng để tô màu hình tròn chứa điểm (x,y).

B. Dùng để tô màu hình chữ nhật chứa điểm (x,y).

C. Dùng để tô màu đa giác chứa điểm (x,y);

D. Dùng để tô màu miền kín bất kì chứa điểm (x,y);

44. Nhiều lựa chọn

Trong chế độ đồ họa, hàm nào sau đây xác lập kiểu chữ, cỡ chữ:

A. outtextxy(int x, int y, char far * textstring);

B. outtext(char far *textstring);

C. settextstyle(int font, int direction, int charsize);

D. Cả 3 phương án trên.

45. Nhiều lựa chọn

Cho đoạn chương trình sau. Biết kích thước kiểu char: 1 byte, float : 4 byte, int : 4 byte, double : 8 byte, long : 4 byte. Kết quả trả về sẽ là:
#include <stdio.h>
#include <conio.h>
int main() {
printf("%d\t", sizeof(6.5));
printf("%d\t", sizeof(90000));
printf("%d", sizeof('A'));
getch();
}

A. 8 4 1

B. 8 2 1

C. 4 4 1

D. Kết quả khác

46. Nhiều lựa chọn

Cho đoạn chương trình sau, kết quả trả về sẽ là:
#include <stdio.h>
int main() {
double num = 5.2;
int
var = 5;
printf("%d\t", sizeof(!num));
printf("%d\t", sizeof(var = 15 / 2));
printf("%d",
var);
return 0;
}

A. 1 4 5

B. 1 4 7

C. 8 4 7

D. Kết quả khác

47. Nhiều lựa chọn

Cho đoạn chương trình sau. Kết quả trả về là:
#include <stdio.h>
int main() {
int w = 3;
int x = 31;
int y = 10;
double z = x / y % w;
printf("%f\n", z);
return 0;
}

A. 1

B. 0

C. 0.1

D. 2

48. Nhiều lựa chọn

Kết quả trả về của toán tử sau: Evaluate !(1 && !(0 || 1))

A. True

B. False

C. Không xác định

49. Nhiều lựa chọn

Hàm duy nhất mà tất cả các chương trình C phải chứa là gì?

A. start()

B. system()

C. main()

D. program()

50. Nhiều lựa chọn

Câu nào sau đây cho thấy cú pháp đúng cho câu lệnh if?

A. if expression

B. if { expression

C. if ( expression )

D. expression if

© All rights reserved VietJack