求奇数和
本题要求计算给定的一系列正整数中奇数的和。
输入格式:
输入在一行中给出一系列正整数,其间以空格分隔。当读到零或负整数时,表示输入结束,该数字不要处理。
输出格式:
在一行中输出正整数序列中奇数的和。
输入样例:
8 7 4 3 70 5 6 101 -1
输出样例:
116
Code:
#include<iostream>
using namespace std;
void info(int n, int &sum) //第一个参数为形参,第二个是引用
{
if(n % 2 == 1) { //判断是否为奇数
sum += n;
}
/* 也可以使用位运算这种方式判断是否为奇数
if(n & 1 == 1) {
sum += n;
}
*/
}
int main()
{
int n, sum = 0;
while(true) {
cin >> n;
if(n <= 0) { //如果输入为0或负数,输入结束,跳出循环。
break;
}
info(n, sum); //调用函数
}
cout << sum << endl; //输出结果
return 0;
}