为什么我的代码打印每个数字
Why is my code printing every number?
我编写了这段代码,它从用户那里读取 10 个整数,将它们存储在数组中,然后计算并打印平均值。它还应该打印数组中大于或等于平均值的数字。相反,我的代码打印出数组中的每个数字。我该如何解决这个问题?
此外,如果有人对如何简化此代码有任何提示,也将不胜感激。
#include <iostream>
using namespace std;
int main()
{
const int ENTER_NUM = 10;
int integer[ENTER_NUM];
cout << "Enter "<<ENTER_NUM<<" numbers: "<<endl;
cin >> integer[0];
cin >> integer[1];
cin >> integer[2];
cin >> integer[3];
cin >> integer[4];
cin >> integer[5];
cin >> integer[6];
cin >> integer[7];
cin >> integer[8];
cin >> integer[9];
int sum;
sum = integer[0]+integer[1]+integer[2]+integer[3]+integer[4]+integer[5]+integer[6]+integer[7]+integer[8]+integer[9];
int average;
average = sum/ENTER_NUM;
cout<<"Average is: "<<average<<endl;
for(int i=0; i<10; i++)
{
if (integer[i]>=average);
cout<<"Number in array greater than or equal to the average: "<<integer[i]<<endl;
}
return 0;
}
在循环中的if
之后有一个虚假;
。
当您始终在if
和类似的控制结构上使用{}
而不是依赖"一行异常"时,此错误不太可能发生。
if (integer[i]>=average);
末尾包含一个分号,从而消除了其控制其后面的打印语句的能力。打开编译器上的警告级别,您将收到有关此的消息
相关文章:
- 打印数字图案
- 将数字打印成文字
- 为什么有时我输入一个整数,程序将第一个输入的数字打印成十进制数?
- 必须首先打印向量 v1 中最接近整数 x 的数字<int>
- 首先按给定顺序打印所有数字,然后使用 Array 打印所有字符和其他符号
- 我的问题是关于C++中数字和序列的重复以及如何打印它们?
- 编译器始终打印十六进制/八进制数字
- 我想使用哈希图打印非重复的数字;
- 如何在控制台上打印出带有数字 0-99 的简单数组
- 错误含义;以二进制形式打印数字
- 为什么这个程序接受整数和字母数字输入并打印它们? C++ 中的 std::string 也采用整数值吗?
- 列中打印数字时如何避免打印垃圾?
- 如何编写一个程序来打印特定基数的前N个数字
- C++ 在地板函数之后以十六进制打印数字
- C 不将重复数字打印到输出
- 阿姆斯特朗数字打印错误
- 用数字打印所有可能的组合
- 将数字打印为字符串类型的数字
- 如何以特定格式将数字打印到字符串的中间
- 如何将矢量中的数字打印到文件中