Đề cương ôn tập – Bài 1FREELập Trình C 1. Kết quả in ra màn hình của chương trình sau? C. “16 D. Kết quả khác A. “16” B. “16 2. Các kí hiệu đặc trưng cho sự tác động lên dữ liệu gọi là? C. Biến D. Toán tử B. Biểu thức A. Hàm 3. Cho biết giá trị của biểu thức 2+4>2&&4<2? D. Tất cả đều sai C. -1 A. 1 B. 0 4. Cho biết kết quả của đoạn chương trình sau? C. 16 D. 17 A. 14 B. 15 5. Lệnh nào trong các lệnh sau cho phép đã chuyển tới một nơi nào đó đã được gán nhãn? A. break D. exit C. continue B. goto 6. Cho các khai báo sau. Phép gán nào là không hợp lệ? B. *nguyen=*tongquat; C. kitu=(char)tongquat; A. tongquat=nguyen; D. tongquat=kitu; 7. Có các khai báo sau: int x=15; int *p; Muốn p là con trỏ trỏ tới x phải thực hiện lệnh nào? D. Tất cả các lệnh đều đúng B. p=&x; A. p=x; C. p=*x; 8. Giả sử trong ngôn ngữ C sử dụng khai báo “double a[12]”, phần tử a[7] là phần tử thứ bao nhiêu trong mảng a? B. Thứ 7 A. Thứ 6 C. Thứ 8 D. Thứ 9 9. Kiểu dữ liệu float có thể xử lí dữ liệu trong phạm vi nào? C. -128 đến 127 D. 0…65535 B. -32768 đến 32767 A. 3 10. Xâu định dạng nào dưới đây dùng để in ra một số nguyên dài? C. “%d” A. “%ld” D. “%o” B. “%x” 11. Khi khai báo mảng, ta khởi tạo luôn giá trị của mảng như sau? C. Khai báo không đúng D. Kết quả khác A. x[1]=4, x[2]=2, x[3]=6 B. x[0]=4, x[1]=2, x[2]=6; 12. Kết quả của chương trình sau là gì? C. Lỗi khi xây dựng chương trình A. 69 B. 66 D. Kết quả khác 13. Trong các hàm sau, hàm nào là hàm không định dạng để in một chuỗi kí tự ra màn hình? A. puts() B. printf() D. gets() C. scanf() 14. Phát biểu nào sau đây không phài là lợi ích của việc dùng hàm? B. Dễ bảo trì A. Tránh dư thừa, lặp lại nhiều lần một đoạn lệnh C. Khả năng sử dụng lại đoạn lệnh D. Tất cả đều sai 15. Kết quả in ra màn hình của biểu thức sau là gì: -3+4%5/2? A. -1 C. 1 B. -3 D. Kết quả khác 16. 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? D. Kết quả khác B. !; A. *; C. &; 17. Xâu định dạng nào dưới đây dùng để in ra địa chỉ của một biến? A. “%u” B. “%e” D. “%p” C. “%o” 18. Kiểu dữ liệu nào dưới đây không được coi là kiểu dữ liệu cơ bản trong ngôn ngữ lập trình C? C. Kiểu short int A. Kiểu mảng B. Kiểu enum D. Kiểu unsigned 19. Giả sử a và b là 2 số thực. Biểu thức nào dưới đây là không được phép? B. (a-=b) C. (a>>=b) A. (a+=b) D. (a*=b) 20. Nếu có các khai báo sau. Câu nào sau đây sẽ là đúng? C. Cả hai câu trên A. msg[2]=value; D. Không câu nào đúng B. msg=value; 21. Kết quả in ra màn hình của chương trình sau? B. a A. A D. Kết quả khác C. 65 22. Kiểu dữ liệu int( kiểu số nguyên) có thể xử lí số nguyên nằm trong khoảng nào? A. 0…255 B. -32768…32767 C. -128…127 D. 0…65535 23. Kết quả của chương trình sau? D. Kết quả khác B. 10 A. 12 C. 8 24. Nếu có các khai báo sau. Câu nào sau đây là đúng? D. Cả hai câu trên đều sai C. Cả hai câu trên đều đúng B. ptr=msg; A. ptr=value; 25. Giả sử có câu lệnh ch[]= "A". ch chứa bao nhiêu bytes? C. 3 B. 2 D. 4 A. 1 26. Kết quả của chương trình sau là gì? C. 1 B. 0 A. True D. Kết quả khác 27. Những phát biểu nào sau đây là đúng? B. Lưu đồ có thể có nhiều điểm bắt đầu và kết thức A. 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 đó C. Kiểu kí tự chứa một kí tự nằm trong dấu nháy kép D. Trong các lệnh if lồng nhau, else thuộc về if phía trước gần nó nhất 28. Cho biết giá trị của biểu thức 5>1? A. -1 B. 0 D. Tất cả đều sai C. 1 29. Nếu hàm được gọi trước khi nó định nghĩa thì điều kiện là gì? B. Kiểu đầu vào của hàm phải là kiểu void D. Hàm chỉ trả về kiểu dữ liệu boolean C. Trước khi gọi hàm nó phải được khai báo A. Kiểu trả về của hàm phải là kiều void 30. Trong các hàm sau, hàm nào là hàm không định dạng để nhập một kí tự từ bàn phím? A. scanf(); C. getch(); B. getchar(); D. getche(); 31. Dữ liệu kí tự bao gồm? A. Các kí tự số chữ số C. Các kí tự đặc biệt B. Các kí tự chữ cái D. Cả a,b và c 32. Kết quả in ra màn hình của chương trinh sau là gì? C. “ 2 4” D. Chương trình không chạy được B. “ 2 3 4” A. “ 1 2 3 4” 33. Kết quả in ra màn hình của chương trình sau? C. 1 D. 0 B. 6 A. 5 34. Trong ngôn ngữ C, khai báo “int array[3][5]” có nghĩa là? C. array[3][5] là một phần tử của mảng D. Tất cả đều sai A. Các phần tử của mảng là các số nguyên B. Là một mảng hai chiều tối đa là 15 phần tử và mỗi phần tử là một số nguyên 35. Kết quả hiển thị ra màn hình của chương trình sau là gì? C. Báo lỗi khi thực hiện xây dựng chương trình D. Kết quả khác A. 56 B. 100 36. Kết quả của chương trình sau là gì? D. Kết quả khác C. “999” B. “696” A. “369” 37. Giả sử a và b là hai số thực. Biểu thức nào dưới đây là không được phép theo cú pháp của ngôn ngữ lập trình C? A. (a /=b) B. (a-=b) D. (a*=b) C. (a>>=b) 38. Một biến được gọi là biến toàn cục nếu? D. Nó được khai báo bên trong hàm main() 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 ngoài tất cả các hàm kể cả hàm main() C. Nó được khai báo bên ngoài hàm main() 39. Khai báo các biến: int m,n; float x,y; Lệnh nào sai ? B. x=10 ; D. m=2 C. y=12 A. n=5 ; 40. Xâu định dạng nào dưới đây dùng để in ra một xâu kí tự? B. “%x” A. “%f" C. “%s” D. “%c” 41. Kết quả của chương trình sau là gì? B. 10 D. Báo lỗi khi thực hiện xây dựng chương trình A. 5 C. 0 42. 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? B. Kiểu dữ liệu của biến A. Tên biến D. Tất cả đều đúng C. Giá trị của biến 43. Ngôn ngữ lập trình nào dưới đây là ngôn ngữ lập trình có cấu trúc? A. Ngôn ngữ Assembler D. a, b và c C. Ngôn ngữ Cobol B. Ngôn ngữ C và Pascal 44. Xâu định dạng nào dưới đây dùng để in ra một số nguyên ở hệ 8? C. “%o” D. “%u” B. “%x” A. “%ld” 45. Xâu định dạng nào dưới đây dùng để in ra một số nguyên? C. “%d” D. “%p” B. “%e” A. “%u” 46. Lệnh nào trong các lệnh sau cho phép chuyển sang vòng lặp tiếp theo mà không cần phải thực hiện phần còn lại của vòng lặp? D. return A. break C. continue B. goto 47. Dạng tổng quát của hàm printf() là: printf(“dãy mã quy cách”, dãy mã biểu thức); Trong đó, dãy mã quy cách sẽ là? B. Con trỏ của xâu kí tự D. Cả 3 phương án trên A. Dãy các mã định dạng dữ liệu hiển thị C. Các xâu kí tự mang tính chất thông báo 48. Xâu định dạng nào dưới đây dùng để in ra một số nguyên hệ 16? D. “%u” A. “%d” C. “%i” B. “%x” 49. Kết quả của chương trình sau? B. B C. b A. 98 D. Kết quả khác 50. Trong các hàm sau, hàm nào để nhập một kí tự từ bàn phím ngay sau khi gõ, không chờ nhấn Enter và không hiện ra màn hình? B. getchar(); C. getch(); A. scanf(); D. getche(); 51. Phép cộng 1 con trỏ với một số nuyên sẽ là? A. Một con trỏ có cùng kiểu D. Cả hai kết quả đều sai B. Một số nguyên C. Cả hai kết quả đều đúng 52. Giả sử a, b là hai số thực. Biểu thức nào dưới đây viết không đúng theo cú pháp của ngôn ngữ lập trình C? A. (a+=b) D. (a&=b) C. (a=b) B. (a*=b) 53. Kết quả của chương trình sau là gì? B. 10 A. 5 D. Báo lỗi khi thực hiện chương trình C. 0 54. : Kết quả của chương trình sau là gì ? C. “ 3” D. Kết quả khác B. “ 4” A. “ 1 2 3 4” 55. Kết quả của chương trình sau là gì? B. 16 D. Kết quả khác C. 4 A. 2 56. Có các khai báo sau. Trong các câu lệnh sau, câu nào đúng? C. mang=”chao ban”; B. gets(mang); D. gets(tb); A. tb=”chào bạn”; 57. Những tên biến nào dưới đây được viết đúng theo quy tắc đặt tên của ngôn ngữ lập trình C? A. diem toan B. 3diemtoan D. -diemtoan C. _diemtoan 58. Xâu định dạng nào dưới đây dùng để in ra một số thực có độ chính xác kép? A. “%u” C. “%o” B. “%e” D. “%p” 59. Hàm nào đọc kí tự từ bàn phím ngay sau khi gõ, không chờ nhấn Enter. Các kí tự có hiện ra màn hình? A. scanf(); B. getchar(); D. getche(); C. getch(); 60. Kết quả chương trình sau là gì? A. “21 15” D. Kết quả khác C. Báo lỗi khi thực hiện chương trình B. “15 21” 61. Nếu x là một biến toàn cục và x không phải là một con trỏ thì? D. Miền nhớ giành cho x không bị thay đổi trong quá trình thực hiện chương trình A. Miền nhớ dành cho x có thể thay đổi trong quá trình thực hiện chương trình C. Miền nhớ dành cho x sẽ thay đổi bởi những thao tác với x trong tất cả các hàm, kể cả hàm main() B. Miền nhớ dành cho x chỉ có thay đổi bởi những thao tác với x bên trong hàm main() 62. Kiểu dữ liệu nào dưới đây được coi là kiểu dữ liệu cơ bản trong ngôn ngữ lập trình C? B. Kiểu con trỏ C. Kiểu hợp A. Kiểu double D. Kiểu mảng 63. Biến con trỏ có thể chứa? B. Giá trị của một biến khác A. Địa chỉ vùng nhớ của một biến khác C. Cả a và b đều đúng D. Cả a và b đều sai 64. Kết quả in ra màn hình của chương trình sau? B. “chao cac” D. “chao cac ban” C. “chao ban” A. “chao” 65. Xâu định dạng nào sau đây dùng để in ra một số thực có độ chính xác đơn? D. “%o” B. “%e” C. “%f” A. “%u” 66. Tìm lỗi sai trong chương trình sau (in ra kết quả là tổng của 453 và 343)? C. Thiếu kí tự đặc tả B. Thiếu dấu phẩy (,) A. Thiếu dấu chấm phẩy(;) D. Cả 3 ý trên 67. 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 các hàm hoặc thủ tục, kể cả hàm main() D. Nó được khai báo bên ngoài các hàm kể cả hàm main() B. Nó đươc khai báo bên trong các hàm ngoại trừ hàm main() C. Nó được khai báo bên trong hàm main() 68. Sự hiệu chỉnh các kiểu dữ liệu số học khi tính toán là? C. int -> double -> float ->long -> long double D. long -> int -> float -> double -> long double B. int -> float -> long -> double -> long double A. int -> long -> float -> double -> long double 69. Ngôn ngữ lập trình được Dennish đưa ra vào năm nào? B. 1972 D. 1976 C. 1970 A. 1967 70. Kết quả in ra màn hình của chương trình sau là gì? A. Vòng lặp vô hạn B. “ 2” D. Kết quả khác C. “ 1 2” 71. Sử dụng cách truyền nào trong hàm sẽ không làm thay đổi giá trị của biến trong chương trình chính? C. Cả a và b đều đúng A. Truyền bằng trị B. Truyền bằng giá trị địa chỉ của tham số D. Cả a và b đều sai 72. Giả sử có câu lệnh ch=’A’. Vậy ch sẽ chứa bao nhiêu byte? B. 2 C. 3 A. 1 D. 4 73. 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. 0 D. Cả hai phương án trên đều sai B. NULL C. Cả hai phương án trên đều đúng 74. Lệnh nào trong các lệnh sau cho phép dừng câu lệnh điều khiển? B. goto C. continue D. Cả 3 phương án trên A. break 75. Kết quả của chương trình sau là gì? A. “15 21” C. Báo lỗi khi thực hiện chương trình D. Kết quả khác B. “21 15” 76. Độ ưu tiên đối với các toán tử logic là? B. NOT, OR, AND D. NOT, AND, OR C. OR, NOT, AND A. AND, NOT, OR 77. Cho a=3, b=2. Biến c=(a<<=b) sẽ có giá trị nào dưới đây? D. c=6 C. c=8 A. c=9 B. c=12 78. Xâu định dạng nào dưới đây dùng để in ra một kí tự? B. “%x” A. “%f” D. “%c” C. “%s” 79. Cho đoạn chương trình sau. Giả sử khi chạy chương trình ta gõ từ bản phím: “29h b”. Kết quả in ra n và c tương ứng sẽ là? A. “ 29b” C. “ 29h” B. “ 29h b” D. Kết quả khác 80. Cho a=3, b=2 và c là 3 biến nguyên. Biểu thức nào sau viết sai cú pháp trong ngôn ngữ lập trình C? C. (c= a/b) D. (c= a<<b) A. (c=a & b) B. (c=a && b) 81. Kí hiệu nào là con trỏ của phẩn tử thứ 3 của màng a có 4 kí tự? D. *(a+4); C. *a+3; B. *(a+2); A. *(a+3); 82. 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? B. Ngôn ngữ BCPL D. Ngôn ngữ B và BCPL A. Ngôn ngữ B C. Ngôn ngữ DEC PDP 83. Phép trừ 2 con trỏ có cùng kiểu sẽ là? B. Một số nguyên C. Kết quả khác A. Một con trỏ có cùng kiểu D. Không thực hiện được Time's up # Tổng Hợp# Kỹ Thuật