int i; int sum=0; for (i=1;i<100;i++) {

int i; int sum=0; for (i=1;i<100;i++) { if(i%2==1) { sum=sum+i; } } printf("1到100的奇数和是 %d\n",sum); 请问这个 if(i%2==1) 取余数的语句不是因该==0才对吗?为什么会是1呢?

求余运算是求i÷2的余数
==0是求偶数和的情况
==1相当于i=2k+1,即i此时是奇数
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-05-13
奇数取余= 1啊 没错吧追答

等0就是取偶数合了

第2个回答  2014-05-13
这个应该是求1到100中的奇数的和吧追问

是啊

追答

这那是取余数,

对了的,就是取级数和

输出语句都是说了的,不是求余数

追问

一个数除2,余数为0 才对不是吗?为什么会是1呢

追答

你小学数学没毕业吧

这是求余运算符,不是除号

追问

我知道了,呵呵

追答

这学的啥C语言