#include <stdio.h>
int main()
{
int i, sum;
for(i=1; sum=0; i<=20; i++)
{
if(i%3 == 0)
{
continue;
}
sum += i;
}
printf("sum=%d\n",sum);
return 0;
}
#include <stdio.h>
int main()
{
int i, sum;
for(i=1; sum=0; i<=20; i++)
{
if(i%3 == 0)
{
continue;
}
sum += i;
}
printf("sum=%d\n",sum);
return 0;
}
for语句后,(表达式1;表达式2;表达式3)
表达式1为最初的赋值
i=1,sum=0都属于表达式1
把i=1后面的;换成,就可以了
我分析了一下,你这个程序的目的应该是输出1~20内不是3的倍数的数的个数,问题出现在for循环 和 sum的算法,请看图:
你for循环写错了,分号多了一个