Kết quả chương trình sau là gì:
#include
void hoanvi(int px, int py) {
int pz;
pz = px;
px = py;
py = pz;
};
void main() {
int a = 15, b = 21;
hoanvi(a, b);
printf(“ % d % d”, a, b);
};
#include
void hoanvi(int px, int py) {
int pz;
pz = px;
px = py;
py = pz;
};
void main() {
int a = 15, b = 21;
hoanvi(a, b);
printf(“ % d % d”, a, b);
};
Trả lời:
Đáp án đúng: B
Chương trình C này minh họa cách truyền tham trị trong hàm. Hàm `hoanvi` được thiết kế để hoán đổi giá trị của hai biến nguyên. Tuy nhiên, trong C, khi bạn truyền biến vào một hàm theo kiểu thông thường (truyền tham trị), hàm sẽ nhận bản sao của các biến đó. Do đó, mọi thay đổi được thực hiện bên trong hàm `hoanvi` sẽ chỉ ảnh hưởng đến bản sao của `a` và `b`, chứ không ảnh hưởng đến `a` và `b` trong hàm `main`. Vì vậy, sau khi gọi `hoanvi(a, b)`, các giá trị của `a` và `b` trong hàm `main` vẫn giữ nguyên là 15 và 21.
Vì vậy, khi dòng lệnh `printf(“ % d % d”, a, b);` được thực thi, nó sẽ in ra giá trị ban đầu của `a` và `b`, tức là 15 và 21.
Tổng hợp 600+ câu hỏi trắc nghiệm lập trình C có đáp án đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức.
50 câu hỏi 60 phút
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
