最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

Java学生成绩处理

IT圈 admin 3浏览 0评论

Java学生成绩处理

学生成绩处理

一、要求:

1、输入若干个学生成绩,形成一个成绩数组,数量自己定。
2、统计成绩的最高分和最低分以及平均分
3、统计成绩的每个分数段所占比例。(不及格,中等,良好和优秀)
4、计算该班级成绩的方差。(方差为每个成绩减去平均分的差的平方之和)

二、代码实现:

package book2;import java.text.NumberFormat;
import java.util.Arrays;
import java.util.Scanner;public class Test01 {public static void main(String[] args) {double[] arrResult = new double[6];getResult(arrResult);//  最小数getMax(arrResult);//  最大数getMin(arrResult);//  平均数getAverage(arrResult);//  方差getVariance(arrResult);// 成绩分段占比getGrade(arrResult);//        System.out.println("平均成绩为:" + getAverage(arrResult));
//        System.out.println("方差为:" + getVariance(arrResult));
//        System.out.println("最小成绩为:" + getMin(arrResult));}//  输入成绩public static void getResult(double[] arrGrade) {Scanner sc = new Scanner(System.in);for (int i = 0; i < arrGrade.length; i++) {int flage = i + 1;System.out.println("请输入第" + flage + "个成绩:");double input = sc.nextDouble();arrGrade[i] = input;}System.out.println("所有成绩为:" + Arrays.toString(arrGrade));}//  求最大数public static double getMax(double[] reMax) {double max = reMax[0];for (int i = 0; i < reMax.length; i++) {if (reMax[i] > max) {max = reMax[i];}}System.out.println("最大成绩为:" + max);return max;}//  求最小数public static double getMin(double[] reMin) {double min = reMin[0];for (int i = 0; i < reMin.length; i++) {if (reMin[i] < min) {min = reMin[i];}}System.out.println("最小成绩为:" + min);return min;}//  求平均数public static double getAverage(double[] arrResult) {double avernum = 0;for (int i = 0; i < arrResult.length; i++) {avernum += arrResult[i] / arrResult.length;}System.out.println("平均成绩为:" + avernum);return avernum;}//  求方差public static double getVariance(double[] result) {double var = 0;double aver = getAverage(result);for (int i = 0; i < result.length; i++) {var += (result[i] - aver) * (result[i] - aver) / result.length;}System.out.println("方差为:" + var);return var;}//  成绩分段占比public static void getGrade(double[] result) {double excellent = 0;double good = 0;double pass = 0;double fail = 0;for (int i = 0; i < result.length; i++) {if (result[i] < 60) {fail++;} else if (result[i] <= 70) {pass++;} else if (result[i] <= 80) {good++;} else {excellent++;}}//  创建百分数对象NumberFormat f = NumberFormat.getPercentInstance();//  保留两位小数f.setMaximumFractionDigits(2);double e = excellent / result.length;double g = good / result.length;double p = pass / result.length;double fa = fail / result.length;System.out.println("优秀占比为:" + f.format(e));System.out.println("良好占比为:" + f.format(g));System.out.println("及格占比为:" + f.format(p));System.out.println("不及格占比为:" + f.format(fa));}
}

三、运行结果:

Java学生成绩处理

学生成绩处理

一、要求:

1、输入若干个学生成绩,形成一个成绩数组,数量自己定。
2、统计成绩的最高分和最低分以及平均分
3、统计成绩的每个分数段所占比例。(不及格,中等,良好和优秀)
4、计算该班级成绩的方差。(方差为每个成绩减去平均分的差的平方之和)

二、代码实现:

package book2;import java.text.NumberFormat;
import java.util.Arrays;
import java.util.Scanner;public class Test01 {public static void main(String[] args) {double[] arrResult = new double[6];getResult(arrResult);//  最小数getMax(arrResult);//  最大数getMin(arrResult);//  平均数getAverage(arrResult);//  方差getVariance(arrResult);// 成绩分段占比getGrade(arrResult);//        System.out.println("平均成绩为:" + getAverage(arrResult));
//        System.out.println("方差为:" + getVariance(arrResult));
//        System.out.println("最小成绩为:" + getMin(arrResult));}//  输入成绩public static void getResult(double[] arrGrade) {Scanner sc = new Scanner(System.in);for (int i = 0; i < arrGrade.length; i++) {int flage = i + 1;System.out.println("请输入第" + flage + "个成绩:");double input = sc.nextDouble();arrGrade[i] = input;}System.out.println("所有成绩为:" + Arrays.toString(arrGrade));}//  求最大数public static double getMax(double[] reMax) {double max = reMax[0];for (int i = 0; i < reMax.length; i++) {if (reMax[i] > max) {max = reMax[i];}}System.out.println("最大成绩为:" + max);return max;}//  求最小数public static double getMin(double[] reMin) {double min = reMin[0];for (int i = 0; i < reMin.length; i++) {if (reMin[i] < min) {min = reMin[i];}}System.out.println("最小成绩为:" + min);return min;}//  求平均数public static double getAverage(double[] arrResult) {double avernum = 0;for (int i = 0; i < arrResult.length; i++) {avernum += arrResult[i] / arrResult.length;}System.out.println("平均成绩为:" + avernum);return avernum;}//  求方差public static double getVariance(double[] result) {double var = 0;double aver = getAverage(result);for (int i = 0; i < result.length; i++) {var += (result[i] - aver) * (result[i] - aver) / result.length;}System.out.println("方差为:" + var);return var;}//  成绩分段占比public static void getGrade(double[] result) {double excellent = 0;double good = 0;double pass = 0;double fail = 0;for (int i = 0; i < result.length; i++) {if (result[i] < 60) {fail++;} else if (result[i] <= 70) {pass++;} else if (result[i] <= 80) {good++;} else {excellent++;}}//  创建百分数对象NumberFormat f = NumberFormat.getPercentInstance();//  保留两位小数f.setMaximumFractionDigits(2);double e = excellent / result.length;double g = good / result.length;double p = pass / result.length;double fa = fail / result.length;System.out.println("优秀占比为:" + f.format(e));System.out.println("良好占比为:" + f.format(g));System.out.println("及格占比为:" + f.format(p));System.out.println("不及格占比为:" + f.format(fa));}
}

三、运行结果:

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论