有n个学生,每个学生的数据包括学号、姓名和3门课的成绩,用键盘输入n个学生的数据 5
有n个学生,每个学生的数据包括学号、姓名和3门课的成绩,用键盘输入n个学生的数据,要求打印出每个学生3门课的平均成绩,以及最高分的学生的数据(学号、姓名、3门课的成绩和平...
有n个学生,每个学生的数据包括学号、姓名和3门课的成绩,用键盘输入n个学生的数据,要求打印出每个学生3门课的平均成绩,以及最高分的学生的数据(学号、姓名、3门课的成绩和平均分数)
#include<stdio.h>
#define MAX 100
struct Student
{
char name[20];
int number;
int s[3];
int average;
};struct Student stu[MAX];
int main()
{
int n,i,j,m,max;
printf("请输入人数:");
scanf("%d",&n);
printf("请依次输入每个学生的姓名、学号、及三门课成绩:\n");
for(i=0;i<n;i++)
{
printf("请输入第%d人的数据:\n",i+1);
scanf("%s%d",stu[i].name,&stu[i].number);
for(j=0;j<3;j++)
scanf("%d",stu[i].s[j]);
printf("/n");
}
for(i=0;i<n;i++)
{
printf("%s%d",stu[i].name,stu[i].number);
for(j=0;j<3;j++)
printf("%d",stu[i].s[j]);
printf("\n");
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
max=stu[0].average=0;
for(i=0;i<n;i++)
if(stu[i].average>max)
{
max=stu[i].average;
m=i;
}
printf("平均分最高同学数据:\n");
printf("%s%d%d%d%d%d%d",stu[i].name,stu[i].number,stu[i].s[1],stu[i].s[2],stu[i].s[3],stu[i].average);
return 0;
}
大家看一下为什么我输入了第一个学生的数据之后,按回车没法输入接下来的呢? 展开
#include<stdio.h>
#define MAX 100
struct Student
{
char name[20];
int number;
int s[3];
int average;
};struct Student stu[MAX];
int main()
{
int n,i,j,m,max;
printf("请输入人数:");
scanf("%d",&n);
printf("请依次输入每个学生的姓名、学号、及三门课成绩:\n");
for(i=0;i<n;i++)
{
printf("请输入第%d人的数据:\n",i+1);
scanf("%s%d",stu[i].name,&stu[i].number);
for(j=0;j<3;j++)
scanf("%d",stu[i].s[j]);
printf("/n");
}
for(i=0;i<n;i++)
{
printf("%s%d",stu[i].name,stu[i].number);
for(j=0;j<3;j++)
printf("%d",stu[i].s[j]);
printf("\n");
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
max=stu[0].average=0;
for(i=0;i<n;i++)
if(stu[i].average>max)
{
max=stu[i].average;
m=i;
}
printf("平均分最高同学数据:\n");
printf("%s%d%d%d%d%d%d",stu[i].name,stu[i].number,stu[i].s[1],stu[i].s[2],stu[i].s[3],stu[i].average);
return 0;
}
大家看一下为什么我输入了第一个学生的数据之后,按回车没法输入接下来的呢? 展开
展开全部
已帮你改好
#include<stdio.h>
#define MAX 100
struct Student
{
char name[20];
int number;
int s[3];
int average;
};struct Student stu[MAX];
int main()
{
int n,i,j,m,max;
printf("请输入人数:");
scanf("%d",&n);
printf("请依次输入每个学生的姓名、学号、及三门课成绩:\n");
for(i=0;i<n;i++)
{
printf("请输入第%d人的数据:\n",i+1);
scanf("%s%d",stu[i].name,&stu[i].number);
for(j=0;j<3;j++)
scanf("%d",&stu[i].s[j]);//========================这里加个&
printf("/n");
}
for(i=0;i<n;i++)
{
printf("%s%d",stu[i].name,stu[i].number);
for(j=0;j<3;j++)
printf("%d",stu[i].s[j]);
printf("\n");
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
max=stu[0].average=0;
for(i=0;i<n;i++)
if(stu[i].average>max)
{
max=stu[i].average;
m=i;
}
printf("平均分最高同学数据:\n");
printf("%s%d%d%d%d%d%d",stu[i].name,stu[i].number,stu[i].s[1],stu[i].s[2],stu[i].s[3],stu[i].average);
return 0;
}
希望回答能帮到你,望采纳!
#include<stdio.h>
#define MAX 100
struct Student
{
char name[20];
int number;
int s[3];
int average;
};struct Student stu[MAX];
int main()
{
int n,i,j,m,max;
printf("请输入人数:");
scanf("%d",&n);
printf("请依次输入每个学生的姓名、学号、及三门课成绩:\n");
for(i=0;i<n;i++)
{
printf("请输入第%d人的数据:\n",i+1);
scanf("%s%d",stu[i].name,&stu[i].number);
for(j=0;j<3;j++)
scanf("%d",&stu[i].s[j]);//========================这里加个&
printf("/n");
}
for(i=0;i<n;i++)
{
printf("%s%d",stu[i].name,stu[i].number);
for(j=0;j<3;j++)
printf("%d",stu[i].s[j]);
printf("\n");
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
max=stu[0].average=0;
for(i=0;i<n;i++)
if(stu[i].average>max)
{
max=stu[i].average;
m=i;
}
printf("平均分最高同学数据:\n");
printf("%s%d%d%d%d%d%d",stu[i].name,stu[i].number,stu[i].s[1],stu[i].s[2],stu[i].s[3],stu[i].average);
return 0;
}
希望回答能帮到你,望采纳!
展开全部
#include<stdio.h>
#define MAX 100
struct Student
{
char name[20];
int num;
int score[3];
}boy1,boy2;
int main()
{
int n,i,x=0,y=0,z=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d%s%d%d%d",&boy1.num,&boy1.name,&boy1.score[0],&boy1.score[1],&boy1.score[2]);
if(boy1.score[0]+boy1.score[1]+boy1.score[2]>boy2.score[0]+boy2.score[1]+boy2.score[2]||i==1)
boy2=boy1;
x+=boy1.score[0];
y+=boy1.score[1];
z+=boy1.score[2];
}
printf("%d %d %d\n%d %s %d %d %d",x/n,y/n,z/n,boy2.num,boy2.name,boy2.score[0],boy2.score[1],boy2.score[2]);
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
#define MAX 100
struct Student
{
char name[20];
int number;
float s[3];
float average;
char c[20];
};struct Student stu[MAX];
int main()
{
int n,i,j,m,max;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s%s%d",stu[i].name,stu[i].c,&stu[i].number);
for(j=0;j<3;j++)
scanf("%f",&stu[i].s[j]);
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
for(i=0;i<n;i++)
{
printf("%s %.1f",stu[i].name,stu[i].average);
printf("\n");
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
max=stu[0].average=0;
for(i=0;i<n;i++)
if(stu[i].average>max)
{
max=stu[i].average;
m=i;
}
printf("%d %s %s %.1f %.1f %.1f %.1f\n",stu[m].number,stu[m].c,stu[m].name,stu[m].s[0],stu[m].s[1],stu[m].s[2],stu[m].average);
return 0;
}
#define MAX 100
struct Student
{
char name[20];
int number;
float s[3];
float average;
char c[20];
};struct Student stu[MAX];
int main()
{
int n,i,j,m,max;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s%s%d",stu[i].name,stu[i].c,&stu[i].number);
for(j=0;j<3;j++)
scanf("%f",&stu[i].s[j]);
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
for(i=0;i<n;i++)
{
printf("%s %.1f",stu[i].name,stu[i].average);
printf("\n");
}
for(i=0;i<n;i++)
{
stu[i].average=0;
for(j=0;j<3;j++)
stu[i].average+=stu[i].s[j];
stu[i].average=stu[i].average/3;
}
max=stu[0].average=0;
for(i=0;i<n;i++)
if(stu[i].average>max)
{
max=stu[i].average;
m=i;
}
printf("%d %s %s %.1f %.1f %.1f %.1f\n",stu[m].number,stu[m].c,stu[m].name,stu[m].s[0],stu[m].s[1],stu[m].s[2],stu[m].average);
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询