30/09/2018, 22:04

Hỏi về vòng lặp for

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n,S;
    printf("Nhap n:");
    S=0;
    for (int i = 0; i <=n; i = i+1)
    printf("%d",i);
    S:=S+i;
    printf("Tong la cua n la %d",S);

    return 0;
}

Mình compiler thì nó báo lỗi S:=S+i;

Tao Không Ngu. viết 00:15 ngày 01/10/2018

This post was flagged by the community and is temporarily hidden.

vũ xuân quân viết 00:12 ngày 01/10/2018

for (int i = 0; i <=n; i = i+1)
printf("%d",i);
S:=S+i;

Em code sai rồi.
Code như vậy thì biến i chỉ hiểu ở printf thôi.
Còn dòng dưới biến i không có nên báo lỗi.
Em coi lại lệnh for nhé.

Xuân Hòa viết 00:19 ngày 01/10/2018

Thêm nữa là nếu muốn tính tổng bạn phải cho lệnh tính tổng trong vòng for luôn:

for (int i = 0; i <=n; i = i+1) {
    printf("%d",i);
    S=S+i;
}
Đinh Thiện Khải viết 00:07 ngày 01/10/2018

Hiển nhiên là lỗi rồi,thứ nhất trong C không cho khai báo int i trong hàm for. Thứ 2 nếu bạn viết không có dẫu {} thì vòng for chỉ bao đến câu lệnh printf, còn câu lệnh S:=S+i là ngoài vòng for, vì vậy báo lỗi là phải. Nó chả biết i là thằng nào mà

Qúy_Night_0806 viết 00:10 ngày 01/10/2018

Cho vào for luôn? hay mình thêm {}?

Nguyễn Tấn Khoa viết 00:13 ngày 01/10/2018
for (int I = 0; I <= n; I++)
{
     printf("%d", I);
     s = s + I;
}

Là như thế này

Qúy_Night_0806 viết 00:09 ngày 01/10/2018

Chạy được rồi. Cám ơn tankhoa0000

Qúy_Night_0806 viết 00:07 ngày 01/10/2018

Nhầm sang pascal ở chổ nào?

Nguyễn Tấn Khoa viết 00:20 ngày 01/10/2018

Ở chỗ này S:=S+i;

Qúy_Night_0806 viết 00:04 ngày 01/10/2018

chú này nhanh phết nhờ

Nguyễn Tấn Khoa viết 00:05 ngày 01/10/2018

C không cho khai báo int i trong hàm for

Sai rồi nhé , từ chuẩn C99 thì bạn khai báo biến ở đâu cũng được.

Xuân Hòa viết 00:13 ngày 01/10/2018

à thêm {} đấy, mình gõ thiếu

Bài liên quan
0