如题,利用文件IO和C语言标准库完成,不能使用标准IO。
没有思路,提供思路也可以,请讲的通俗易懂一点,谢谢!
liunx环境下用C语言并利用文件IO实现学生管理系统;一个学生一个文件,文件名称为学号.data
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 浪客 2022-09-16 11:58关注
大概这样子,保存和读取。 #include <stdio.h> #include <string.h> typedef struct stu { int id; char name[10]; } Stu; void save(Stu *s, int len) { char filename[100] = {0}; for (int i = 0; i < len; i++) { sprintf(filename, "%d.data", s[i].id); FILE *fp = fopen(filename, "w"); if (fp) { fwrite(&s[i], sizeof(s[i]), 1, fp); fclose(fp); } } } void read(Stu *stu, int id) { char filename[100] = {0}; sprintf(filename, "%d.data", id); FILE *fp = fopen(filename, "r"); if (fp) { fread(stu, sizeof(*stu), 1, fp); fclose(fp); } } void print(Stu *s) { if (s) printf("%-10d%s\n", s->id, s->name); } int main() { Stu stu[3] = {{1001, "aaa"}, {1002, "bbb"}, {1003, "ccc"}}; save(stu, 3); Stu s; read(&s, 1002); print(&s); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 服务端控制goose报文控制块的发布问题
- ¥15 学习指导与未来导向啊
- ¥15 求多普勒频移瞬时表达式
- ¥15 如果要做一个老年人平板有哪些需求
- ¥15 k8s生产配置推荐配置及部署方案
- ¥15 matlab提取运动物体的坐标
- ¥15 人大金仓下载,有人知道怎么解决吗
- ¥15 一个小问题,本人刚入门,哪位可以help
- ¥30 python安卓开发
- ¥15 使用R语言GD包一直不出结果