#include <stdio.h>
#include <stdlib.h>
struct Person{
char arr[20];
char ch;
unsigned int age;
};
void personInput(struct Person * pPerson){
printf("请输入学生信息:请输入姓名:");
scanf("%s",&(pPerson->arr));
getchar();
printf("请输入性别:");
scanf("%c",&(pPerson->ch));
printf("请输入年龄:");
scanf("%u",&(pPerson->age));
}
void personOutput(struct Person * pPerson){
printf("学生的个人信息为:\n");
printf("Person: %s的个人信息为:\n",pPerson->arr);
printf("\t Name: %s\n", pPerson->arr);
printf("\t Sex : %c\n",pPerson->ch);
printf("\t Age : %u\n",pPerson->age);
}
struct Grade{
int math;
int english;
int language;
float average;
};
void gradeInput(struct Grade * pGrade){
printf("请输入数学成绩:");
scanf("%d",&(pGrade->math));
getchar();
printf("请输入英语成绩:");
scanf("%d",&(pGrade->english));
printf("请输入语文成绩:");
scanf("%d",&(pGrade->language));
}
void gradeOutput(struct Grade * pGrade){
printf("\t 数学: %d\n",pGrade->math);
printf("\t 英语: %d\n",pGrade->english);
printf("\t 语文: %d\n",pGrade->language);
printf("\t 平均: %.2f\n",(pGrade->math+pGrade->english+pGrade->language)/3.0);
printf("\n");
}
struct Student{
struct Person person;
long id;
struct Grade grade;
};
void studentInput(struct Student *pStudent)
{
personInput(&pStudent->person);
printf("请输入学号:");
scanf("%ld",&(pStudent->id));
gradeInput(&pStudent->grade);
}
void studentOutput(struct Student *pStudent){
personOutput(&pStudent->person);
printf("\t 学号: %ld\n",pStudent->id);
gradeOutput(&pStudent->grade);
}
int main()
{
struct Student stu1,stu2;
void studentInput(struct Student *pStudent);
void studentOutput(struct Student *pStudent);
studentInput(&stu1);
studentInput(&stu2);
if(stu1.grade.average>stu2.grade.average)
printf("%s 比 %s 平均成绩低\n",stu2.person.arr,stu1.person.arr);
else
printf("%s 比 %s 平均成绩低\n",stu1.person.arr,stu2.person.arr);
printf("\n");
studentOutput(&stu1);
studentOutput(&stu2);
printf("So Easy!");
return 0;
}