c++ - 奇数/偶数总数
问题描述
您好,我正在尝试仅显示输入数字的奇数/偶数数量。我尝试了多种方法,但未能找到任何解决方案。这就是问题所在,也是我目前所拥有的。
编写一个程序,允许用户输入 10 个单独的整数。从用户那里接受这 10 个数字后,程序应该向用户显示输出,告知他们输入的数字中有多少是奇数,有多少是偶数。
#include <iostream>
using namespace std;
int main() {
char even, odd;
int number;
for(int i = 1;i<=10;i++) {
cout << "Enter Number " << i << ":" ;
i=i+0;
cin >> number ;
}
if (number%2==0){
number = even;
}
cout<< "You entered:\n";
cout << "Odd Numbers: " << odd << endl;
cout << "Even Numbers: " << even << endl;
return 0;
}
解决方案
您的代码中有几处看起来不正确。
for(int i = 1; i <= 10; i++)
{
cout << "Enter Number " << i << ":";
i = i + 0;
cin >> number;
}
你希望用这条线完成i = i + 0
什么?没有它,您的循环将正常工作。
char even, odd;
从技术上讲,由于char
是数字类型,因此您可以通过跟踪偶数和奇数来跟踪它们的数量。但是,您没有这样做。
该声明:
if (number%2==0){
number = even;
}
是说如果输入number
是偶数,则将当前值分配给char even
to number
。但是,这没有意义,因为您之前从未存储过值even
。此外,您是在循环之外执行此操作,因此实际上只有读入的 10 个值中的最后一个number
会被计入您的计算中(如果您正确完成了该操作)。
你应该做什么:
int even = 0, odd = 0;
for(...)
{
// read input into "number"...
if(number % 2 == 0)
{
even++;
}
else
{
odd++;
}
}
推荐阅读
- javascript - 使用 javaScript 击键后更改 css Display 属性
- sql - SSRS 参数选择消失
- asp.net-core - 我们应该将密码存储在 ASP.NET Core MVC Web 应用程序的什么位置?
- javascript - 如何在一个单元测试中用 jest 模拟多个不同的数据库调用?
- sql - 特定列的所有值组合的频率
- typescript - 使用打字稿声明 vue 组件 @Prop 时出现意外标记
- java - Spring-data-elasticsearch vs elasticsearch RestHighLevelClient 客户端库
- r - 如何结合 sprintf(%s) 在 R 中合并正则表达式?
- sql - 在 postgresql 中无法检查表是否存在
- python - 遇到关于在 github rep 中导航代码的基本问题,因为单击函数引用不会突出显示它或显示定义