原题链接:[编程入门]结构体之成绩统计2
解题思路:
注意事项:
参考代码:
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
class student{
//学号、姓名、三科
String id;
String name;
int a;
int b;
int c;
}
public class 结构体之成绩记录 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
/*题目 1050: [编程入门]结构体之成绩记录
时间限制: 1Sec 内存限制: 128MB 提交: 9461 解决: 5387
题目描述
现有有N个学生的数据记录,每个记录包括学号、姓名、三科成绩。 编写一个函数input,用来输入一个学生的数据记录。
编写一个函数print,打印一个学生的数据记录。 在主函数调用这两个函数,读取N条记录输入,再按要求输出。 N<100*/
Scanner scanner=new Scanner(System.in);
int n=scanner.nextInt();
student [] stur=new student[n];
for (int i = 0; i < stur.length; i++) {
stur[i]=new student();
stur[i].id=scanner.next();
stur[i].name=scanner.next();
stur[i].a=scanner.nextInt();
stur[i].b=scanner.nextInt();
stur[i].c=scanner.nextInt();
}
//85 75 65
//1 blue 90 80 70
int a1=0,b2=0,c3=0;
for (student a : stur) {
a1+=a.a;
b2+=a.b;
c3+=a.c;
}
System.out.println(a1/n+" "+b2/n+" "+c3/n);
Arrays.sort(stur,new Comparator<student>() {
@Override
public int compare(student arg0, student arg1) {
// TODO Auto-generated method stub
return (arg0.a+arg0.b+arg0.c)/3>(arg1.a+arg1.b+arg1.c)/3?1:-1;
}
});
System.out.println(stur[n-1].id+" "+stur[n-1].name+" "+stur[n-1].a+" "+stur[n-1].b+" "+stur[n-1].c);
}
}0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复