解题思路:
最关键的地方就是--保留两位小数
注意事项:
保留两位小数的方式
最简单的就是--printf("%.nlf",xx);---表示保留n位小数
setprecision(n)+fixed的方式---cout<<fixed<<setprecision(n)<<xx<<endl;
round函数是用来四舍五入的(得到一个整数),也可以间接的用来保留小数位数的四舍五入,但是不能完全满足保留几位小数的要求,
例如,原数2.3,只使用round,2.3*100=230/100=2.3,达不到保留两位小数的要求
但其实最简单的就是printf("%.nlf",xx),是带有四舍五入的保留小数位数;
参考代码:
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
int main()
{
  // 请在此输入您的代码
  int n;
  cin>>n;
  int score;
  int max=-1;
  int min=101;
  int summ=0;
  for(int i=1;i<=n;++i){
      cin>>score;
      if(score<min){
        min=score;
      }
      if(score>max){
          max=score;
      }
      summ+=score;
  }
  double sum=1.0*summ/n;
  cout<<max<<endl;
  cout<<min<<endl;
  cout<<fixed<<setprecision(2)<<round(sum*100)/100<<endl;    //这里会出现一个问题,假如sum是整数的话,起不到保留两位小数的作用
  return 0;
}0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复