问题背景:从键盘输入某班学生某门课程的成绩,(假设每班人数最多不超过40人,具体人数从键盘输入),试编程计算其平均分。
在这里插入图片描述

#include<stdio.h>
#define N 40
int average(int score[],int n);/*ave()函数原型*/
void readscore(int score[],int n);/*readscore函数原型*/
int main()
{	int score[N],aver,n;/**/
	printf("输入n:");
	scanf("%d",&n);
	readscore(score,n);/*数组名作为函数实参调用函数readscore()*/
	aver=average(score,n);/*数组名作为函数实参调用average()*/
	printf("平均分是:%d\n",aver);
	return 0;
 } 
 /*函数功能:计算n个学生的平均分*/
 int average(int score[],int n) /*average()函数的定义*/
 {	int i,sum=0;
 	for(i=0;i<n;i++)
 	{sum+=score[i];
	 }
	 /*return sum/n;这里为了防止发生除0错误,做如下修改*/
	 return n>0?sum/n:-1; 
  } 
/*函数功能:计算n个学生的某门课程的成绩*/
void readscore(int score[],int n)
{	int i;
	printf("输入成绩:");
	for(i=0;i<n;i++)
	{	scanf("%d",&score[i]);
	 } 
 } 
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐