【2014华为机试题】02.求出数组中所有奇数之和以及所有偶数之和
求出数组中所有奇数之和以及所有偶数之和
描述:
输入一个整型数组,分别求出数组中所有奇数之和以及所有偶数之和。
运行时间限制:
60 Sec
内存限制:
256 MByte
输入:
一行字符串:
(1)字符串长度不超过1024字节;
(2)输入数组中元素的个数不超过100个;
(3)输入的数组元素用逗号(",")进行分隔;
(4)输入的奇数和偶数大小不超过10000;
输出:
奇数之和和偶数之和,逗号(",")进行分隔
样例输入:
1,2,3,4,5
样例输出:
9,6
#include<stdio.h>#include<string.h>#define N 1024#define M 100int main(void){ char str[N]; int a[M]={0}; int i=0; int j=0;int oddsum=0;int evensum=0; int sign=1;gets(str); while(str[i]!='\0') { if(str[i]!=',') { if(str[i] == '-') { sign=-1; } else if(str[i]!='\0') { a[j]=a[j]*10 + str[i]-'0'; } } i++; if(str[i]==',' || str[i]=='\0') { a[j]=a[j]*sign; sign=1; j++; } }for(i=0;i<j;i++){if(0 == a[i]%2)evensum+=a[i];elseoddsum+=a[i];}printf("%d,%d\n",oddsum,evensum); return 0;}