学生成绩单制作 (1)定义一个结构体数组,存放10个学生的学号,姓名,三门课的成绩。

(2)从键盘输入10个学生的以上内容(3)输出单门课成绩最高的学生的学号,姓名。以及该门课程的成绩(4)输出三门课程的平均分数从最高到低进行排序,输出结果格式如下numb... (2)从键盘输入10个学生的以上内容
(3)输出单门课成绩最高的学生的学号,姓名。以及该门课程的成绩
(4)输出三门课程的平均分数从最高到低进行排序,输出结果格式如下
number name math chinese english average
103 tom 90 90 100 95 101 alice 90 80 70 80
展开
 我来答
1254212205
2011-05-31 · TA获得超过1386个赞
知道小有建树答主
回答量:244
采纳率:0%
帮助的人:364万
展开全部
#include<stdio.h>
struct person
{int num,m,c,e;
float ave;
char name[20];
}man[2];
main()
{int i,j,maxm,maxc,maxe,a=0,b=0,c=0;
float t;
for(i=0;i<2;i++)
{scanf("%d,%d,%d,%d\n",&man[i].num,&man[i].m,&man[i].c,&man[i].e);
scanf("%s",&man[i].name);
man[i].ave=(man[i].m+man[i].c+man[i].e)/3.0;}
maxm=man[0].m,maxc=man[0].c,maxe=man[0].e;
for(i=0;i<10;i++)
if(maxm<man[i].m)
a=i;
if(maxc<man[i].c)
b=i;
if(maxe<man[i].e)
c=i;
printf("number name math\n");
printf("%-10d%-6s%8d\n",man[a].num,man[a].name,man[a].m);
printf("number name chinese\n");
printf("%-10d%-6s%6d\n",man[b].num,man[b].name,man[b].c);
printf("number name english\n");
printf("%-10d%-6s%6d\n",man[c].num,man[c].name,man[c].e);
for(i=0;i<1;i++)
for(j=i+1;j<2;j++)
if(man[i].ave<man[j].ave)
{t=man[i].ave;
man[i].ave=man[j].ave;
man[j].ave=t;}
printf("number name math chinese english average\n");
for(i=0;i<2;i++)
printf("%-10d%-6s%10d%6d%10d%15f\n",man[i].num,man[i].name,man[i].m,man[i].c,man[i].e,man[i].ave);
}
数学教辅资料
2011-05-31 · TA获得超过2877个赞
知道答主
回答量:83
采纳率:0%
帮助的人:30.8万
展开全部
#difine N 10
type struct{
int Number;
char name;
float math;
float chinese;
float rnglish;
} student[N];
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式