2022年C语言学生成绩信息管理系统C语言 .pdf

上传人:Che****ry 文档编号:27262369 上传时间:2022-07-23 格式:PDF 页数:8 大小:48.33KB
返回 下载 相关 举报
2022年C语言学生成绩信息管理系统C语言 .pdf_第1页
第1页 / 共8页
2022年C语言学生成绩信息管理系统C语言 .pdf_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《2022年C语言学生成绩信息管理系统C语言 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言学生成绩信息管理系统C语言 .pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、/last #include #include #include #include #define HEADER1 -STUDENT-n #define HEADER2 | number | name | sex |n #define HEADER3 |-|-|-|n #define FORMAT 姓名 :%-6sn 性别 :%-6sn 学号 :%-6snn #define END -n #define DATA temp.Name,temp.Num,temp.Sex typedef struct _Student char Name12; char Sex4; char Num20; Stu

2、dent; void Menu(FILE *); void LuRu(FILE *); void SeekStudent(FILE *); void QingKong(FILE *); void JiaMi(char *, int); void JieMi(char *, int); void Delete(FILE *); void UpDate(FILE *); void JudgeFP(FILE *); int FileSize(FILE *); void DisPlay(FILE *fp); int main( ) FILE *fp; int choice; fp = fopen(st

3、udent.txt,ab+);JudgeFP(fp); fp = fopen(student.txt,rb+);JudgeFP(fp); if(fp = NULL) printf(ERROR!n); exit(0); while(1) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - system(cls); Menu(fp); scanf(%d,&choice); switch(choice) case 0:break; cas

4、e 1:LuRu(fp);break; case 2:SeekStudent(fp);break; case 3:QingKong(fp);break; case 4:Delete(fp);break; case 5:UpDate(fp);break; case 6:DisPlay(fp);break; default :printf( 输入错误 n); if(choice = 0)break; printf( 任意键返回主菜单);getch(); fflush(stdin); fclose(fp); return 0; void LuRu(FILE *fp)/ 录入 Student temp

5、; char ch; do printf( 姓名 :); scanf(%s,temp.Name); printf( 性别 :); scanf(%s,temp.Sex); printf( 编号 :); scanf(%s,temp.Num); fseek(fp, 0L, SEEK_END); /JiaMi(char *)&temp, sizeof(Student); fwrite(&temp, sizeof(Student), 1, fp); printf( 任意键继续录入0 跳出 n); fflush(stdin); while(ch = getch() != 0); 名师资料总结 - - -精

6、品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - - - - - void QingKong(FILE *fp)/ 清空数据 if(fp = fopen(student.txt,wb) = NULL) printf(ERROR!n); return ; printf( 数据已清空 n); void SeekStudent(FILE *fp)/ 查询 Student temp; char in20; int i = 0, j; printf( 输入姓名或者学号查询:n);

7、scanf(%s,in); rewind(fp); for(j=0;jFileSize(fp);j+) while(!feof(fp) fseek(fp, j*sizeof(Student), SEEK_SET); fread(&temp, sizeof(Student), 1, fp);break; /JieMi(char *)&temp, sizeof(Student); if(strcmp(in,temp.Name) = 0 | strcmp(in,temp.Num) = 0) printf(FORMAT,DATA); i = 1; if(i = 0) printf( 没找到 n); v

8、oid Delete(FILE *fp)/ 删除 Student temp, del; Student blank = 0,0,0; char in20; int mycount = 0, i = 0, j; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - if(FileSize(fp) = 0) printf( 无记录可删 n); return; if(FileSize(fp) = 1) QingKong(fp); print

9、f( 删除成功 n); return; printf( 输入要删除的学号或者姓名:); scanf(%s, in); fseek(fp, (FileSize(fp)-1) * sizeof(Student), SEEK_SET); fread(&temp, sizeof(Student), 1, fp); rewind(fp); for(j=0;jFileSize(fp);j+) while(!feof(fp) fseek(fp, j*sizeof(Student), SEEK_SET); fread(&del, sizeof(Student), 1, fp); mycount+;break;

10、 if(strcmp(in,del.Num) = 0 | strcmp(in,del.Name) = 0) printf(FORMAT,del.Name,del.Num,del.Sex); fseek(fp, (mycount-1) * sizeof(Student), SEEK_SET); fwrite(&temp, sizeof(Student), 1, fp); fseek(fp, (FileSize(fp)-1) * sizeof(Student), SEEK_SET); fwrite(&blank, sizeof(Student), 1, fp); printf( 删除成功 n);

11、i = 1;break; if(i = 0) printf( 删除失败 n); void UpDate(FILE *fp)/ 修改记录 Student temp; char in20; int mycount = 0, i = 0, j,k; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 8 页 - - - - - - - - - if(FileSize(fp) = 0) printf( 无记录可修改n); return; if(FileSize(fp) = 1) Qi

12、ngKong(fp); printf( 删除成功 n); return; printf( 输入要修改的学号或者姓名:); scanf(%s, in); rewind(fp); for(j=0;j 0 & k 5) break; printf( 输入错误 ,请重新输入 :n); scanf(%d,&k); fflush(stdin); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 8 页 - - - - - - - - - if(k = 1) printf( 姓名 :);

13、 scanf(%s, temp.Name); if(k = 2) printf( 学号 :); scanf(%s, temp.Num); if(k = 3) printf( 性别 :); scanf(%s, temp.Sex); if(k = 4) printf( 姓名 :); scanf(%s, temp.Name); printf( 学号 :); scanf(%s, temp.Num); printf( 性别 :); scanf(%s, temp.Sex); fseek(fp, (mycount-1) * sizeof(Student), SEEK_SET); fwrite(&temp,

14、sizeof(Student), 1, fp); printf( 修改成功 n); i = 1;/break; if(i = 0) printf( 修改失败 n); int FileSize(FILE *fp)/ 人数统计 int begin, end, filesize; fseek(fp, 0, SEEK_SET); begin = ftell(fp); fseek(fp, 0, SEEK_END); end = ftell(fp); filesize = (end - begin) / sizeof(Student); 名师资料总结 - - -精品资料欢迎下载 - - - - - - -

15、 - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 8 页 - - - - - - - - - return filesize; void JiaMi(char *p, int size) int i; for( i = 0; i = size; i+) *p = (*p); p+; void JieMi(char *p, int size) int i; for( i = 0; i = size; i+) *p = (*p); p+; void JudgeFP(FILE *fp) if(fp = NULL) printf(ERROR!n);

16、 exit(0); void Menu(FILE *fp)/ 菜单 printf(ttt 学生信息管理系统欢迎您n); printf(tttt1.录入数据 n); printf(tttt2.查询信息 n); printf(tttt3.清空数据 n); printf(tttt4.删除个人 n); printf(tttt5.修改个人 n); printf(tttt6.全部打印 n); printf(tttt0.退出系统 n); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共

17、8 页 - - - - - - - - - printf(count: %dn, FileSize(fp); printf( 请选择操作 :n); void DisPlay(FILE *fp) Student temp; int j; rewind(fp); for(j=0;jFileSize(fp);j+) while(!feof(fp) fseek(fp, j*sizeof(Student), SEEK_SET); fread(&temp, sizeof(Student), 1, fp); printf(FORMAT,DATA);break; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 8 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁