基于用户大小的数组函数,如果值大于90,则输出一些内容
User sized based array function to print out something if there are values higher than 90
我设置了一个基于用户大小的数组来输入一些分数,并打印出最高分和最低值以及平均值。我还想使用boolen函数来打印出是否有任何a成绩(分数高于90),但是我不太确定如何编码。我在下面尝试了getAScores函数,但它不起作用。
#include <iostream>
using namespace std;
#include <iomanip>
#include <cstdlib>
int compare(const void* pa, const void* pb)
{
const int& a = *static_cast<const int*>(pa);
const int& b = *static_cast<const int*>(pb);
if (a < b) return -1; // negative if a<b
if (a > b) return 1; // positive if a>b
return 0; // 0 for tie
} // compare
double getAverage(int* score, int n)
{
int sum = 0;
int i = 0;
for (i = 0; i < n; i++)
sum += score[i];
double average = double(sum) / n;
return average;
} // getAverage
//Boolen Function to see if there are A grades present
bool getAGrades(int* score)
{
int i = 0;
if (score[i] >= 90){
return true;
cout << "there is at least one A"<<endl;
}else {
return false;
cout<<" No A Grades "<<endl;
}
}
int main()
{
int size;
cout << "How many scores? ";
cin >> size;
cin.ignore(1000, 10);
int* score = new int[size];
int i; // loop counter
for (i = 0; i < size; i++)
{
cout<< "Enter a number: ";
cin >> score[i];
cin.ignore(1000, 10);
} // for
qsort(score, size, sizeof(int), compare);
for (int i = 0; i < size; i++) {
cout << score[i] << ' ';
}
cout <<endl;
cout << "Lowest score = " << score[0] << endl;
cout << "Highest score = " << score[size-1] << endl;
cout << fixed << setprecision(1);
cout << "Average = " << getAverage(score, size) << endl;
//this is where i want it to print if there are a grades or not
getAGrades(score);
return 0;
} // main
您需要使用循环来查看所有索引(就像您在getAverage
中所做的那样)。这需要getAGrades
知道数组的大小。
另外,请注意,将cout
放在return
之后是没有意义的-它将永远不会被执行。
相关文章:
- 如果没有malloc,链表实现将失败
- 如果我只是不访问queue_front节点的子节点,而是将它们推到队列中呢?还是BFS吗
- std::map<struct,struct>::find 找不到匹配项,但是如果我循环通过 begin() 到 end(),我在那里看到匹配项
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 设计一个只能由特定类实例化的类(如果可能的话,通过make_unique)
- 大于65535的C++数组[size]引发不一致的溢出
- 线程,如果else语句,都是错误的上下文切换后,会发生什么
- 查找最接近的大于当前数字的数字的索引
- 如果变量数据包含大于 vector 所有元素的整数,则仅在视觉工作室上接收"矢量下标超出范围"?
- 如果用户输入的输入大于 char 数组,则 cin.getline 会跳过输入提醒
- 如果我尝试在 c++ 中将大于 pow(2,64)-1 的值分配给无符号长整型怎么办?
- 如果输入大于零,是否有一行用于从输入中减去 1
- 如果 INI 文件中的行长度大于 n C++,则跳过读取该行
- 如果第一个小数点大于或等于 5,如何对数字进行 +1
- 如果计数大于类型的宽度,则为右移未定义的行为
- 如果条目大于90,则输出字符串的布尔函数
- 基于用户大小的数组函数,如果值大于90,则输出一些内容
- 如果类型的大小大于X,如何实现接受类型并评估引用的类型特征
- 如果从文件中创建的地形大于128*128,则会产生堆栈溢出错误