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

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

已经调试过了,可以直接使用

#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();
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-06
学生信息从哪里得到呀,我按照我的理解写了一个,不知道符不符合你的要求。。。
#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);
}本回答被网友采纳
相似回答