C语言题:输入三个人,三科成绩,建立成绩管理系统,用数组,要求个人三科平均分和每科平均分形式:name num age sex English math chinese mean valuewang li 50201 19 m 78 78 78 78
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 17:53:05
C语言题:输入三个人,三科成绩,建立成绩管理系统,用数组,要求个人三科平均分和每科平均分形式:name num age sex English math chinese mean valuewang li 50201 19 m 78 78 78 78
C语言题:输入三个人,三科成绩,建立成绩管理系统,用数组,要求个人三科平均分和每科平均分
形式:
name num age sex English math chinese mean value
wang li 50201 19 m 78 78 78 78
C语言题:输入三个人,三科成绩,建立成绩管理系统,用数组,要求个人三科平均分和每科平均分形式:name num age sex English math chinese mean valuewang li 50201 19 m 78 78 78 78
struct student
{
\x05int num; // 存放学号,必须唯一
\x05char name[8]; //存放姓名
\x05int age; //存放年龄.
\x05int sex; //存放性别.0,1
int math; //存放数学成绩
int chinese;// 存放语文成绩
int english;// 存放英语成绩
float ave;// 存放平均成绩
}student[3];
void input(struct student *p,int n);//录入学生成绩
void print(struct student *p,int n);//输出学生成绩子函数
void average(struct student *p,int n);//求平均成绩
void avepercourse(struct student *p,int n); //求每科的平均成绩.
#include
#include
#include
#include
int main()
{
\x05struct student *p;
\x05p=student;
\x05input(p,3);
average(p,3);
\x05print(p,3);
printf("the average of per cource is:\n");
avepercourse(p,3);
getchar();
return 0;
}
void input(struct student *p,int n)
{
\x05int i;
\x05printf("input the information\n");
printf("name num age sex(0|1) english math chinese\n");
\x05for(i=0;iname,&(p+i)->num,&(p+i)->age,&(p+i)->sex,&(p+i)->english,&(p+i)->math,&(p+i)->chinese); //这里将name前的&去掉.
}
void print(struct student *p,int n)
{
\x05int i;
\x05printf("name num age sex english math chinese meanave\n");
\x05for(i=0;iname,(p+i)->num,(p+i)->age,(p+i)->sex,(p+i)->english,(p+i)->math,(p+i)->chinese,(p+i)->ave); //这里缺少d了.
\x05}
}
void average(struct student *p,int n) //修改一下.
{
\x05int sum,i;
\x05for(i=0;imath+(p+i)->chinese+(p+i)->english;
\x05\x05(p+i)->ave = sum/3.0;
\x05}
}
void avepercourse(struct student *p,int n)
{
int i;
int sum=0;
for(i =0;ienglish;
}
printf("english ave = %f\n",sum/3.0);
sum = 0;
for(i =0;imath;
}
printf("math ave = %f\n",sum/3.0);
sum =0;
for(i =0;ichinese;
}
printf("chinese ave = %f\n",sum/3.0);
}