欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

统计学生成绩 C语言

程序员文章站 2024-01-16 10:56:46
...
/*
功能:统计学生成绩*/
#include<stdio.h>
void calculation(int n);
int main()
{
	int n;//上限控制数
	scanf("%d", &n);
	calculation(n);//函数调用
	return 0;
}
void calculation(int n)
{
	int i;//循环变量
	int grade;//成绩
	int suma = 0;//等级统计初始化
	int sumb = 0;//
	int sumc = 0;//
	int sumd = 0;//
	int sume = 0;//
	double average = 0;//平均值初始化
	int sum = 0;//和初始化
	//对数据进行读取
	for (i = 0; i < n; i++)
	{
		scanf("%d", &grade);
		sum = sum + grade;//求和
		switch (grade / 10)
		{
		case 10:
		case 9:suma++; break;//等级A和
		case 8:sumb++; break;//等级B和
		case 7:sumc++; break;//等级C和
		case 6:sumd++; break;//等级D和
		default:sume++; break;//等级E和
		}
	}
	average = sum / n;//求平均值
	printf("countA=%d\n", suma);
	printf("countB=%d\n", sumb);
	printf("countC=%d\n", sumc);
	printf("countD=%d\n", sumd);
	printf("countE=%d\n", sume);
	printf("average=%.2lf\n", average);
}

之前写代码的时候,switch语句写在循环外面去了,导致程序错误,程序是自上而下的,所以他只会去判断最后的一个grade,其实这个程序还可以优化,但是我现在作业居多。暂时不弄了。还有就是输入格式高错了。通过调试时发现了问题,太喜欢vs了,如果有朋友问我用哪款编辑器时,我一定会骄傲的说我用的是vs2019社区版本,哈哈。要学会与时俱进,不要一直使用vc,我很吐槽老师用vc的。

相关标签: c语言程序设计