2022年学籍管理系统 .pdf

上传人:C****o 文档编号:34261729 上传时间:2022-08-15 格式:PDF 页数:9 大小:55.12KB
返回 下载 相关 举报
2022年学籍管理系统 .pdf_第1页
第1页 / 共9页
2022年学籍管理系统 .pdf_第2页
第2页 / 共9页
点击查看更多>>
资源描述

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

1、#include stdio.h #include stdlib.h #include string.h int shoudsave=0; /* */ struct student char num10;/* 学号 */ char name20; char sex4; char yuan; int ban; char neartime10;/* 最近更新时间*/ ; typedef struct node struct student data; struct node *next; Node,*Link; void menu() printf(*); printf(t1 登记学生资料 ttt

2、tt2 删除学生资料 n); printf(t3 查询学生资料 ttttt4 修改学生资料 n); printf(t5 保存学生资料 ttttt0 退出系统 n); n); void printstart() printf(-n); void Wrong() printf(n= 提示:输入错误 !n); void Nofind() printf(n= 提示:没有找到该学生 !n); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - -

3、 void printc() /* 本函数用于输出中文*/ printf( 学号t 姓名性别学院班级n); void printe(Node *p)/* 本函数用于输出英文*/ printf(%-12s%st%st%ct%dn,p-data.num,p-data.name,p-data.sex,p-data.yuan,p-data.ban); Node* Locate(Link l,char findmess,char nameornum) /* 该函数用于定位连表中符合要求的接点,并返回该指针*/ Node *r; if(strcmp(nameornum,num)=0) /* 按学号查询*/

4、 r=l-next; while(r!=NULL) if(strcmp(r-data.num,findmess)=0) return r; r=r-next; else if(strcmp(nameornum,name)=0) /* 按姓名查询*/ r=l-next; while(r!=NULL) if(strcmp(r-data.name,findmess)=0) return r; r=r-next; return 0; void Add(Link l) /* 增加学生*/ Node *p,*r,*s; char num10; r=l; 名师资料总结 - - -精品资料欢迎下载 - - -

5、 - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - s=l-next; while(r-next!=NULL) r=r-next; /* 将指针置于最末尾*/ while(1) printf( 请你输入学号 (以0返回上一级菜单 :); scanf(%s,num); if(strcmp(num,0)=0) break; while(s) if(strcmp(s-data.num,num)=0) printf(= 提示 :学号为 %s的学生已经存在,若要修改请你选择4 修改!n,num

6、); printstart(); printc(); printe(s); printstart(); printf(n); return; s=s-next; p=(Node *)malloc(sizeof(Node); strcpy(p-data.num,num); printf( 请你输入姓名 :); scanf(%s,p-data.name); getchar(); printf( 请你输入性别 :); scanf(%s,p-data.sex); getchar(); printf( 请你输入学院 :); scanf(%c,&p-data.yuan); getchar(); print

7、f( 请你输入班级 :); scanf(%d,&p-data.ban); getchar(); /* 信息输入已经完成*/ p-next=NULL; r-next=p; r=p; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - shoudsave=1; void Qur(Link l) /* 查询学生*/ int sel; char findmess20; Node *p; if(!l-next) printf(n= 提示:没有

8、资料可以查询 !n); return; printf(n=1按学号查找 n=2 按姓名查找 n); scanf(%d,&sel); if(sel=1)/* 学号 */ printf( 请你输入要查找的学号 :); scanf(%s,findmess); p=Locate(l,findmess,num); if(p) printf(tttt 查找结果 n); printstart(); printc(); printe(p); printstart(); else Nofind(); else if(sel=2) /* 姓名 */ printf( 请你输入要查找的姓名 :); scanf(%s,

9、findmess); p=Locate(l,findmess,name); if(p) printf(tttt 查找结果 n); printstart(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - printc(); printe(p); printstart(); else Nofind(); else Wrong(); void Del(Link l) /* 删除 */ int sel; Node *p,*r; ch

10、ar findmess20; if(!l-next) printf(n= 提示:没有资料可以删除 !n); return; printf(n=1按学号删除 n=2 按姓名删除 n); scanf(%d,&sel); if(sel=1) printf( 请你输入要删除的学号 :); scanf(%s,findmess); p=Locate(l,findmess,num); if(p) r=l; while(r-next!=p) r=r-next; r-next=p-next; free(p); printf(n= 提示:该学生已经成功删除 !n); shoudsave=1; else Nofin

11、d(); else if(sel=2) printf( 请你输入要删除的姓名 :); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 9 页 - - - - - - - - - scanf(%s,findmess); p=Locate(l,findmess,name); if(p) r=l; while(r-next!=p) r=r-next; r-next=p-next; free(p); printf(n= 提示:该学生已经成功删除 !n); shoudsave=1;

12、 else Nofind(); else Wrong(); void Modify(Link l) Node *p; char findmess20; if(!l-next) printf(n= 提示:没有资料可以修改 !n); return; printf( 请你输入要修改的学生学号:); scanf(%s,findmess); p=Locate(l,findmess,num); if(p) printf( 请你输入新学号 (原来是 %s):,p-data.num); scanf(%s,p-data.num); printf( 请你输入新姓名 (原来是 %s):,p-data.name);

13、scanf(%s,p-data.name); getchar(); printf( 请你输入新性别 (原来是 %s):,p-data.sex); scanf(%s,p-data.sex); printf( 请你输入新的学院 :,p-data.yuan); scanf(%c,&p-data.yuan); getchar(); printf( 请你输入新的班级 (原来是 %d):,p-data.ban); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 9 页 - - - -

14、 - - - - - scanf(%d,&p-data.ban); getchar(); printf(n= 提示:资料修改成功 !n); shoudsave=1; else Nofind(); void Save(Link l) FILE* fp; Node *p; int flag=1,count=0; fp=fopen(c:student,wb); if(fp=NULL) printf(n= 提示:重新打开文件时发生错误 !n); exit(1); p=l-next; while(p) if(fwrite(p,sizeof(Node),1,fp)=1) p=p-next; count+;

15、 else flag=0; break; if(flag) printf(n= 提示:文件保存成功 .(有%d 条记录已经保存 .)n,count); shoudsave=0; fclose(fp); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 9 页 - - - - - - - - - void main() Link l;/* 连表 */ FILE *fp; /* 文件指针*/ int sel; char ch; char jian; int count=0; N

16、ode *p,*r; printf(tttt 学生成绩管理系统 ntttt- 学生课设 31093n); l=(Node*)malloc(sizeof(Node); l-next=NULL; r=l; fp=fopen(C:student,rb); if(fp=NULL) printf(n= 提示:文件还不存在,是否创建?(y/n)n); scanf(%c,&jian); if(jian=y|jian=Y) fp=fopen(C:student,wb); else exit(0); printf(n= 提示:文件已经打开 ,正在导入记录 .n); while(!feof(fp) p=(Node

17、*)malloc(sizeof(Node); if(fread(p,sizeof(Node),1,fp) /* 将文件的内容放入接点中*/ p-next=NULL; r-next=p; r=p; /* 将该接点挂入连中*/ count+; fclose(fp); /* 关闭文件*/ printf(n= 提示:记录导入完毕 ,共导入 %d 条记录 .n,count); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 9 页 - - - - - - - - - while(1

18、) menu(); printf( 请你选择操作 :); scanf(%d,&sel); if(sel=0) if(shoudsave=1) getchar(); printf(n= 提示:资料已经改动 ,是否将改动保存到文件中 (y/n)?n); scanf(%c,&ch); if(ch=y|ch=Y) Save(l); printf(n= 提示:你已经退出系统 ,再见!n); break; switch(sel) case 1:Add(l);break; /* 增加学生*/ case 2:Del(l);break;/* 删除学生*/ case 3:Qur(l);break;/* 查询学生*/ case 4:Modify(l);break;/* 修改学生*/ case 5:Save(l);break;/* 保存学生*/ case 9:printf(ttt=帮助信息 =n);break; default: Wrong();getchar();break; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 9 页 - - - - - - - - -

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

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

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

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