C语言里的部分句子 if(i%2) { i++; continue; }是什么意思?求高手指教。

如题所述

if(i%2) //如果i除以2 的余数 的值为真 即如果i不能被2整除,也就说如果i是奇数进入if后面的语句
{
i++; //i = i+1;
continue; //进入下一个循环
}
举个例子
你想如果i=4
i%2是等于0的
那么if后面括号里的值就是0,即为假。
那么i++这里就不会执行程序会跳过if语句追问

完整程序
do
{
if(i%2) //如果i能被2整除(即偶数)
{
i++; //i = i+1;
continue; //进入下一个循环
}
i++;//将选出来的奇数再加1
s+=i;//将选出来的i累加
}while(i<7);//循环
printf("%d\n",s);//输出s
我这说的对不对,后面的。。这s结果是多少?谢了。

追答

不对刚好相反
do
{
if(i%2) //如果i除以2的值不为0(即奇数)
{
i++; //i = i+1;
continue; //进入下一个循环
}
i++;//将选出来的偶数再加1
s+=i;//将选出来的i累加
}while(i<7);//循环
printf("%d\n",s);//输出s

你要知道一个概念
if(条件)
{
做事;
}

当条件为真的时候才做事,假就不做事
0是假,非0才是真

s的结果我没办法告诉你因为我不知道你i的初始值是多少
还有s的初始值是多少

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-30
找到不能被2整除的i值
相似回答