Hàm duy nhất mà tất cả các chương trình C phải chứa là gì?
Trả lời:
Đáp án đúng: C
Trong ngôn ngữ lập trình C, hàm main() là hàm bắt buộc phải có trong mọi chương trình. Chương trình sẽ bắt đầu thực thi từ hàm main(). Các hàm khác như start(), system(), và program() không phải là các hàm bắt buộc.
Câu hỏi liên quan
Lời giải:
Đáp án đúng: C
Trong ngôn ngữ lập trình C, các xâu định dạng được sử dụng trong các hàm như printf để chỉ định kiểu dữ liệu của biến cần in ra. Dưới đây là phân tích từng lựa chọn:
- A. "%u": Được sử dụng để in ra một số nguyên không dấu (unsigned integer).
- B. "%e": Được sử dụng để in ra một số thực (floating-point number) ở dạng ký hiệu khoa học (ví dụ: 1.2345e+05).
- C. "%d": Được sử dụng để in ra một số nguyên có dấu (signed integer) ở hệ thập phân.
- D. "%p": Được sử dụng để in ra một con trỏ (pointer) ở dạng địa chỉ bộ nhớ.
Như vậy, xâu định dạng đúng để in ra một số nguyên là "%d".
Lời giải:
Đáp án đúng: A
Trong ngôn ngữ lập trình C, toán tử `&` là toán tử bitwise AND (AND trên từng bit), trong khi `&&` là toán tử logical AND (AND logic).
- Phương án A: `(c=a & B)` sai cú pháp vì `B` không phải là một biến đã được định nghĩa trước đó. Mặc dù `b` đã được định nghĩa, nhưng C phân biệt chữ hoa và chữ thường, nên `B` được hiểu là một định danh chưa được khai báo.
- Phương án B: `(c=a && B)` sai cú pháp tương tự như A, do `B` không được định nghĩa.
- Phương án C: `(c= a/B)` sai cú pháp tương tự như A và B, do `B` không được định nghĩa.
- Phương án D: `(c= a
Vì vậy, các phương án A, B và C đều sai do sử dụng `B` (chưa được định nghĩa) thay vì `b` (đã được định nghĩa). Tuy nhiên, theo đề bài, chỉ có một đáp án sai cú pháp. Trong trường hợp này, ta chọn A là đáp án sai cú pháp nhất vì nó sử dụng toán tử bitwise AND không phù hợp trong ngữ cảnh này. Nếu đề bài muốn so sánh logic, cần phải sử dụng `&&`.
Tuy nhiên, nếu đề bài sửa lại thành: “Cho a=3, b=2 và c là 3 biến nguyên. Biểu thức nào sau viết đúng cú pháp trong ngôn ngữ lập trình C:”, thì đáp án đúng là D.
Vì vậy, câu hỏi này có nhiều đáp án sai. Trong trường hợp này, câu A là đáp án gần đúng nhất theo cách hiểu thông thường về mục đích của câu hỏi (kiểm tra việc sử dụng toán tử bitwise và logical).
- Phương án A: `(c=a & B)` sai cú pháp vì `B` không phải là một biến đã được định nghĩa trước đó. Mặc dù `b` đã được định nghĩa, nhưng C phân biệt chữ hoa và chữ thường, nên `B` được hiểu là một định danh chưa được khai báo.
- Phương án B: `(c=a && B)` sai cú pháp tương tự như A, do `B` không được định nghĩa.
- Phương án C: `(c= a/B)` sai cú pháp tương tự như A và B, do `B` không được định nghĩa.
- Phương án D: `(c= a
Vì vậy, các phương án A, B và C đều sai do sử dụng `B` (chưa được định nghĩa) thay vì `b` (đã được định nghĩa). Tuy nhiên, theo đề bài, chỉ có một đáp án sai cú pháp. Trong trường hợp này, ta chọn A là đáp án sai cú pháp nhất vì nó sử dụng toán tử bitwise AND không phù hợp trong ngữ cảnh này. Nếu đề bài muốn so sánh logic, cần phải sử dụng `&&`.
Tuy nhiên, nếu đề bài sửa lại thành: “Cho a=3, b=2 và c là 3 biến nguyên. Biểu thức nào sau viết đúng cú pháp trong ngôn ngữ lập trình C:”, thì đáp án đúng là D.
Vì vậy, câu hỏi này có nhiều đáp án sai. Trong trường hợp này, câu A là đáp án gần đúng nhất theo cách hiểu thông thường về mục đích của câu hỏi (kiểm tra việc sử dụng toán tử bitwise và logical).
Lời giải:
Đáp án đúng: B
Câu hỏi kiểm tra về toán tử dịch trái bit (<<=) trong một ngôn ngữ lập trình (ví dụ: C, C++, Java). Toán tử `<<=` dịch trái toán hạng bên trái một số lượng bit được chỉ định bởi toán hạng bên phải và gán kết quả cho toán hạng bên trái.
Trong trường hợp này, `a <<= b` có nghĩa là dịch trái giá trị của `a` (ban đầu là 3) `b` bit (2 bit) và gán kết quả trở lại cho `a`. Sau đó, giá trị mới của `a` sẽ được gán cho `c`.
Bước 1: Chuyển 3 sang dạng nhị phân: 3 = 00000011 (8 bit).
Bước 2: Dịch trái 2 bit: 00000011 << 2 = 00001100.
Bước 3: Chuyển 00001100 sang dạng thập phân: 00001100 = 12.
Bước 4: Gán giá trị 12 cho a. Sau đó gán a cho c. Vậy c=12.
Do đó, đáp án đúng là B. c=12.
Trong trường hợp này, `a <<= b` có nghĩa là dịch trái giá trị của `a` (ban đầu là 3) `b` bit (2 bit) và gán kết quả trở lại cho `a`. Sau đó, giá trị mới của `a` sẽ được gán cho `c`.
Bước 1: Chuyển 3 sang dạng nhị phân: 3 = 00000011 (8 bit).
Bước 2: Dịch trái 2 bit: 00000011 << 2 = 00001100.
Bước 3: Chuyển 00001100 sang dạng thập phân: 00001100 = 12.
Bước 4: Gán giá trị 12 cho a. Sau đó gán a cho c. Vậy c=12.
Do đó, đáp án đúng là B. c=12.
Lời giải:
Đáp án đúng: B
Lệnh `goto` trong lập trình cho phép chuyển trực tiếp đến một điểm (nhãn) khác trong chương trình. Các lệnh `break`, `continue` và `exit` có chức năng khác:
- `break`: Thoát khỏi vòng lặp (for, while, do...while) hoặc switch case hiện tại.
- `continue`: Bỏ qua phần còn lại của vòng lặp hiện tại và chuyển sang lần lặp tiếp theo.
- `exit`: Kết thúc toàn bộ chương trình.
Vì vậy, chỉ có `goto` là lệnh cho phép chuyển đến một nhãn đã được định nghĩa trước.
- `break`: Thoát khỏi vòng lặp (for, while, do...while) hoặc switch case hiện tại.
- `continue`: Bỏ qua phần còn lại của vòng lặp hiện tại và chuyển sang lần lặp tiếp theo.
- `exit`: Kết thúc toàn bộ chương trình.
Vì vậy, chỉ có `goto` là lệnh cho phép chuyển đến một nhãn đã được định nghĩa trước.
Lời giải:
Đáp án đúng: B
Trong C/C++, để một con trỏ trỏ tới một biến, ta cần gán địa chỉ của biến đó cho con trỏ. Địa chỉ của biến x được lấy bằng toán tử & (toán tử địa chỉ). Vì vậy, để p trỏ tới x, ta phải gán địa chỉ của x cho p, tức là p = &x;.
- A.
p=x;sai vì gán giá trị của x cho p, không phải địa chỉ. - B.
p=&x;đúng vì gán địa chỉ của x cho p. - C.
p=*x;sai vì *x sẽ dereference giá trị của x, mà x là một số nguyên, không phải địa chỉ hợp lệ để dereference. - D.
Tất cả các lệnh đều đúngsai vì các lệnh A và C sai.
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy
89 tài liệu310 lượt tải

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin
125 tài liệu441 lượt tải

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông
104 tài liệu687 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán
103 tài liệu589 lượt tải

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp
377 tài liệu1030 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
99 tài liệu1062 lượt tải
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.
77.000 đ/ tháng