中易网

C语言:一个班,五个学生,各五门课,计算每个学生的平均分 再求出每门课的最高分

答案:4  悬赏:70  
解决时间 2021-02-18 05:58
C语言:一个班,五个学生,各五门课,计算每个学生的平均分 再求出每门课的最高分
最佳答案
#include

int main()
{
int student[5][5];
int i,j;
int sum[5]={0,0,0,0,0};
int max[5]={0,0,0,0,0};
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
printf("请输入学生%d的课程%d的成绩:",i+1,j+1);
scanf("%d",&student[i][j]);
sum[i]+=student[i][j];
}
}
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
if(student[j][i]>max[i])
max[i]=student[j][i];
}
}
for(i=0;i<5;i++)
printf("学生%d平均分:%d\n",i+1,sum[i]/5);
for(i=0;i<5;i++)
printf("课程%d最高分:%d\n",i+1,max[i]);
}

自己刚写了个。。你是大一的吧?刚学C语言?这种简单的应该自己学着写你会发现写程序其实也不难的
全部回答
这题没有解法.
如果有具体的数就用每个学生的分数来除以5.
比如:小民五科加起来共五分.
就用5分来除以5=1(分) 以此类推.
#include
#include
struct student
{int num;
char name[20];
float score[3];
};
void average_print(student *);
void top_print(student *);
void top1_print(student *);
void top2_print(student *);
void top3_print(student *);
int main()
{ student stu[3],*p;
int i;
cout<<"请输入3个学生数据:"< for(i=0;i<3;++i)
{cin>>stu[i].num>>stu[i].name>>stu[i].score[0]>>stu[i].score[1]>>stu[i].score[2];
}
average_print(stu) ;
int z ;
do
{cout<<"请选择相应选项:"<cout<<"1:第一门课最高分数的信息"<cout<<"2:第二门课最高分数的信息"<cout<<"3:第三门课最高分数的信息"<cout<<"4:总分最高分数的信息"<cin>>z;
switch(z)
{ case 1:top_print(stu) ;break;
case 2:top1_print(stu) ;break;
case 3:top2_print(stu) ;break;
default:top3_print(stu) ;break;
}
}while(z!=0);
return 0;
}
void average_print(student p[])
{ float x=0,y=0,z=0;
int i;
for(i=0;i<3;++i)
{ x+=p[i].score[0];
y+=p[i].score[1];
z+=p[i].score[2];
}
cout<<"第一门课平均成绩"< cout<<"第二门课平均成绩"< cout<<"第三门课平均成绩"<}
void top_print(student point[])
{int i,z;
float j;
student temp ;
temp=point[0];
j=point[0].score[0];
for(i=1;i<3;++i)
{ if(j<=point[i].score[0] )
{j=point[i].score[0];
temp= point[i];}
}

cout<<"这门课最高分为:"<}
void top1_print(student point[])
{int i,z;
float j;
student temp ;
temp=point[0];
j=point[0].score[1];
for(i=1;i<3;++i)
{ if(j<=point[i].score[1] )
{j=point[i].score[1];
temp= point[i];}
}

cout<<"这门课最高分为:"<}
void top2_print(student point[])
{int i,z;
float j;
student temp ;
temp=point[0];
j=point[0].score[2];
for(i=1;i<3;++i)
{ if(j<=point[i].score[2] )
{j=point[i].score[2];
temp= point[i];}
}

cout<<"这门课最高分为:"<}
void top3_print(student point[])
{int i,z;
float j;
student temp ;
temp=point[0];
j=point[0].score[0]+point[0].score[1]+point[0].score[2];
for(i=1;i<3;++i)
{ if(j<=point[i].score[0]+point[i].score[1]+point[i].score[2])
{j=point[i].score[0]+point[i].score[1]+point[i].score[2];
temp= point[i];}
}

cout<<"这门课最高分为:"<}
#include "stdio.h"
main()
{ int i,j,a[5][5],t,k;
float sum,aver;
printf("enter the grade.\n");
for(i=0;i<5;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
for(i=0;i<5;i++)
{ sum=0; aver=0;
for(j=0;j<5;j++)
sum=a[i][j]+sum;
aver=sum/5;
printf("the %i aver grade is %f\n",i,aver); }
for(j=0;j<5;j++)
for(k=0;k<4;k++)
{ for(i=0;i<4-k;i++)
if(a[i+1][j] {t=a[i][j];
a[i][j]=a[i+1][j];
a[i+1][j]=t;
}
}
for(j=0;j<5;j++)
printf("the %d class top %d\n",j,a[4][j]);
getch();
}
3楼的说的有道理 我又写了一个 用的是冒泡法 给你看看思路 看得多的也就会写了
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
一个开始,对网球的认识,请你们多多指教!!
如何通过举办民间篮球赛来赚钱
asp.net mvc2中 areas(区域)中如何引用jQuery
大众外贸服饰在哪里啊,我有事要去这个地方
江苏高考选修等级与投档
请问子女入伍那年父亲因为给别人打架坐牢二年
祥创电脑公司在什么地方啊,我要过去处理事情
21岁的女孩,没发烧,但是老突然头晕,呕吐是
2003年有五十二个星期零二天对吗
电影《飞行者》讲个什么事?
7.5日是什么节日
融化是什么、意思!!
文化有益学习英语的 英语作文
家里的电路是交流还是直流?
坝可以换什么部首,组什么词?
推荐资讯
新浪微博进不去。。。。好几天了。。。就这个
耳机和耳塞如何煲机? ??
襄阳维臻医疗器械有限公司在什么地方啊,我要
莲子百合荸荠龙骨汤
为什么会怀念大学的宿舍生活
ASP.NET中Calendar控件默认显示当前的年份和
优选家生活超市地址有知道的么?有点事想过去
和男朋友分手好几天了
什么是信用卡预付款?
道路养护,您说的2万/(车道*公里),是
长江大学幼儿园地址在哪,我要去那里办事
看看这配置有什么不妥么?主板不懂随便找的给
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?