(C语言练习)假设某实验小组的5名学生,C语言模考成绩已给定(要求学生从外部键盘输入),现要求对其降序输出,并统计低于平均分的学生人数,并输出最高分和最低分。

Posted 赛罗丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(C语言练习)假设某实验小组的5名学生,C语言模考成绩已给定(要求学生从外部键盘输入),现要求对其降序输出,并统计低于平均分的学生人数,并输出最高分和最低分。相关的知识,希望对你有一定的参考价值。

(C语言练习)假设某实验小组的5名学生,C语言模考成绩已给定(要求学生从外部键盘输入),现要求对其降序输出,并统计低于平均分的学生人数,并输出最高分和最低分。

一.代码

#include <iostream>
#include<malloc.h>
int main()

	int * p;  //定义指针变量
	int a;
	float avg=0; //平均成绩
	float sum = 0;
	int count=0; //定义低于平均成绩的人数
	int i, j, t;
	int len;  //定义实验小组学生变量
	printf("请输入这个实验小组的学生数量\\n");
	scanf_s("%d", &len);
	printf("这五位学生的考试成绩分别是:\\n");
	//通过malloc函数分配内存空间
	p = (int *)malloc(5 * 5);
	for (a = 0; a < len; a++)
	
		scanf_s("%d", &p[a]);
		sum = sum + p[a];     //计算这5个人的总分数
	
	printf("这五名学生的总成绩是:%0.2f\\n", sum);
	//计算这5个人的平均分数
	avg = sum / 5;
	printf("这五名学生的平均分是:%0.2f\\n", avg);
	
	
	//通过冒泡排序给学生成绩进行降序操作
	for (i = 0; i < len - 1; i++)
	
		for (j = 0; j < len - 1 - i; j++)
		
			if (p[j] < p[j + 1])
			
				t = p[j];
				p[j] = p[j + 1];
				p[j + 1] = t;
			
		
	
	printf("这五位学生通过降序排后的成绩是:\\n");
	for (int k = 0; k < len; k++)
	
		printf("%d\\t", p[k]);
		printf("\\n");
		//判断低于平均分数的条件
		if (p[k] < avg)
		
			count++;    //如果低于平均分 记录一次
			
		
	
	
	printf("低于平均成绩的人数是:%d\\n", count);

	//因为已经降序输出了,所以第1个学生成绩是分数最高的
	printf("这五个学生中最高成绩是:%d\\n", p[0]);

	//同理,最后一个输出的学生成绩是分数最低的
	printf("这五个学生中最低成绩是:%d\\n", p[len-1]);


	return 0;


二.输出结果

**请输入这个实验小组的学生数量
5
这五位学生的考试成绩分别是:
80
90
70
50
60
这五名学生的总成绩是:350.00
这五名学生的平均分是:70.00
这五位学生通过降序排后的成绩是:
90
80
70
60
50
低于平均成绩的人数是:2
这五个学生中最高成绩是:90
这五个学生中最低成绩是:50**

以上是关于(C语言练习)假设某实验小组的5名学生,C语言模考成绩已给定(要求学生从外部键盘输入),现要求对其降序输出,并统计低于平均分的学生人数,并输出最高分和最低分。的主要内容,如果未能解决你的问题,请参考以下文章

(C语言练习)假设某实验小组的5名学生,C语言模考成绩已给定(要求学生从外部键盘输入),现要求对其降序输出,并统计低于平均分的学生人数,并输出最高分和最低分。

C语言练习题8

C语言 输入两名学生的四科成绩,并输出每名学生的平均成绩

c语言:写一个函数建立一个有3名学生数据的单向动态链表

C语言求平均年龄 求高手帮忙 班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄

1. 内容:学生成绩管理程序 一班有20名学生,一学期有5门课程,编写程序实现如下功能: (1) 录入每名学生