6.对学生成绩进行统计计算,参加考试的有6名学生,考试成绩分别为94.5,89.0,79.5,64.5,81.5,73.5,显示考试的总分和平均分,之后显示大于考试平均分的成绩信息。请写出实现上述功能

6.对学生成绩进行统计计算,参加考试的有6名学生,考试成绩分别为94.5,89.0,79.5,64.5,81.5,73.5,显示考试的总分和平均分,之后显示大于考试平均分的成绩信息。请写出实现上述功能的方法。


public class Sum {
	public static void main(String[] args) {
		System.out.println("计算本组成员的考试总分数");
		float a[] = { 94.5f, 89.0f, 79.5f, 64.5f, 81.5f, 73.5f };
		visitAllArray(a); // 遍历数组打印每一个元素
		float totalscore = calculate(a); // 计算数组数据数值的总和
		System.out.println("考试总分数:" + totalscore + "平均分:" + totalscore/ a.length);
		System.out.print("高于平均分的是:");
		visitAllArray(getHighScore(a)); // 方法getHighScore的作用是将大于考试平均分的成绩存入数组,作为返回值
	}
}

答:



public static float calculate(float a[]) {
		float sum = 0.0f;
		for (int i = 0; i < a.length; i++) {
			sum += a[i];
		}
		return sum;
	}// 计算数组数据数值的总和

	public static float[] getHighScore(float a[]) {
		int count = 0;
		float avgscore = calculate(a) / a.length;
		for (int i = 0; i < a.length; i++) {
			if (a[i] > avgscore) {
				count++;
			}
		}
		float b[] = new float[count];// 确定数组的长度为count的值
		count = 0;// count初始化为0
		for (int i = 0; i < a.length; i++) {// 筛选高于平均分的学生成绩到b数组
			if (a[i] > avgscore) {
				b[count] = a[i];
				count = count + 1;
			}
		}
		return b;
	}// 大于考试平均分的成绩存入数组,作为返回值

	public static void visitAllArray(float a[]) {// 遍历数组
		for (int i = 0; i < a.length; i++) {
			System.out.print(a[i] + " ");
		}// 循环打印数组
		System.out.println();
	}







public class Sum {
	public static float calculate(float a[]) {
		float sum = 0.0f;
		for (int i = 0; i < a.length; i++) {
			sum += a[i];
		}
		return sum;
	}// 计算数组数据数值的总和

	public static float[] getHighScore(float a[]) {
		int count = 0;
		float avgscore = calculate(a) / a.length;
		for (int i = 0; i < a.length; i++) {
			if (a[i] > avgscore) {
				count++;
			}
		}// for
		float b[] = new float[count];// 确定数组的长度为count的值
		count = 0;// count初始化为0
		for (int i = 0; i < a.length; i++) {// 筛选高于平均分的学生成绩到b数组
			if (a[i] > avgscore) {
				b[count] = a[i];
				count = count + 1;
			}
		}// for
		return b;
	}// 获取结束

	public static void visitAllArray(float a[]) {// 遍历数组
		for (int i = 0; i < a.length; i++) {
			System.out.print(a[i] + " ");
		}// 循环打印数组
		System.out.println();
	}// end_visitAllArray

	public static void main(String[] args) {
		System.out.println("计算本组成员的考试总分数");
		float a[] = { 94.5f, 89.0f, 79.5f, 64.5f, 81.5f, 73.5f };
		visitAllArray(a);
		float totalscore = calculate(a);
		System.out.println("考试总分数:" + totalscore + "平均分:" + totalscore
				/ a.length);
		System.out.print("高于平均分的是:");
		visitAllArray(getHighScore(a));
	}
}



  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值