从键盘输入n名学生数据,转存到磁盘文件,然后回显

来源:互联网 发布:华润儿童漆怎么样知乎 编辑:程序博客网 时间:2024/05/18 00:01

最近一个同学要我跟她写这个程序 ,我自己写的不咋地,权当看看得了

#include<stdio.h>#include<conio.h>typedef struct{int Num;char Name[32];float Score[3];float Average;}STD_T;void AddStuInfo();int main(){char ch;do{AddStuInfo();printf("录入下一个学生成绩?(y/n) ");ch = getch();}while(ch == 'y');FILE* file=fopen("student.txt","r");    char a;    while((a=fgetc(file))!=EOF)    {        printf("%c",a);    }}void AddStuInfo(){static int AddNum = 1;STD_T std;FILE *fp;printf("\n=============录入学生%d的成绩========================\n",AddNum);printf("输入学生%d的学号:",AddNum);scanf("%d",&std.Num);printf("输入学生%d的姓名:",AddNum);scanf("%s",&std.Name);printf("依次输入学生%d的三门课成绩(用空格间隔):",AddNum);scanf("%f%f%f",&std.Score[0],&std.Score[1],&std.Score[2]);std.Average=(std.Score[0]+std.Score[1]+std.Score[2])/3.0 ;printf("=====================================================\n");fp = fopen("student.txt","a");fprintf(fp,"==========学生%d成绩=========\n",AddNum);fprintf(fp,"学号:%d\n",std.Num);fprintf(fp,"姓名:%s\n",std.Name);fprintf(fp,"第一门成绩:%.2f\n",std.Score[0]);fprintf(fp,"第二门成绩:%.2f\n",std.Score[1]);fprintf(fp,"第三门成绩:%.2f\n",std.Score[2]);fprintf(fp,"三门课的平均成绩:%.2f\n",std.Average);fclose(fp);fclose(fp);AddNum++;}

结果

阅读全文
1 0
原创粉丝点击