使用【c++】写【输入在一行中给出的一系列正整数,耽读到零或负整数时,表示输入结束,该数字不做处理。输出格式:在一行中输出正整数序列中奇数的和】的代码
时间: 2024-09-25 09:16:23 浏览: 38
计算整数各位数字之和 C++中如何计算任何一个正整数的各位数字之和
当然可以。在C++中,你可以使用`std::cin`从标准输入读取数字,并检查每个输入是否为正整数。如果遇到零或负数,就跳过它。以下是实现这个功能的一种方法:
```cpp
#include <iostream>
int main() {
int sum = 0; // 初始化奇数和为0
bool isPositive = true;
while (true) {
std::cout << "请输入一个正整数(或输入0结束输入):";
int num;
if (!(std::cin >> num)) { // 如果无法读取有效整数,假设用户输入了非数字字符
break; // 跳出循环
}
// 检查是否为正整数
if (num <= 0)
continue; // 如果是零或负数,直接跳过
// 如果是奇数,累加到总和
if (num % 2 == 1) {
sum += num;
}
isPositive = false; // 输入了一个偶数,设置标志位为false
}
if (isPositive) {
std::cout << "正整数序列中的奇数和为:" << sum << std::endl;
} else {
std::cout << "未找到正整数,所以没有奇数和。" << std::endl;
}
return 0;
}
```
阅读全文