解放教师家人的双手,用Java统计人数,并计算平均分!!!

用Java统计人数,并计算平均分

题目要求

输入一组学生成绩,统计各等级的人数,并计算平均分。

解题思路

  1. 先定义所需变量;
  2. 用while语句判断成绩是否输入有误;
  3. 再用switch语句判断成绩等级。

代码

package choice;

import java.util.Scanner;

public class Score {

	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		float score,sum=0,avg;
		int g1=0,g2=0,g3=0,g4=0,g5=0;
		while(sc.hasNextFloat()) {
			score=sc.nextFloat();
			while(score<0||score>100) {
				System.out.println("成绩输入错误!学生成绩应该在0~100之间。");
				System.out.println("请重新输入学生成绩:");
				score=sc.nextFloat();
			}
			sum=sum+score;
			switch((int)score/10) {
				case 10:
				case 9:g1++;break;//成绩优秀学生个数加1
				case 8:g2++;break;//成绩良好学生个数加1
				case 7:g3++;break;//成绩中等学生个数加1
				case 6:g4++;break;//成绩及格学生个数加1
				default :g5++;break;//成绩不及格学生个数加1
			}
		}
		avg=sum/(g1+g2+g3+g4+g5);
		System.out.println("学生总个数:"+(g1+g2+g3+g4+g5));
		System.out.println("平均分:"+avg);
		System.out.println("成绩优秀学生个数:"+g1);
		System.out.println("成绩良好学生个数:"+g2);
		System.out.println("成绩中等学生个数:"+g3);
		System.out.println("成绩及格学生个数:"+g4);
		System.out.println("成绩不及格学生个数:"+g5);
		}	
	}


运行结果


 

改进:

1.可以把成绩录入数据库,增加读取数据逻辑功能。

2.可以把成绩放在表格,增加表格数据转换为数据库数据,再执行改进1。

还有什么改进想法欢迎留言讨论。

猜你喜欢

转载自blog.csdn.net/tzydzj/article/details/111690728