Anh (Chị) hãy cho biết kết quả của đoạn lệnh sau là gì?
int i;
float p; p=1;
for(i=1;i<3;i++)
{ p=p*i;
p=p*p;
}
cout << p << endl;
Trả lời:
Đáp án đúng: B
Đoạn code trên thực hiện tính toán giá trị của biến `p` kiểu float trong một vòng lặp `for`. Ta cùng phân tích từng bước:
- **Khởi tạo:** `p = 1`
- **Vòng lặp `for`:** `i` chạy từ 1 đến 2.
- **Lần lặp 1 (i = 1):**
- `p = p * i;` => `p = 1 * 1 = 1`
- `p = p * p;` => `p = 1 * 1 = 1`
- **Lần lặp 2 (i = 2):**
- `p = p * i;` => `p = 1 * 2 = 2`
- `p = p * p;` => `p = 2 * 2 = 4`
- **Kết thúc vòng lặp:** Giá trị cuối cùng của `p` là 4.
- **In ra:** `cout << p << endl;` in ra giá trị của `p`, tức là 4.
Vậy đáp án đúng là p=4.