Kết quả in ra màn hình của chương trình sau:
#include
void main() {
int i = 100;
printf("%c", i);
}
Đáp án đúng: D
Câu hỏi liên quan
Hàm scanf("%[^\n]", str);
đọc một chuỗi ký tự từ đầu vào chuẩn (stdin) cho đến khi gặp ký tự newline (\n
). Điều này tương đương với chức năng của hàm gets(str)
, cũng đọc một dòng từ đầu vào chuẩn cho đến khi gặp ký tự newline và lưu vào chuỗi str
. Do đó, đáp án D là chính xác nhất.
getch()
vàgetche()
là các hàm đọc một ký tự từ bàn phím mà không cần nhấn Enter, và chúng không tương đương với việc đọc một chuỗi ký tự cho đến khi gặp newline.getchar()
là một macro để đọc một ký tự duy nhất từ đầu vào chuẩn.
Trong C, định dạng %2f
được sử dụng trong hàm printf
để in ra một số thực (kiểu float
hoặc double
). Số 2
trong %2f
chỉ định độ rộng tối thiểu của trường (field width) là 2 ký tự. Tuy nhiên, nó không ảnh hưởng đến số lượng chữ số thập phân được hiển thị. Số lượng chữ số thập phân hiển thị mặc định là 6. Vì vậy, số 123.5678908 sẽ được in ra với 6 chữ số thập phân. Do đó, kết quả sẽ là 123.567891 (làm tròn đến 6 chữ số thập phân). Các lựa chọn A, B, và C không chính xác.
Câu hỏi này kiểm tra kiến thức về biến trong lập trình.
- Phương án A đúng vì giá trị của một biến có thể thay đổi được trong quá trình thực thi chương trình. Đây là đặc điểm cơ bản của biến.
- Phương án B sai vì biến được tạo ra để lưu trữ các giá trị có thể thay đổi.
- Phương án C sai vì trong hầu hết các ngôn ngữ lập trình, việc khai báo hai biến trùng tên trong cùng một phạm vi (ví dụ: trong cùng một hàm) sẽ gây ra lỗi.
- Phương án D đúng vì không thể khai báo hai biến trùng tên trong cùng một hàm. Điều này là do trình biên dịch hoặc trình thông dịch sẽ không biết biến nào được sử dụng khi tên biến được gọi.
Để giải biểu thức logic trên, ta thực hiện theo thứ tự ưu tiên của các toán tử:
1. Toán tử &&
(AND) được thực hiện trước:
1 && 1
cho kết quả1
.1 && 0
cho kết quả0
.
2. Toán tử ||
(OR) được thực hiện tiếp theo:
1 || 0
cho kết quả1
.
3. Cuối cùng, toán tử !
(NOT) được thực hiện:
!1
cho kết quả0
.
Vậy, giá trị logic của biểu thức !(1 && 1 || 1 && 0)
là 0
.
Phân tích:
Câu hỏi kiểm tra kiến thức về con trỏ và cách gán giá trị cho con trỏ trong C.
ptr là một con trỏ kiểu char *
, tức là nó trỏ đến một vùng nhớ chứa một ký tự (char) hoặc một chuỗi ký tự.
msg là một mảng các ký tự (char msg[10]
), hay nói cách khác, nó là một chuỗi ký tự có kích thước tối đa là 10.
v là một biến kiểu ký tự (char v
), nó chứa một ký tự đơn.
Đánh giá các phương án:
- A.
ptr = v;
: Sai.ptr
là một con trỏ (địa chỉ), cònv
là một ký tự. Bạn không thể gán trực tiếp một ký tự cho một con trỏ. Cần phải gán địa chỉ củav
choptr
, ví dụ:ptr = &v;
- B.
ptr = msg;
: Đúng. Trong C, tên của một mảng (trong hầu hết các trường hợp) tự động được chuyển đổi thành một con trỏ đến phần tử đầu tiên của mảng đó. Vì vậy,msg
tương đương với&msg[0]
, tức là địa chỉ của ký tự đầu tiên trong mảngmsg
. Do đó, việc gánptr = msg;
là hợp lệ, vì cả hai đều là địa chỉ của kiểuchar
. - C. Cả hai câu đều đúng: Sai. Vì A sai.
- D. Không câu nào đúng: Sai. Vì B đúng.
Vậy, đáp án đúng là B.

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
ĐĂ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.