Đáp án đúng: B
Để 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
.
Câu hỏi liên quan
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.
Câu hỏi yêu cầu xác định hàm nhập xuất không định dạng trong các lựa chọn đã cho.
printf()
vàscanf()
là các hàm nhập xuất có định dạng, vì chúng sử dụng chuỗi định dạng để chỉ định cách dữ liệu được đọc hoặc in ra.getchar()
là hàm nhập một ký tự từ đầu vào chuẩn (stdin) mà không cần định dạng.putchar()
là hàm xuất một ký tự ra đầu ra chuẩn (stdout) mà không cần định dạng.
Vậy, getchar()
và putchar()
là các hàm nhập xuất không định dạng.
Phát biểu đúng nhất về biến động là: Khi chạy chương trình, kích thước vùng biến, vùng nhớ và địa chỉ vùng nhớ có thể thay đổi.
Giải thích:
- Đáp án A không đúng vì biến động có thể phát sinh trước khi chương trình thực hiện (ví dụ, khi cấp phát bộ nhớ động).
- Đáp án B đúng vì đây là bản chất của biến động trong lập trình. Kích thước, vùng nhớ và địa chỉ của biến có thể thay đổi trong quá trình chương trình chạy, đặc biệt khi sử dụng cấp phát bộ nhớ động.
- Đáp án C đúng, tuy nhiên chưa đủ bao quát bằng đáp án B, nó chỉ nói về việc giải phóng bộ nhớ đã cấp phát.
- Vì đáp án B đúng và bao quát hơn cả nên D (tất cả các đáp án trên) không phải là đáp án đúng nhất.
Câu hỏi này kiểm tra kiến thức về các hàm đọc dữ liệu từ tệp nhị phân trong C.
- A. fscanf(f, \"%d\", x); Hàm
fscanf
được sử dụng để đọc dữ liệu từ một tệp đã được mở ở chế độ văn bản (text mode), không phải nhị phân. Nó đọc dữ liệu theo định dạng được chỉ định (trong trường hợp này là số nguyên) và lưu vào biến được trỏ bởi con trỏx
. Tuy nhiên, vìf
là con trỏ tệp nhị phân, sử dụngfscanf
là không phù hợp. - B. fread(&x, sizeof(int), 1, f); Hàm
fread
được sử dụng để đọc dữ liệu từ tệp nhị phân. Tham số đầu tiên là địa chỉ của biến để lưu dữ liệu đọc được (&x
), tham số thứ hai là kích thước của mỗi phần tử cần đọc (sizeof(int)
), tham số thứ ba là số lượng phần tử cần đọc (1
), và tham số cuối cùng là con trỏ tệp (f
). Đoạn mã này sẽ đọc một số nguyên từ tệp nhị phânf
và lưu vào biếnx
. Đây là phương pháp chính xác để đọc dữ liệu từ tệp nhị phân. - C. getw(f); Hàm
getw
cũng được sử dụng để đọc một số nguyên từ tệp, nhưng nó là một hàm cũ và không được khuyến khích sử dụng trong các chương trình hiện đại. Nó có thể không hoạt động đúng trên tất cả các hệ thống. - D. 2 và 3 đúng. Vì
getw
không được khuyến khích và có thể không tương thích, chỉ có phương án 2 đúng.
Vậy, đáp án đúng là B.
Để trả lời câu hỏi này, cần hiểu cách C xử lý các kí tự đặc biệt khi đọc file văn bản, đặc biệt là kí tự có mã 1A (EOF), OD (Carriage Return) và OA (Line Feed).
- Phương án A: Khi đọc kí tự có mã 1A (End-of-File) từ file văn bản, C thường hiểu đây là dấu hiệu kết thúc file. C sẽ không đọc thành kí tự có mã -1. Do đó, phương án A sai.
- Phương án B: Trong hệ điều hành Windows, kí tự xuống dòng thường được biểu diễn bằng cặp kí tự OD (Carriage Return) và OA (Line Feed). Khi đọc file văn bản ở chế độ text, C sẽ chuyển đổi cặp kí tự OD và OA thành một kí tự xuống dòng duy nhất (OA). Do đó, phương án B đúng.
- Phương án C: Như giải thích ở phương án B, C không bỏ qua kí tự OD mà chuyển đổi nó cùng với OA thành kí tự xuống dòng. Do đó, phương án C sai.
- Phương án D: Vì phương án A và C sai nên phương án D cũng sai.
Vậy đáp án đúng nhất 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.