请各位C语言高手帮帮忙,我将所有分数送上!!!

请选择合适的排序算法设计一个程序进行学生成绩管理。假设对某个班级的学生的5门课程的学习成绩进行管理。要求:①求每门课程的平均成绩。②输出每门课程成绩优秀的学生名单及成绩。... 请选择合适的排序算法设计一个程序进行学生成绩管理。假设对某个班级的学生的5门课程的学习成绩进行管理。
要求:①求每门课程的平均成绩。②输出每门课程成绩优秀的学生名单及成绩。③输出只要有1门课程不及格的学生名单及其每门成绩。④对5门课程中可以指定某一门课程进行排序。
展开
 我来答
仲鸿运0J8f02
2010-12-31 · TA获得超过154个赞
知道答主
回答量:15
采纳率:0%
帮助的人:8.5万
展开全部
#include<stdio.h>
#define stud 30
#define course 3
int input(long num[],int score[][course]);
void total(int score[][course],long num[],int sum[],float aver[],char c[],int n);
void print(long num[],int score[][course],int sum[],float aver[],char c[],int n);

void main()
{
int n,score[stud][course],sum[stud];
long num[stud];
float aver[stud];
char c[stud];
n=input(num,score);
total(score,num,sum,aver,c,n);
print(num,score,sum,aver,c,n);
}

int input(long num[],int score[][course])
{
int i,j,n;
printf("请输入学生总数n(n<=30):");
scanf("%d",&n);
printf("请输入学生学号及各科成绩:MT EN PH/n");
for(i=0;i<=n;i++)
{
scanf("%d",num[i]);
for(j=0;j<course;j++)
{
scanf("%d",score[i][j]);
}
}
return n;
}

void total(int score[][course],long num[],int sum[],float aver[],char c[],int n)
{
int i,j;
for(i=0;i<n;i++)
{
sum[i]=0;
for(j=0;j<course;j++)
{
sum[i]=sum[i]+score[i][j];
}
aver[i]=(float)sum[i]/course;
if((score[i][0]>=90)&&(score[i][1]>=90)&&(score[i][2]>=90))
{
c[i]='Y';
}
else
{
c[i]='N';
}
}
}

void print(long num[],int score[][course],int sum[],float aver[],char c[],int n)
{
int i,j;
printf("Result:/n");
printf("NO./t MT/t EN/t PH/t SUM/t AVER/t >90/n");
for(i=0;i<n;i++)
{
printf("%4ld/t",sum[i]);
for(j=0;j<course;j++)
{
printf("%4d/t",score[i][j]);
}
printf("%5d/t%6.1f/t%c/n",sum[i],aver[i],c[i]);
}
}

参考资料: sername_normal

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式