学校举行校园歌曲演唱赛,共设7个评委,去掉一个最高分,去掉一个最低分,其余评 委的平均分即为选手的最终得分。试编程,输入7个评委的分数后,输出选手的最终得分。 (顶格输出,保留一位小数)
输入格式:
共1行,输入7个评委的分数。
输出格式:
输出文件只有1行,即为此选手的最终得分。
输入样例:
8 6 7.5 5 8.5 9 7
输出样例:
7.4
作者: 陈科
单位: 慈溪信息学学习中心
时间限制: 1000 ms
内存限制: 64 MB
代码长度限制: 16 KB
1 import java.util.Scanner; 2 public class Main { 3 public static void main(String[] args) { 4 Scanner sc=new Scanner(System.in); 5 float score[]=new float[7]; 6 score[0]=sc.nextFloat(); 7 float max=score[0],min=score[0],sum=score[0]; 8 for(int i=1;i<7;i++){ 9 score[i]=sc.nextFloat(); 10 if(min>score[i])min=score[i]; 11 if(max<score[i])max=score[i]; 12 sum+=score[i]; 13 } 14 sum-=min+max; 15 System.out.printf("%.1f",sum/5.0); 16 } 17 }
没难度。题目给的时间够用,不需要用输入输出流。这个题目用I/O流太麻烦,还需要split切割,中间空格还多。直接用sc.nextFloat()很方便,不需要研究空格问题,自动寻找下一个数值。
注意一下14 15行,最后取平均值是五个分数的平均值,不是七个分数的平均值。