You are on page 1of 4

1.Trong các khai báo sau, phương án nào sau đây là đúng?

char msg[10]; char *ptr;


char value;
A. ptr=value;
B. ptr=msg;
C. Cả hai câu trên đều đúng.
D. Cả hai câu trên đều sai.
2.Điều 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. Giá trị của biến.
D. Tất cả đều đúng
3. 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?
A. Kiểu double.
B. Kiểu con trỏ.
C. Kiểu hợp.
D. Kiểu mảng.
4. Lệnh nào trong các lệnh sau cho phép nhảy ra khỏi vòng lặp đến vị trí bất kì mong
muốn?
A. break;
B. continue;
C. goto;
D. Không có phương án nào.
5.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.
B. Kiểu double.
C. Kiểu short int.
D. Kiểu unsigned int.
6. 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".
C. "%o".
D. "%p".
7. Giả sử có khai báo int a=10; int *p=&a; Phát biểu đúng là?
A. Giá trị của biến con trỏ p là 10
B. Biến con trỏ p chỉ có địa chỉ, không có giá trị
C. Giá trị của con trỏ p là địa chỉ của biến a mà nó trỏ tới
D. Giá trị của con trỏ p là NULL
8. 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?
A. p=x;
B. p=&x;
C. p=*x;
D. Tất cả các lệnh đều đúng.
9. Các khai báo sau, phương án nào sau đây là đúng? char msg[10]; char value;
A. msg[2] =value;
B. msg=value;
C. Cả hai câu trên.
D. Không câu nào đúng.
10. 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.
11. Giả sử đã khai báo đầy đủ thư viện, kết quả của chương trình sau là? int main(){int
i=0;{int i=20, j=30;i=i+j;}printf("i=%d",i);}
A. i=50
B. i=20
C. i=30
D. i=0
12. Cho đoạn code sau: int x=50;int *p=&x; printf("%p\n", p); giả sử đã có đầy đủ các
khai báo khác, cho biết kết quả xuất ra trên màn hình?
A. Địa chỉ biến x.
B. Địa chỉ biến p.
C. Giá trị của biến x.
D. Số 50.
13. Kết quả in ra màn hình của biểu thức sau là gì: -3+4 %5/2 ?
A. -1.
B. -3.
C. 1.
D. Kết quả khác.
14. Một biến được gọi là một biến địa phương (cục bộ) nếu:
A. Nó được khai báo bên trong 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 ().
D. Nó được khai báo bên ngoài các hàm kể cả hàm main ().
15. 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.
B. goto.
C. continue.
D. exit.
16.
Khi khai báo mảng, ta khởi tạo luôn giá trị của mảng như sau: int x[3] ={4, 2, 6};
Nghĩa là?
A. x[1] =4, x[2] =2, x[3] =6.
B. x[0] =4, x[1] =2, x[2] =6;
C. Khai báo không đúng.
D. Kết quả khác.
17. Cho đoạn code sau: void in(int n){ if(n>1) {printf("%d \t",n); in(n-1);} } int
main(){ in(3);}, giả sử đã có đầy đủ các khai báo khác, cho biết kết quả xuất ra trên
màn hình?
A. 3,2,1.
B. 3,2.
C. 3,2,1,0.
D. 3
18. Khai báo các biến sau. Phương án nào sai? int m, n; float x, y;
A. n=5 ;
B. x=10 ;
C. y=12.5 ;
D. m=2.5 ;
19. INT_MIN là -2147483648 và INT_MAX là 2147483647.
20. phép toán % có ý nghĩa phép chia lấy dư (modulus).
21. Phép toán một ngôi là một phép toán được thực hiện trên một toán hạng
(operand) duy nhất
22. ! (Logical NOT): Đảo ngược giá trị logic. (Ưu tiên cao nhất)
&& (Logical AND): Toán tử AND logic. Thực hiện từ trái sang phải.
|| (Logical OR): Toán tử OR logic. Thực hiện từ trái sang phải.

You might also like