#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int n = 0;
struct student{
int num;
char name[20];
char sex[10];
int age;
float score[2];
float sum;
float average;
};
int InputAndOutput(struct student *stu)
{
int i = 0;
for(i=0; i<n; i++)
{
printf("请输入第 %d 个学生的信息: \n",i+1);
printf("姓名: ");
scanf("%s", stu[i].name);
printf("性别: ");
scanf("%s",stu[i].sex);
printf("依次输入其他信息,格式为: 学号,年龄,成绩1,成绩2 \n");
scanf("%d,%d,%f,%f", &(stu[i].num),&(stu[i].age),&(stu[i].score[0]),&(stu[i].score[1]));
stu[i].sum = stu[i].score[0] + stu[i].score[1];
stu[i].average = (float)stu[i].sum / 2;
}
printf("学生信息统计完毕: \n");
for(i=0; i<n; i++)
{
printf("姓名: %s, 性别: %s, 学号: %d, 年龄: %d, 成绩1: %.2f, 成绩2: %.2f, 总分: %.2f, 平均分: %.2f \n",
stu[i].name,stu[i].sex,stu[i].num,stu[i].age,stu[i].score[0],stu[i].score[1], stu[i].sum, stu[i].average);
}
return 0;
}
int main()
{
printf("请输入学生的人数: \n");
scanf("%d",&n);
struct student *students;
int size = n*sizeof(struct student);
students = (struct student *)malloc(size);
memset(students, 0, size);
InputAndOutput(students);
printf("\n");
return 0;
}