What will be the output of the following C code?

4 phương ánCó giải thích
Đề bài
#include <stdio.h>
void main()
{
    int total=0;
    for(int s=1; s<15; s++)
        total=total+s;
    printf("%d",total);
}

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "105". Biến s khởi tạo bằng 1 và vòng lặp còn chạy khi s nhỏ hơn 15, nên s nhận lần lượt các giá trị từ 1 tới 14; thân vòng không có ngoặc nhọn nên chỉ gồm đúng lệnh cộng dồn total = total + s. Tổng các số nguyên từ 1 tới 14 bằng 14 nhân 15 rồi chia 2, tức 105, và printf in giá trị đó. Số "150" không ứng với tổng của dãy liên tiếp nào ở đây. Số "120" là tổng từ 1 tới 15, tức hiểu điều kiện s nhỏ hơn 15 thành nhỏ hơn hoặc bằng 15, nhưng khi s lên 15 thì điều kiện đã sai và thân vòng không chạy nữa. Số "210" là tổng từ 1 tới 20. Kiểu void main không chuẩn nhưng nhiều trình dịch vẫn nhận, nên kết quả in ra không đổi.

Cùng phần 3

Xuất hiện trong 1 bộ đề