写一个叫做 GroupMarks.java 的程序。老师可以输入每个学生的分数,然后总分、平均分、最高和最低分都会显示出来。程序一开始要问老师一组有多少个学生。每组只有有3、4或者5个人。如果老师输入了无效的数字,程序会一直出现,直到老师输入有效的数字。
当有效数字被输入后,老师会被要求输入每个学生的分数(只能是整数)。分数必须是0到10。如果分数输入无效,程序会一直出现直到有效数字被输入。只有当一个输入是有效的,程序才会问下一个学生的分数。
写道
public static void main(String[] args){
System.out.print("请问一组有多少个学生?");
Scanner inpt = new Scanner(System.in);
int stuno = inpt.nextInt();
while (true) {
if(stuno < 6 && stuno > 2){
System.out.print("输入的人数有效!");
Integer[] sturs = new Integer[stuno];
for (int i = 0; i < stuno; i++) {
System.out.print("\r\n请输入第" + (i+1) +"个学生成绩,请记住,采取10分制");
sturs[i] = inpt.nextInt();
if(sturs[i]>10){
System.out.println("你怎么能这样呢?说了,1到10分,不能偏心");
i--;
continue;
}
}
int sums = sum(sturs);
//sums / sturs.length
System.out.println("总分数是:" + sums);
System.out.println("平均分是:" + sums / (double)sturs.length);
System.out.println("最高分是:" + Collections.max(Arrays.asList(sturs)));
System.out.println("最低分是:" + Collections.min(Arrays.asList(sturs)));
break;
}else {
System.out.println("输入错误,请重新输入,请记住只能分为3人组、4人组、5人组:");
stuno = inpt.nextInt();
continue;
}
}
}
/**
* 计算成绩总和
* @param sturs
* @return
*/
public static int sum(Integer...sturs) {
if(sturs.length <= 0 ){return 0;}
System.out.println("我仔细算算啊,好难哦。这"+sturs.length+"个学生成绩是……");
int sums = 0;
for (int j : sturs) {
sums+=j;
}
return sums;
}
System.out.print("请问一组有多少个学生?");
Scanner inpt = new Scanner(System.in);
int stuno = inpt.nextInt();
while (true) {
if(stuno < 6 && stuno > 2){
System.out.print("输入的人数有效!");
Integer[] sturs = new Integer[stuno];
for (int i = 0; i < stuno; i++) {
System.out.print("\r\n请输入第" + (i+1) +"个学生成绩,请记住,采取10分制");
sturs[i] = inpt.nextInt();
if(sturs[i]>10){
System.out.println("你怎么能这样呢?说了,1到10分,不能偏心");
i--;
continue;
}
}
int sums = sum(sturs);
//sums / sturs.length
System.out.println("总分数是:" + sums);
System.out.println("平均分是:" + sums / (double)sturs.length);
System.out.println("最高分是:" + Collections.max(Arrays.asList(sturs)));
System.out.println("最低分是:" + Collections.min(Arrays.asList(sturs)));
break;
}else {
System.out.println("输入错误,请重新输入,请记住只能分为3人组、4人组、5人组:");
stuno = inpt.nextInt();
continue;
}
}
}
/**
* 计算成绩总和
* @param sturs
* @return
*/
public static int sum(Integer...sturs) {
if(sturs.length <= 0 ){return 0;}
System.out.println("我仔细算算啊,好难哦。这"+sturs.length+"个学生成绩是……");
int sums = 0;
for (int j : sturs) {
sums+=j;
}
return sums;
}