代码:
#include <iostream> #include <sstream> #include <fstream> #include <string> int main() { int num[100]; int odd = 0, even = 0; std::string str; getline(std::cin, str); std::stringstream s(str); int j = 0; while(getline(s, str, ',')) { //考虑了字符串中有非数字的情况(不考虑貌似也对了) int count = 0; for (int i = 0; i < str.size(); i++) { if(str[0] == '-') { neg = true; } if (str[i] >= '0' && str[i] <= '9') { count++; } } if (count != str.size() && !neg) { continue; } if( neg && count != str.size() - 1 ) { neg = false; continue; } num[j] = atoi(str.c_str()); if (num[j] % 2 == 0) { even += num[j]; j++; } else { odd += num[j]; j++; } } std::cout<<odd <<","<< even; }