C语言学习笔记—数组与函数的综合应用:学生成绩管理

  • Post author:
  • Post category:其他


利用数组和函数的知识编写一个程序:输入十个学生的成绩,计算出最高分最低分和平均分并输出。

#include <stdio.h>
#include <stdlib.h>

void intArry(int scores[i],int cnt)
{
	int i;
    for(i = 0;i<cnt;i++)
    {
		printf("请输入第%d个学生的成绩:\n",i+1);
        scanf("%d",scores);
        if(scores[i]>100||scores[i]<0)
        {
			printf("输入错误,退出程序!\n");
            system("pause");
            exit(-1);
        }
    }
}
void printfArry(int scores,int cnt)
{
	int i;
    for(i = 0;i<cnt;i++)
    {
		printf("第%d个学生的成绩为:%d\n",i+1,scores[i]);
    }
}
int getMax(int scores[],int cnt)
{
	int i;
    int max = scores[0];
    for(i=0;i<cnt;i++)
    {
			if(max<scores[i])
            {
				max = scores[i];
            }
    }
    return max;
}
int getMin(int int scores[],int cnt)
{
	int i;
    int min = *scores;
    for(i=0;i<cnt;i++)
    {
			if(min>*scores)
            {
				min = scores[i];
            }
    }

    return min;
}
float getAverage(int scores[],int cnt)
{
	int i;
    int sum = 0;
    float avg;
    for(i=0;i<cnt;i++)
    {
			sum = sum + scores[i];
    }
    avg = sum / (float)cnt;
    return avg;
}
void printfRet(int max,int min,float avg)
{
	printf("最大成绩为:%d\n",max);
    printf("最小成绩为:%d\n",min);
    printf("平均成绩为:%.2f\n",avg);
}
int main()
{
		//1.定义
        int scores[10];//成绩总数
        int len;//数组元素个数
        int max;//最高分
        int min;//最低分
        float avg;//平均分
        len = sizeof(scores)/sizeof(scores[0]);
        //2.初始化数组
        intArry(scores,len);
        //3.输出数组
        printfArry(scores,len);
        //4.计算最高分和最低分
        max = getMax(scores,len);
        min = getMin(scores,len);
        //5.计算平均分
        avg = getAverage(scores,len);
        //6.输出结果
        printfRet(max,min,avg);
	system("pause");
	return 0;
}



版权声明:本文为O2_H2O原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。