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