分数 15
作者 C课程组
单位 浙江大学
本题要求计算给定的一系列正整数中奇数的和。
输入格式:
输入在一行中给出一系列正整数,其间以空格分隔。当读到零或负整数时,表示输入结束,该数字不要处理。
输出格式:
在一行中输出正整数序列中奇数的和。
输入样例:
8 7 4 3 70 5 6 101 -1
输出样例:
116
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
// 定义数组并且初始化
// 读入数,判断为奇数时sum+=;
// 输出和
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char const *argv[])
{
int a[100];
int sum=0;
int i=0;
for(i=0;i<100;i++){
a[i]=1;//因为判断下面输入结束的标志是a[i]<=0,所以不能初始化为非正数
}
i=0;
scanf("%d",&a[i]);
for(i=0;a[i]>0;i++){
if(a[i]%2){
sum+=a[i];
}
scanf("%d",&a[i+1]);//这里应该是i+1的,因为如果是i的话下一次循环判断的是i++后的结果,也就是i+1,而a[i+1]是被初始化为1的外值,程序错误
}
printf("%d\n",sum);
system("pause");
return 0;
}
//怎么说呢,肯定能再简化一点的