关于if和continue的疑问
#include <stdio.h>int main()
{
int sum;
sum = 0;
int i ;
for (i=0; i<10; i++ )
{
if ( i%2 )continue;
sum += i;
}
printf("%d\n", sum);
}
为什么在i=2时可以进入sum +=i?
此时的i%2=0(if(0)不是类似于fluse吗),按道理不应该是不执行continue吗?
这个if语句相当于
{if(i%2!=0){continue;}
sum+=i};
就是说i为奇数,就跳出本轮循环,开始下一轮
当 i为偶数,就sum+i; 本帖最后由 jackz007 于 2021-11-26 14:27 编辑
#include <stdio.h>
int main(void)
{
int sum = 0 , i ;
for(i = 0 ; i < 10 ; i ++) {
if (i % 2 ) continue ; // 如果 i 除以 2 余数不为 0 就直接结束本轮循环,准备下一次循环
sum += i ; // 所以,只有当 i 除以 2 余数为 0 的时候,才能执行到这里
}
printf("%d\n", sum) ; // sum 是 0 ~ 9 当中,所有偶数的累加和
}
页:
[1]