int sum =0;
for (int i=0;i<10;i++){
if(i%2)continue
sum +=i;
}
printf ("%d\n",sum);
Q:为什么最后的输出是20?
第三行的 (i % 2) 相当于 i % 2 == 1 所以只加上了奇数,你要偶数的话要改成 (i % 2 == 0)
除 2有余数时 continue,即奇数时 continue,即偶数才参与下面的累加,就是 2+4+6+8=20
if(i%2) 这句等价于:if(i%2 != 0)
是这样吧
#include<bits/stdc++.h>
using namespace std;
int main()
{
int sum=0;
for(int i=0;i<10;i++)
{
if(i%2==0)
{
continue;
}
sum+=i;
}
printf("%d\n",sum);
}
有余数时,if语句才不执行,sum语句才执行,2、4、6、8才执行,2+4+6+8=20