import java.util.Random; import java.util.Scanner; /* * 1.班级考试要进行分组,键盘录入该班级总共多少组,以及每组的学生数量, * 2.根据录入的组数及每组学员的数量创建二维数组 * 3.利用随机数产生0-100的成绩(包含0和100) * 4.要求: * (1)打印该班级中每组的不及格人数 * (2)打印该班级中每组的平均分 * (3)打印组的最高平均分 * (4)打印班级中的不及格人数 * (5)打印班级平均分 * (6)演示格式如下: * 请输入班级总组数:3 * 请输入班级中每组的人数:10 * 控制台输出: * 第1组不及格人数为: 6 人 * 第1组平均分为: 52 * 第2组不及格人数为: 7 人 * 第2组平均分为: 46 * 第3组不及格人数为: 3 人 * 第3组平均分为: 69 * 班级中单组最高平均分为:69 * 班级中不及格人数为: 16 人 * 班级总平均分为: 56 * */ public class Test02 { public static void main(String[] args) { Random r = new Random(); Scanner sc = new Scanner(System.in); System.out.println("请输入班级组数:"); int group_num = sc.nextInt(); System.out.println("请输入每组人数:"); int group_stu_num = sc.nextInt(); //定义班级数组 int[][] class_arr = new int[group_num][group_stu_num]; //获取全班成绩 for(int x=0; x<class_arr.length; x++) { for(int y=0; y<class_arr[x].length; y++) { class_arr[x][y] = r.nextInt(101); //默认获得整数类型成绩 } } System.out.println("--------------------------"); for(int x=0; x<class_arr.length; x++) { //遍历集合,获取实际成绩 for(int y=0; y<class_arr[x].length; y++){ System.out.print(class_arr[x][y] + " "); } System.out.println(); } System.out.println("--------------------------"); //计算不及格人数与总分 int count = 0; //每组不及格人数计算 int sum = 0; //每组总成绩计算 float avr = 0; //每组平均成绩计算 int class_count = 0; //全班不及格人数计算 int class_sum = 0; //全班总成绩计算 float class_avr = 0; //全班平均成绩计算 float max = 0; //每组最高平均分 for(int x=0; x<class_arr.length; x++) { for(int y=0; y<class_arr[x].length; y++){ sum += class_arr[x][y]; //计算每组的总成绩 if(class_arr[x][y] < 60) //计算每组的不及格人数 count++; } avr = (float)sum / group_stu_num; //计算每组平均分 System.out.print("第" + (x+1) + "组不及格人数为:" + count + " 人。"); System.out.println("\n第" + (x+1) + "组的平均分为:" + avr); if(max < avr) max = avr; //获取单组最高分 class_count += count; //计算班级总的不及格人数 class_sum += sum; //计算班级总成绩 count = 0; sum = 0; } System.out.println("--------------------------"); System.out.println("班级中单组最高平均分为:" + max);//计算班级平均分 class_avr = (float)class_sum / (group_num * group_stu_num); System.out.print("班级中不及格人数:" + class_count+ " 人。"); System.out.println("\n班级总平均分:" + class_avr); //疑问:float型输出怎么保留一位小数 } }
时间: 2024-12-26 14:39:22