C语言 有10个学生,每个学生数据包括学号,姓名,3门课的成绩,从键盘上输入10个学生的数据,要求打印出3 10

C语言有10个学生,每个学生数据包括学号,姓名,3门课的成绩,从键盘上输入10个学生的数据,要求打印出3门课的平均成绩... C语言 有10个学生,每个学生数据包括学号,姓名,3门课的成绩,从键盘上输入10个学生的数据,要求打印出3门课的平均成绩 展开
 我来答
308601324
2010-12-24
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
有10个学生,每个学生的数据包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印出3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课的成绩、平均分数)。
要求:用input函数输入10个学生数据;用average函数求总平均分;用max函数找出最高分的学生数据;总平均分和最高分学生的数据都在主函数中输出。
程序如下:
#define N 10
struct student
{
char num[6] ;
char name[10] ;
int score[3] ;
float avr;
}stu[N];
void main()
{
int i,I=0,j,max=0,maxi=0,sum;
float average=0; //定义变量average
for(i=0; i<N;i++) //I控制学生数
{
printf("\n Input scores of student %d:\n",I+1);//标明第几个学生
printf("NO.:");
scanf("%s",stu[i].num); //为学生输入学号
printf("name:");
scanf("%s",stu[i].name); //输入学生的名字
for(j=0;j<3;j++)
{
printf("score %d:",j+1);
scanf("%d", &stu[i].score[j]); //输入第i个学生的三科成绩
}
I++;
}
for(i=0;i<N;i++)
{
sum=0;
for(j=0;j<3;j++)
sum+=stu[i].score[j]; //将第i个学生的三科成绩相加
stu[i].avr=sum/3.0; //求出第i个学生三科的平均成绩
average+=stu[i].avr;//将i个学生的平均成绩相加
if(sum>max)
{
max=sum; //求出i个学生的总分最高分
maxi=i; //记录第几个学生总分值高
}
}
average/=N;//求出N个学生的总平均分
printf(" NO. name score1 score2 score3 avr\n");//提示输出某个学生名字及其各科成绩和平均分
for(i=0;i<N;i++)//控制学生数
{
printf("%5s%10s",stu[i].num, stu[i].name);//输出第i个学生的学号和名字
for(j=0;j<3;j++)//控制科目
printf("%9d",stu[i].score[j]);//分别输出第i个学生的各科成绩
printf("%8.2f\n",stu[i].avr);//输出第i个学生的各科平均分,保留两位小数
}
printf("average=%6.2f\n",average);//输出N个学生的总平均分
printf("The highest score is: %s score total: %d分\n",stu[maxi].name,max);//输出总分最高的学生的相关数据
}
满地枫树叶
2010-12-20 · TA获得超过214个赞
知道答主
回答量:62
采纳率:0%
帮助的人:81.7万
展开全部
#include(stdio.h)
main()
{struct student
{long number;
char name[20];
float score[4];
}person[10];
int i;
printf("请输入10名学生的学号、姓名、及三门成绩:");
for(i=0;i<10;i++)
scanf("%d,%s,%d,%d,%d",&person[i]->number,person[i]->name,&person->score[0],&person->score[1],&person->score[2]);
for(i=0,i<10;i++)
person->score[3]=(person->score[0]+person->score[1]+person->score[2])/3;
printf("10名同学的情况如下:\n");
for(i=0;i<10;i++)
printf("学号:%d 姓名:%s 成绩:%d %d %d 平均成绩:%d\n",person[i]->number,person[i]->name[20],person->score[0],person->score[1],person->score[2],person->score[3]);
}
我写了一下,没在电脑上运行,你看看对不对。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
linzhihao886
2010-12-19 · 超过12用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:26万
展开全部
自食其力....我前几天才..好不容易弄出一个..书上应该有的...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
07534335
2010-12-20 · TA获得超过194个赞
知道答主
回答量:66
采纳率:0%
帮助的人:87.5万
展开全部
我刚做好一个、明天早上给你发呀、、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式