Cho biết kết quả khi chạy đoạn chương trình sau:

void Swap(int a, int b) {
int t = a;
a = b;
b = t;
}

int main() {
int x = 5, y = 10;
Swap(x, y);
cout << x << ", " << y;
}

Các đáp án:

  • A. 10, 10

  • B. 10, 5

  • C. 5, 5

  • D. 5, 10

 

Phân tích:

  • Hàm Swap truyền tham trị (không phải tham chiếu).

  • x, y truyền vào copy giá trị, nên trong Swap đổi nhưng x ngoài main không đổi.

  • Do đó sau Swap(x, y), x vẫn là 5, y vẫn là 10.

✅ In ra: 5, 10

✅ Đáp án D. 5,10

Để lại một bình luận