参考方法:
//gcc version 7.4.0
#include
typedef struct
{
int number;
char name[20];
float Chinese,Math,English;
float avg;
}Student;
int main()
{
Student stu[5],*ptr=NULL;
ptr=stu;
FILE *file=NULL;
file=(FILE *)fopen("./stud","w");
printf("请输入五个学生的信息:顺序为学号,姓名,语,数,外\n例子:1 张三 80 92 78\n");
for(int i=0;i<5;i++)
{
scanf("%d %20s %f %f %f",&((ptr+i)->number),(ptr+i)->name,&((ptr+i)->Chinese),&((ptr+i)->Math),&((ptr+i)->English));
(ptr+i)->avg = ((ptr+i)->Chinese + (ptr+i)->Math + (ptr+i)->English)/3;
}
int result=fprintf(file,"学号\t%-20s\t语文\t数学\t英语\t平均成绩\n","姓名");
if(result<0)
{
printf("写入文件stud失败!\n");
return -1;
}
for(int i=0;i<5;i++)
{
result=fprintf(file,"%-3d\t%-20s\t%3.1f\t%3.1f\t%3.1f\t%3.1f\n",(ptr+i)->number,(ptr+i)->name,(ptr+i)->Chinese,(ptr+i)->Math,(ptr+i)->English,(ptr+i)->avg);
if(result<0)
{
printf("写入文件stud失败!\n");
return -1;
}
}
printf("写入文件stud成功!\n");
fclose(file);
return 0;
}
人水子月
人水子月
ysp***830@163.com2年前 (2019-08-20)