版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.宿舍信息管理系统代码如下:#includestdio.h#includestdlib.h#includestring.h#include conio.hstruct recordchar numb20; /学号char name20; /姓名char room10; /宿舍号student500;int num=0;FILE *fp;int menu(); /*菜单主界面*/int adduser(); /*输入记录*/int list(); /*显示记录*/int searchbyname(); /*按姓名查找*/int searchbyroom(); /*按宿舍号查找*/int sear
2、chbynumb(); /*按学号查找*/int add(); /*添加记录*/int change(); /*删除学生信息*/int dele(); /*删除记录*/int save(); /*保存记录*/int exit(); /*结束*/menu() /*主界面*/ int i; printf(*_* press any key enter menu! *_* n); getch(); system(cls); /*清屏*/ printf(tt*MENU*nn); printf(tt 0. 输入记录n); printf(tt 1. 显示记录 n); printf(tt 2. 按姓名查找n
3、); printf(tt 3. 按姓名查找n); printf(tt 4. 按学号查找n); printf(tt 5. 添加记录 n); printf(tt 6. 修改学生信息n); printf(tt 7. 删除记录n); printf(tt 8. 记录保存文件n); printf(tt 9. Quitn); printf(tt* *n); printf(n Enter you choice(09):); scanf(%d,&i); return i; void main() for(;) switch(menu() case 0:adduser();break; /*调用输入函数*/ ca
4、se 1:list();break; /*调用显示记录函数*/ case 2:searchbyname();break; /*调用按姓名查找函数*/ case 3:searchbyname();break; /*调用按宿舍号查找函数*/ case 4:searchbynumb();break; /*调用按学号查找函数*/ case 5:add();break; /*调用添加函数*/ case 6:change();break; /*调用修改学生信息函数*/ case 7:dele();break; /*调用删除函数*/ case 8:save();break; /*调用保存函数*/ case
5、9:exit(0); adduser() /*输入记录*/ printf(ntt* 请输入用户信息 *n); printf(ntt输入学号:); scanf(%s,studentnum.numb); printf(ntt输入姓名:); scanf(%s,); printf(ntt输入宿舍号:); scanf(%s,studentnum.room); num+; printf(ntt是否继续添加?(Y/N):);if (getch()=y) adduser();return(0);list() /*显示记录*/ int i; if(num!=0) printf(nt
6、t* 以下为宿舍信息管理系统所有信息*); for (i=0;inum;i+) printf(ntt学号: %s,studenti.numb); printf(ntt姓名: %s,); printf(ntt宿舍号: %s,studenti.room); printf(tt); if (i+1num) printf(ntt_); printf(ntt*); else printf(ntt宿舍信息管理系统中无任何纪录); printf(ntt按任意键返回主菜单:); getch(); return(0);searchbyname() /*按姓名查找*/ int mark=
7、0; int i; int a=0; printf(ntt* 按姓名查找 *); char name20; printf(ntt请输入姓名:); scanf(%s,name); for(i=a;inum;i+) if (strcmp(,name)=0) printf(ntt* 以下是您查找的用户信息 *); printf(ntt学号: %s,studenti.numb); printf(ntt姓名: %s,); printf(ntt宿舍号: %s,studenti.room ); printf(ntt*); mark+; getch(); r
8、eturn(0); if (mark=0) printf(ntt没有该学生的信息); printf(ntt按任意键返回主菜单); getch(); return(0);return(0);searchbyroom() /*按学号查找*/int mark=0;int i;int a=0;printf(ntt* 按宿舍号查找 *);char numb10;printf(ntt请输入宿舍号:);scanf(%s,room);for(i=0;inum;i+) if (strcmp(studenti.room,room)=0) printf(ntt* 以下是您查找的用户信息 *); printf(ntt
9、学号: %s,studenti.numb); printf(ntt姓名: %s,); printf(ntt宿舍号: %s,studenti.room); printf(ntt*); printf(ntt按任意键返回主菜单:); mark+; if (i+1)num) printf(ntt是否继续查找相同宿舍号的用户信息:(y/n); if (getch()=y) a=i; continue; else return(0); else printf(ntt按任意键返回主菜单); getch(); return(0); if(mark!=0) printf(ntt没有相同
10、宿舍号的用户纪录); printf(ntt按任意键返回主菜单); getch(); return(0); return(0);searchbynumb() /*按学号查找*/int mark=0;int i;int a=0;printf(ntt* 按学号查找 *);char numb10;printf(ntt请输入学号:);scanf(%s,numb);for(i=0;inum;i+) if (strcmp(studenti.numb,numb)=0) printf(ntt* 以下是您查找的学生信息 *); printf(ntt学号: %s,studenti.numb); printf(ntt
11、姓名: %s,); printf(ntt宿舍号: %s,studenti.room); printf(ntt*); printf(ntt按任意键返回主菜单:); mark+; getch(); return(0); if (mark=0) printf(ntt没有该学生的信息); printf(ntt按任意键返回主菜单); getch(); return(0);return(0);add() /*添加记录*/ int i; if (fp=fopen(student.bin,wb)=NULL) /*判断文件是否打开*/ printf(ntt文件打开失败); for (i
12、=0;inum;i+) if (fwrite(&studenti,sizeof(struct record),1,fp)!=1)/*fwrite()(数据块的输出 )将以数组studenti为首地址的一个sizeof(struct record)的大小的数据块写入fp指向的文件中*/ printf(ntt写入文件错误!n); printf(ntt* 请输入用户信息 *n); printf(ntt输入学号:); scanf(%s,studentnum.numb); printf(ntt输入姓名:); scanf(%s,); printf(ntt输入性别:); sca
13、nf(%s,studentnum.sex); num+; printf(ntt是否继续添加?(Y/N):); if (getch()=y) adduser(); return(0); fclose(fp); /*关闭fp所指向的文件*/ printf(ntt宿舍信息管理系统文件已保存); printf(ntt按任意键退出程序ntt); exit(0); return(0);change() /*按学号修改*/int i,j; char numb;scanf(%s,numb);for(i=0;inum;i+)if(strcmp(studenti.numb,numb)=0)printf(ntt*
14、以下是您查找的用户信息 *); printf(ntt学号: %s,studenti.numb); printf(ntt姓名: %s,); printf(ntt宿舍号: %s,studenti.room); printf(ntt*); printf(ntt是否要修改?(Y/N)n);if(getchar()=Y|getchar()=y)printf(ntt*请输入第%d位的学生信息*,i); printf(ntt输入学号:); scanf(%s,studentnum.numb); printf(ntt输入姓名:); scanf(%s,);
15、printf(ntt输入宿舍号:); scanf(%s,studentnum.room); printf(ntt*);studenti=studenti;printf(ntt修改成功);printf(ntt是否继续修改?(y/n);if (getch()=y | getch()=Y)plus();return;elseprintf(ntt对不起,文件中无任何纪录);printf(ntt按任意键返回主菜单);getchar();return;void deletebynumb() /*按学号删除*/int i,j; int deletemark=0; /*将删除联系人的数目初始化为0*/char
16、 numb20; printf(ntt请输入要删除学生学号:); scanf(%s,numb); if(num=0) /*num为0说明宿舍信息管理系统中还没有输入联系人*/ printf(ntt对不起,文件中无任何纪录); printf(ntt按任意键返回主菜单); getch(); return; for (i=0;inum;i+) if (strcmp(studenti.numb,numb)=0) printf(ntt以下是您要删除的学生纪录:); printf(ntt学号: %s,studenti.numb); printf(ntt姓名: %s,); prin
17、tf(ntt性别: %s,studenti.room); printf(tt); printf(ntt是否删除?(y/n); if (getch()=y) for (j=i;jnum-1;j+) studentj=studentj+1; /*将要删除的学生的后一位赋值给要删除的学生*/ num-; /*宿舍信息管理系统中的学生数目减少1*/ deletemark+; /*删除的联系人增加1*/ printf(ntt删除成功); printf(ntt是否继续删除?(y/n); if (getch()=y) /*输入y值,继续调用按学号函数删除*/ deletebynumb(); return;
18、else /*否则,返回值*/ return; continue; /*跳出for循环,立即转向计算表达式3,对循环控制变量增量或减量*/ if (deletemark=0) /*若删除的学生数目为0,则说明没有删除学生信息管理系统里的学生*/ printf(ntt没有该学生的纪录); printf(ntt是否继续删除?(y/n); if (getch()=y) /*输入y值,继续调用按学号函数删除*/ deletebynumb(); return; void deletebyname() /*按姓名删除*/int a=0;int findmark=0;int i,j;int deletema
19、rk=0;char name20; printf(ntt请输入要删除学生姓名:); scanf(%s,name);for (i=a;inum;i+) if (strcmp(,name)=0) printf(ntt以下是您要删除的学生纪录:); findmark+; printf(ntt_); printf(ntt学号: %s,studenti.numb); printf(ntt姓名: %s,); printf(ntt性别: %s,studenti.sex); printf(ntt出生日期: %s,studenti.birth); printf(ntt学位:%s,studenti.degr); printf(ntt职务:%s,studenti.duty); printf(ntt电话号码:%s,studenti.tel); printf(ntt_); printf(ntt是否删除?(y/n); if (getchar()=y) for (j=i;jnum-1;j+) studentj=studentj+1; num-; deletemark+; printf(ntt删除成功); printf(ntt是否继续删除?(y/n); if (getch()=y) /*输入y值,继续调用按姓名函数删除*/ deleteb
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CSAE 410-2025温室气体 产品碳足迹量化方法与要求 电动乘用车
- T/UNP 161-2024Mini LED室内商用显示屏先进性评价
- T/GFOA 001-2023展览业数据采集规范
- T/CI 608-2024碳化硅衬底生产工艺技术规范
- T/CADBM 84-2024建筑冷热水输送用不锈钢波纹软管及管件安装验收规范
- T/CSA 083-2024室内调光照明产品节律光谱技术评价规范
- 2025~2026学年甘肃定西市陇西县度北师大版第一册一年级数学阶段学情自测卷【附答案】
- 上海市金山区2027届数学九年级第一学期期末学业质量监测试题含解析
- 2026学年陕西省延安市一年级语文期末自测盲点排查题(详细参考解析)详细答案和解析
- Photoshop四级职业技能考试模拟试卷(含详细答案解析)
- 2026年癌症早诊早治项目实施方案
- 2026新教材语文 六年级上册语文园地三 课件
- 2026秋新教材人教版九年级上册英语Unit 1–8全册各单元语法讲义+练习题(含答案)
- 第一单元 健康生活(单元自测)科学教科版六年级上册2026秋
- 2026秋新人教版道德与法治四年级上册全册核心素养教案教学设计(含教学反思)
- 2026年法律硕士(法学)考研真题及完整答案解析(统考回忆版)
- 测绘涉密成果管理责任人及岗位安排
- 易流态化固体散装货物安全装运须知培训
- 八年级上册语文课内外古诗词赏析大全
- 酒精肝诊疗指南(2026年版)基层规范化治疗
- 自来水水厂检验工作制度
评论
0/150
提交评论