题目描述
输入n科成绩(浮点数表示),统计其中的最高分,最低分以及平均分。
输入描述:
两行,
第1行,正整数n(1≤n≤100)
第2行,n科成绩(范围0.0~100.0),用空格分隔。
输出描述:
输出一行,三个浮点数,分别表示,最高分,最低分以及平均分(小数点后保留2位),用空格分隔。
解题思路
用一个数组存放成绩,然后通过比较找出最大最小值。
代码
#include<iostream> #include<iomanip> //C++中浮点数保留小数点的有文件要有此文件 using namespace std; int main() { int num; cin>>num; float a[num+1];//数组容量设置的大些,防止索引越界 float sum=0; float max=0,min=100;//首先初始化max和min for(int i=0;i<num;++i) { cin>>a[i]; sum+=a[i]; if(max<a[i]) max=a[i];//比较,将大值赋给max if(min>a[i]) min=a[i];//将小值赋给min } cout<<fixed<<setprecision(2)<<max<<" " <<fixed<<setprecision(2)<<min<<" " <<fixed<<setprecision(2)<<(sum/num)<<endl;//通过setprecision设置精度 return 0; }