青年歌手大奖赛_评委会打分 题解

青年歌手大奖赛中,评委会给参赛选手打分。选手得分规则为去掉一个最高分和一个最低分,然后计算平均得分,请编程输出某选手的得分。

Input输入数据有多组,每组占一行,每行的第一个数是n(2<n<=100),表示评委的人数,然后是n个评委的打分。

Output对于每组输入数据,输出选手的得分,结果保留2位小数,每组输出占一行。Sample Input

3 99 98 97
4 100 99 98 97

Sample Output

98.00
98.50

1.熟悉 sort 函数的用法;

2.在最后的输出中,scanf是要配printf,不然会精度丢失。

用c++处理保留小数位数以及循环输入多组数据的方法;

摘自CSDN:

 

  1. #include <iostream>
  2. #include <iomanip>
  3. using namespace std;
  4. int main()
  5. {
  6. int n = 141;
  7. //1) 分别以十六进制、十进制、八进制先后输出 n
  8. cout << "1)" << hex << n << " " << dec << n << " " << oct << n << endl;
  9. double x = 1234567.89, y = 12.34567;
  10. //2)保留5位有效数字
  11. cout << "2)" << setprecision(5) << x << " " << y << " " << endl;
  12. //3)保留小数点后面5位
  13. cout << "3)" << fixed << setprecision(5) << x << " " << y << endl;
  14. //4)科学计数法输出,且保留小数点后面5位
  15. cout << "4)" << scientific << setprecision(5) << x << " " << y << endl;
  16. //5)非负数显示正号,输出宽度为12字符,宽度不足则用 * 填补
  17. cout << "5)" << showpos << fixed << setw(12) << setfill('*') << 12.1 << endl;
  18. //6)非负数不显示正号,输出宽度为12字符,宽度不足则右边用填充字符填充
  19. cout << "6)" << noshowpos << setw(12) << left << 12.1 << endl;
  20. //7)输出宽度为 12 字符,宽度不足则左边用填充字符填充
  21. cout << "7)" << setw(12) << right << 12.1 << endl;
  22. //8)宽度不足时,负号和数值分列左右,中间用填充字符填充
  23. cout << "8)" << setw(12) << internal << -12.1 << endl;
  24. cout << "9)" << 12.1 << endl;
  25. return 0;
  26. }

 

posted on 2020-02-10 13:53  YovM_21  阅读(543)  评论(0编辑  收藏  举报

导航