Java實現對班級數據的輸入和統計


如題:

需求:保存全班的每個組的成績,並對成績做統計

  1. 從鍵盤輸入一共有幾組

  2. 從鍵盤輸入每一組分別有多少人

  3. 從鍵盤輸入每一個同學的成績

  4. 統計每一組的最高分、最低分

  5. 統計每一組的平均分

  6. 統計全班的最高分、最低分

  7. 統計全班的平均分

  8. 統計全班的總人數

 

 1 public class homework {
 2     public static void main(String[] args) {
 3         java.util.Scanner input=new java.util.Scanner(System.in);
 4         System.out.print("請輸入小組數:");
 5         int group_num=input.nextInt();//小組數
 6         int[] groups=new int[group_num];//存儲每組人數
 7         //第一次循環,輸入獲取每組人數
 8         for (int i = 0; i < group_num; i++) {
 9             System.out.print("請輸入第"+(i+1)+"組人數:");
10             int group_person_num=input.nextInt();//組內人數
11             groups[i]=group_person_num;
12         }
13         //存放每組的統計成績
14         double[] group_mean=new double[group_num];
15         double[] group_max=new double[group_num];
16         double[] group_min=new double[group_num];
17 
18         //第二次循環,對每組進行循環
19         for (int i = 0; i < group_num; i++) {
20             double[] scores=new double[groups[i]];
21             System.out.println("------------------------------");
22             //輸入獲取每組每位同學成績
23             for (int j = 0; j < groups[i]; j++) {
24 //                System.out.println("----------------------------------------");
25                 System.out.print("請輸入第"+(i+1)+"組第"+(j+1)+"位同學的成績:");
26 //                double[] scores=new double[groups[i]];
27                 scores[j]=input.nextDouble();
28             }
29             double max=scores[0];//用於存放組內最大值
30             double min=scores[0];
31             double mean=0;
32             //統計組內數據
33             for (int j = 0; j < groups[i]; j++) {
34                 if (max<scores[j]){
35                     max=scores[j];
36                 }
37                 group_max[i]=max;
38                 if (min>scores[j]){
39                     min=scores[j];
40                 }
41                 group_min[i]=min;
42                 mean+=scores[j];//求和
43             }
44             group_mean[i]=mean/groups[i];
45             System.out.println("------------------------------------");
46             System.out.println("第"+(i+1)+"組的最高分是:"+group_max[i]);
47             System.out.println("第"+(i+1)+"組的最低分是:"+group_min[i]);
48             System.out.println("第"+(i+1)+"組的平均分是:"+group_mean[i]);
49             System.out.println();
50         }
51         //總統計值初始化
52         double total_max=group_max[0];
53         double total_min=group_min[0];
54         double sum=0;
55         double total_mean=0;
56         int total_num=0;
57 
58         //統計班級總數據
59         for (int i = 0; i < group_num; i++) {
60             if(total_max<group_max[i])
61                 total_max=group_max[i];
62             if (total_min>group_min[i])
63                 total_min=group_min[i];
64             sum+=group_mean[i];
65             total_num+=groups[i];
66         }
67         total_mean=sum/group_num;
68         System.out.println("------------------------------------");
69         System.out.print("全班最高分:"+total_max);
70         System.out.println("全班最低分:"+total_min);
71         System.out.println("全班平均分:"+ total_mean);
72         System.out.println("全班總人數:" + total_num);
73         System.out.println();
74     }
75 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM