(java 练习题)已知每个学生这次成绩(0~100)范围内的整数 1.求平均、最高和最低成绩 2.统计考试成绩的分布率

(java 练习题)已知每个学生这次成绩(0~100)范围内的整数 1.求平均、最高和最低成绩 2.统计考试成绩的分布率,第1张

(java 练习题)已知每个学生这次成绩(0~100)范围内的整数 1.求平均、最高和最低成绩 2.统计考试成绩的分布率

1.获取成绩(键盘输入) 数组接收

2.数组排序 确定最大值和最小值

3.获取数组数据求平均值 

4.统计成绩分布

5.问题  判断成绩分部变量较多 求解决

public class Studentgrade_out {

    

     class studentgrade_in{       //学生成绩内部类
        int[] grede;
        public void grade(int number){      //接收成绩方法
            grede=new int[number];          //定义数组 给定长度
            Scanner scanner = new Scanner(System.in);//键盘输入成绩
            System.out.println("请输入"+number+"位学生成绩(百分制):");
            for (int i = 0; i grede[j+1]) {
                        
                        int temp =grede[j];
                        grede[j]=grede[j+1];
                        grede[j+1]=temp;
                    }
                }
            }
            //此时数组顺序从小到大排序,第一个数据是最小值,最后一个数据是最大值
            System.out.println("最小值是:"+grede[0]);
            System.out.println("最大值是:"+grede[grede.length-1]);
        }
        public  void sum(int number) {  //平均成绩
            int sum=0;          //number个数据相加总和
            for (int i = 0; i < number; i++) {
                sum+=grede[i];
            }
            //成绩总和/人数 平均成绩
            System.out.println("这次测试平均成绩是:"+sum/number);
        }
        public void stage(int number){      //统计考试成绩分布规律
            int l=0,j=0,k=0,g=0,f=0,d=0,q=0;    //定义变量记录每个分数段的人数

            for (int i = 0; i < number; i++) {  //遍历数组
                int a=grede[i];         //接收数组元素进行判断
                if (a < 60) {
                    l++;
                }else if (a>=60) {
                    d++;
                }
                if (a >=60&&a<70 ) {
                    k++;
                }else if (a >=70&&a<80) {
                    g++;
                }else if(a>=80&&a<90){
                    f++;
                }else if (a>=90&&a<=100){
                    q++;
                }
            }
            System.out.println("不及格人数有"+l+"个");
            System.out.println("及格人数有"+d+"个");
            System.out.println("60-70的人数有"+k+"个");
            System.out.println("70-80的人数有"+g+"个");
            System.out.println("80-90的人数有"+f+"个");
            System.out.println("90-100的人数有"+q+"个");
        }
    }

    
    public void get(int number){      //实例化内部类调用方法(内部类非静态;main方法不能直接调用)
         studentgrade_in si = new studentgrade_in();
        si.grade(number);
        si.judge(number);
        si.sum(number);
        si.stage(number);
     }
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请问有少位学生成绩输入:");
        int number = scanner.nextInt();
        
        Studentgrade_out so = new Studentgrade_out();   //实例化外部类
        so.get(number);     //调用get();方法
    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4689793.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-07
下一篇 2022-11-07

发表评论

登录后才能评论

评论列表(0条)

保存