这个文件包含程序启动时读取文件内的学生成绩信息,
和需要保存时或者退出时向文件保存学生成绩信息的操作。
#include <stdlib.h> #include <stdio.h> #include "students.h" #define FILE_NAME "students" void save_student(STU *stu_head) { STU *node = stu_head; FILE *fp; fp = fopen(FILE_NAME, "w+"); while(node){ fprintf(fp, "%ld %s %0.1f %0.1f %0.1f %0.1lf %0.1fn", node->ID, node->name, node->chinese, node->math, node->english, node->all_sub, node->average); node=node->next; } fclose(fp); printf("保存成功!按任意键返回。n"); getch(); } STU *init_student(STU *stu_head) { STU *node = stu_head; STU *head = stu_head; STU *new_node; int i; FILE *fp; char name[10]; int num; ASK_STU(new_node); new_node->next=NULL; fp = fopen(FILE_NAME, "r+"); rewind(fp); while((i = fscanf(fp, "%ld%s%f%f%f%lf%fn", &new_node->ID, new_node->name, &new_node->chinese, &new_node->math, &new_node->english, &new_node->all_sub, &new_node->average)) == 7){ if(!head) head = node = new_node; else{ while(node->next) node = node->next; node->next = new_node; } ASK_STU(new_node); new_node->next = NULL; } fclose(fp); return head; }
四、总结
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/482080.html