Java学生成绩

 1 import java.util.*;
 2 
 3 public class guanlixiton {
 4 
 5     public static void main(String[] args) {
 6         Scanner in = new Scanner(System.in);
 7         System.out.println("请输入学生的人数:");
 8         int person = in.nextInt(); // 存储学生的人数
 9         System.out.println("请输入课程数目:");
10         int courseNum = in.nextInt(); // 存储课程的数目
11         String[] name = new String[person]; // 声明一个String数组name存储学生的姓名
12         String[] course = new String[courseNum]; // 声明一个String数组course存储课程的名称
13         int[][] number = new int[person][courseNum];
14         int[] sum = new int[person];// 声明sum数组来存储总分
15         int[] arg = new int[person];// 声明arg数组来存储平均分
16         String[] str = new String[person];
17         /*
18          * 用来循环存储课程的名称
19          */
20         for (int i = 0; i < course.length; i++) {
21             System.out.println("请定义第" + (i + 1) + "课程的名字:");
22             course[i] = in.next();
23         }
24         /*
25          * 用来录入学生各科的成绩
26          */
27         for (int i = 0; i < person; i++) {
28             int s = 0;
29             System.out.println("请输入第" + (i + 1) + "个同学的名字:");
30             name[i] = in.next();
31             String str11 = "";
32             for (int j = 0; j < courseNum; j++) {
33                 System.out.println("请输入" + name[i] + "的" + course[j] + "成绩");
34                 number[i][j] = in.nextInt();
35                 s += number[i][j];
36                 str11 += number[i][j] + "\t";
37             }
38             sum[i] = s;// 求出这同学的总分存入总分sum数组
39             arg[i] = s / courseNum;// 求出这同学的平均分存入平均分arg数组
40             str[i] = name[i] + "\t" + str11 + sum[i] + "\t" + arg[i]; 

        // 整合每行成一个字符串存入字符串数组str 41 } 42 for (int i = 0; i < sum.length - 1; i++) { 43 for (int j = 0; j < sum.length - 1; j++) { 44 if (sum[j] < sum[j + 1]) { 45 int t1 = sum[j]; 46 String t2 = str[j]; 47 sum[j] = sum[j + 1]; 48 str[j] = str[j + 1]; 49 sum[j + 1] = t1; 50 str[j + 1] = t2; 51 } 52 } 53 } 54 /* 55 * 效果输出 56 */ 57 System.out.print("学生"); 58 for (int i = 0; i < course.length; i++) { 59 System.out.print("\t" + course[i]); 60 } 61 System.out.println("\t总分\t平均分\t排行榜"); 62 for (int i = 0; i < person; i++) { 63 System.out.println(str[i] + "\t第" + (i + 1) + "名"); 64 } 65 } 66 67 }
原文地址:https://www.cnblogs.com/longc/p/5914374.html