输入一个正整数 repeat (0<repeat<10),做repeat 次下列运算:
读入一批正整数(以零或负数为结束标志),求其中的奇数和。
#include <stdio.h>
int main(){
int repeat,i;
scanf("%d",&repeat);
for(i = 0;i <repeat;i++)
{
int x,sum=0;
scanf("%d",&x);
while (x>0)
{
if(x %2 !=0)
sum +=x;
scanf("%d",&x);
printf("%d\n",sum);
}
return 0;
}
解题思路:
1、判断这个数是否为奇数用取模2是否为0来判断。
2、x一定要大于0才可以进行叠加,所以在不知道初始条件的情况下,不要用for循环,而要用while循环。由以上判断,x>0是条件。
3、注意:每一次循环结束要重新读取x,才可以进行下一轮的判断。