关于书上例子的一个小程序,新手求解
{int i=1,sum=0;
do{
if(i==(i/5)*5) continue;
sum+=i;
} while(++i<100);
printf("%d\n",sum);
}
请问if(i==(i/5)*5)这个是如何判断成不成立的? 还有这段程序是怎样运行的?
结果是4000
[解决办法]
i=1~4时,sum+=i;有效;
i=5时,continue了;
依次类推;
最终,sum=(1+2+3+...+99)-(5+10+15+...+95)=4950-950=4000.
[解决办法]
if(i==(i/5)*5) continue; 能整除则continue,不能整除则跑sum+=i;
结果就是计算所有不能整除的数字和,而且是100以内的。
[解决办法]
if(i==(i/5)*5) continue;如果if条件为真,continue是不进行sum+=i语句而进入下次do while循环
sum+=i;