C语言结构体编程题,求大神!

使用结构体表示某班学生的基本信息(姓名,学号,籍贯,C语言考试成绩),编程输出全班学生的信息并计算“C语言”考试平均成绩。

第1个回答  2020-02-22
已经调试过了,可以直接使用
#include<stdio.h>
#define
N
3
//学生的数目
typedef
struct
{
char
num[20];
char
name[20];
char
area[20];
float
score;
}
student;
student
stu[N];
float
average
=
0;
void
input()
{
int
i,j;
printf("请输入%d个学生的成绩\n",N);
for(i=0;i<N;i++)
{
printf("学号:");
scanf("%s",&stu[i].num);
printf("姓名:");
scanf("%s",&stu[i].name);
printf("籍贯:");
scanf("%s",&stu[i].area);
printf("C语言的成绩:\n");
scanf("%f",&stu[i].score);
}
}
void
output()
{
int
i,j;
printf("学生的信息如下:\n");
for(i=0;i<N;i++)
{
printf("学号:%s\n",stu[i].num);
printf("姓名:%s\n",stu[i].name);
printf("籍贯:%s\n",stu[i].area);
printf("成绩:%f\n",stu[i].score);
}
printf("平均分:%f\n",average);
}
void
calucate()
{
int
i;
float
total;
for(i=0;i<N;i++)
{
total
=
total
+
stu[i].score;
}
average
=
total/N;
}
int
main()
{
char
a[100]={0};
input();
calucate();
output();
}
第2个回答  2020-05-07
学生信息从哪里得到呀,我按照我的理解写了一个,不知道符不符合你的要求。。。
#include
<stdio.h>
struct
stu
{
char
name[10];
int
stunum;
char
native[10];
int
score;
};
void
main
()
{
int
i,sum=0,average,num;
struct
stu
class1[]={"a",1,"china",100,
"b",2,"china",100,
"c",3,"china",100,
};
num=sizeof(class1)/sizeof(struct
stu);
for
(i=0;i<num;i++)
{
printf("name:%s,
number:%d,
native:%s,
C
score:%d\n",class1[i].name,class1[i].stunum,class1[i].native,class1[i].score);
sum+=class1[i].score;
}
average=sum/num;
printf("average
score
is
%d",average);
}
相似回答