50 câu hỏi 60 phút
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?
Ngôn ngữ Assembler
Ngôn ngữ C và Pascal
Ngôn ngữ Cobol
Ngôn ngữ lập trình có cấu trúc là một mô hình lập trình tập trung vào việc chia chương trình thành các khối nhỏ, dễ quản lý, dễ đọc và dễ bảo trì. Các ngôn ngữ C và Pascal là những ví dụ điển hình của ngôn ngữ lập trình có cấu trúc. Assembler là ngôn ngữ cấp thấp, Cobol cũng là ngôn ngữ lập trình có cấu trúc nhưng C và Pascal được sử dụng phổ biến hơn trong việc dạy và học về lập trình có cấu trúc.
50 câu hỏi 60 phút
45 câu hỏi 60 phút
50 câu hỏi 60 phút
22 câu hỏi 60 phút
50 câu hỏi 60 phút
50 câu hỏi 60 phút
50 câu hỏi 60 phút
50 câu hỏi 60 phút
50 câu hỏi 60 phút
50 câu hỏi 60 phút
Ngôn ngữ lập trình có cấu trúc là một mô hình lập trình tập trung vào việc chia chương trình thành các khối nhỏ, dễ quản lý, dễ đọc và dễ bảo trì. Các ngôn ngữ C và Pascal là những ví dụ điển hình của ngôn ngữ lập trình có cấu trúc. Assembler là ngôn ngữ cấp thấp, Cobol cũng là ngôn ngữ lập trình có cấu trúc nhưng C và Pascal được sử dụng phổ biến hơn trong việc dạy và học về lập trình có cấu trúc.
Biến địa phương (local variable) là biến được khai báo bên trong một hàm hoặc thủ tục (bao gồm cả hàm main()
). Phạm vi của biến địa phương giới hạn trong khối lệnh mà nó được khai báo. Điều này có nghĩa là biến chỉ có thể được truy cập và sử dụng bên trong hàm/thủ tục đó. Khi hàm/thủ tục kết thúc, biến địa phương sẽ bị hủy.
main()
, là định nghĩa chính xác của biến địa phương.main()
là không chính xác, vì biến khai báo trong main()
vẫn là biến địa phương của hàm main()
.main()
là không đúng, vì biến địa phương có thể được khai báo trong bất kỳ hàm nào.Trong ngôn ngữ lập trình C:
a += b
tương đương với a = a + b
.a *= b
tương đương với a = a * b
.a = b
là phép gán giá trị của b
cho a
.a &= b
là phép toán AND bitwise giữa a
và b
, sau đó gán kết quả cho a
. Tuy nhiên, trong C, nếu a
và b
là các số thực (float hoặc double), thì không thể sử dụng toán tử &=
. Toán tử này chỉ được sử dụng cho các kiểu dữ liệu số nguyên (int, char,...).Do đó, biểu thức (a &= b)
là không đúng cú pháp khi a
và b
là hai số thực.
Trong ngôn ngữ lập trình C, các phép gán (như -=
, >>=
, *=
) phải được viết liền nhau, không có khoảng trắng ở giữa. Phép gán a = a operator b
có thể được viết gọn thành a operator= b
. Tuy nhiên, không có toán tử nào trong C chỉ đơn giản là ghép hai biến lại như (a b)
, đây là một lỗi cú pháp.
Đáp án A: (a b)
là không hợp lệ vì nó không phải là một toán tử hợp lệ trong C.
Đáp án B: (a-=b)
tương đương với a = a - b
, là một phép gán hợp lệ.
Đáp án C: (a>>=b)
tương đương với a = a >> b
, là một phép gán hợp lệ (dịch bit phải).
Đáp án D: (a*=b)
tương đương với a = a * b
, là một phép gán hợp lệ.
Cho các khai báo sau:
void *tongquat;
int *nguyen;
char *kitu;
Phép gán nào là không hợp lệ: