public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生人数:");
int num = sc.nextInt();
int i,m,n;
List<Integer> list = new ArrayList<>();
String [] number=new String[num];
String [] names=new String[num];
int [] math=new int[num];
int [] English=new int[num];
int [] Java=new int[num];
int [] basic=new int[num];//创建 四科成绩的数组
int[] avg=new int[num];//10个人平均成绩存放组
//录入信息
System.out.println("请依次输入3个学生的学号:");
Scanner input=new Scanner(System.in);
for(i=0;i<num;i++) {
number[i]=input.next();
}
System.out.println("请依次输入3个学生的姓名:");
for(i=0;i<num;i++) {
names[i]=input.next();
}
System.out.println("请依次输入应用数学成绩:");
for(i=0;i<num;i++) {
math[i]=input.nextInt();
}System.out.println("请依次输入大学英语成绩:");
for(i=0;i<num;i++) {
English[i]=input.nextInt();
}System.out.println("请依次输入Java程序设计成绩:");
for(i=0;i<num;i++) {
Java[i]=input.nextInt();
}System.out.println("请依次输入计算机应用基础成绩:");
for(i=0;i<num;i++) {
basic[i]=input.nextInt();
}
for(i=0;i<num;i++) {
avg[i]=(math[i]+English[i]+Java[i]+basic[i])/4;
}//平均成绩,按名字顺序存储了
//为什么不执行最后一段啊啊啊啊啊啊啊啊啊啊啊!!!!孩子要疯了
for(m=0;m<num;m++){
for(n=0;n<num-1-m;n++){
if (avg[n]<avg[n+1]){
int temp = avg[n];
avg[n] = avg[n+1];
avg[n+1] = temp;//逐个比大小,小的往后推,实现降序成绩排列。
String temp2 =names[n];
names[n] = names[n+1];
names[n+1] = temp2;
}
}
}
}
}
学生成绩管理,为什么最后一段不执行也不报错?不报错我怎么改呀?求解怎么改呀
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- CSDN专家-sinJack 2021-06-11 18:48关注
不满足条件吧。而且你怎么知道没执行,你都没打印输出。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用