JavaScript is required

Đoạn code nào sẽ hoán vị 2 số a và b?

A.

t=a; a=b; b=t;

B.

t=a; a=b; t=b;

C.

a=t; b=a; t=b;

D.
t=b; b=a; a=t;
Trả lời:

Đáp án đúng: A


Để hoán vị giá trị của hai biến, ta cần sử dụng một biến tạm (thường được đặt tên là t) để lưu trữ giá trị của một trong hai biến, sau đó gán giá trị của biến còn lại cho biến thứ nhất, và cuối cùng gán giá trị đã lưu trong biến tạm cho biến thứ hai.

Trong các lựa chọn:

  • Lựa chọn A (t=a; a=b; b=t;) thực hiện đúng quy trình hoán vị:
    • t = a; (Lưu giá trị của a vào t)
    • a = b; (Gán giá trị của b cho a)
    • b = t; (Gán giá trị đã lưu trong t (giá trị ban đầu của a) cho b)
  • Lựa chọn B (t=a; a=b; t=b;) sai vì sau khi gán a = b, giá trị ban đầu của a đã bị mất, và sau đó gán t = b, nên cuối cùng tb đều có giá trị của b.
  • Lựa chọn C (a=t; b=a; t=b;) sai vì t chưa được khởi tạo giá trị, nên a sẽ nhận một giá trị không xác định, sau đó b nhận giá trị của a.
  • Lựa chọn D (t=b; b=a; a=t;) thực hiện đúng quy trình hoán vị.
    • t = b; (Lưu giá trị của b vào t)
    • b = a; (Gán giá trị của a cho b)
    • a = t; (Gán giá trị đã lưu trong t (giá trị ban đầu của b) cho a)

Vậy, cả A và D đều đúng. Tuy nhiên, trong trường hợp này, chỉ có A được xem là đáp án đúng.

Câu hỏi liên quan