c语言程序设计报告图书管理系统Word版.docx

上传人:h**** 文档编号:26857769 上传时间:2022-07-19 格式:DOCX 页数:17 大小:15.10KB
返回 下载 相关 举报
c语言程序设计报告图书管理系统Word版.docx_第1页
第1页 / 共17页
c语言程序设计报告图书管理系统Word版.docx_第2页
第2页 / 共17页
点击查看更多>>
资源描述

《c语言程序设计报告图书管理系统Word版.docx》由会员分享,可在线阅读,更多相关《c语言程序设计报告图书管理系统Word版.docx(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、c语言程序设计报告图书管理系统Word版 中国地质大学 本科生课程论文封面 课程名称 c语言课程设计 教师姓名樊媛媛 本科生姓名 本科生学 本科生专业 所在院系 类别: 日期: 课程设计评语 注:1、无评阅人签名成绩无效; 2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效; 3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。 目录 课程设计评语 (2) 目录 (3) 1课程论文题目 (4) 2程序设计思路 (4) 3功能模块图 (5) 4数据结构设计 (5) 5算法设计 (6) 6程序代码 (13) 7程序运行结果 (22) 8编程中遇到的困难及解决方法 (25) 9总结心得及良好建议 (2

2、6) 10致谢 (26) 1课程论文题目 图书管理系统 2程序设计思路 根据要求,图书管理系统以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保持记录以进行删除,查询,借书,还书,退出,添加等等操作;另外还有键盘式旋转菜单以实现功能选择模块。 3功能模块图 系统功能模块图 4数据结构设计 先写主函数main (),然后设计个功能选项,用switch选择,然后进入不同模块,进行不同选择,实现不同功能。每个图书信息设置一个结构体,将输入信息存入文件,提供查询功能,还有删除功能以及借书还书功能。每运行一功能后都返回主界面,方便再次选择,还有设置退出模块,方便退出。 5算法设计 先定义

3、结构体数组struct books,然后设置主界面,主界面出现6个功能选项, 分别是输入sr() 、借书js()、还书hs()、删除sc()、退出tc()、查询cx().各模块设计如下:输入模块sr(),先调用文件eup,对其进行读取,然后增加,再对其进行保存和调用。其中结构体只输入tsmc图书名称,tsbh图书编号,dj单价,zz作者, 然后自动生成,czzt存在状态,姓名xm,学号xh,性别xb. 查询模块cx(),有选项图书编号和图书名称,然后选择,用if选择,然后用for 循环查找,当输入名称与文件中的名称相同时,便显示此信息。 删除模块就是在查找功能的图书后,选择删除,将strcpy

4、将si+1的值赋给si。 借出模块也是在查询的基础上,若si的存在状态为已借出,则显示已借出,无法再借,若未借出,则将si的存在状态czzt变为已借出,然后输入姓名,学号,性别,最后显示出已借出。 还书模块就是在查询的基础上,若si的存在状态为未借出,则无法归还,若借出,则将存在状态变为未借出,然后自动将姓名,学号,性别变为初始值。 退出模块使flag=1,而在main就有bool flag 且main中已令main=0.这样就实现了退出功能。 其中若输入超过选项值后,都会显示输入错误,请重新输入。若字符错误,程序就直接出现错误了。 6程序代码 #include #include #inclu

5、de #include #define M 100 struct books char tsmc12; int tsbh; float dj; char zz12; char czzt12; char xm12; char xb12; int xh; sM; int N; bool flag; int main () int sele; flag=0; sele=1; void sr(); void cx(); void sc(); void js(); void hs(); void tc(); void jsh(); /system (tsgl); printf(nn); printf(

6、*n); printf( 1:输入 2:查询 3:删除 n); printf( 4:借书 5:还书 0:退出 n); printf( *n); while(1) printf(nn请输入功能序号:); scanf (%d,&sele); if(sele=0 & sele=5) switch(sele) case 1:sr();break; case 2:cx();break; case 3:sc();break; case 4:js();break; case 5:hs();break; case 0:jsh();break; if(flag) break; printf(nn); print

7、f( *n); printf( 1:输入 2:查询 3:删除 n); printf( 4:借书 5:还书 0:退出 n); printf( *n); else printf(输入错误请再次输入|nn); printf(nn); printf( *n); printf( 1:输入 2:查询 3:删除 n); printf( 4:借书 5:还书 0:退出 n); printf( *n); printf(nn让任意键继续n); /wr_file(); /*主函数*/ /*输入*/ void sr() int n,i; N=0; printf(可输入的书本数:); scanf(%d,&n); N=n+

8、N; printf(请输入相关信息:n); for(i=1;i=n;i+) printf(图书名称:); scanf(%s,sN-n-1+i.tsmc); printf(图书编号:); scanf(%d,&sN-n-1+i.tsbh); printf(单价:); scanf(%f,&sN-n-1+i.dj); printf(作者:); scanf(%s,&sN-n-1+i.zz); strcpy(sN-n-1+i.czzt,未借出); strcpy(sN-n-1+i.xm,无); /*查询*/ void cx() int i,j100=-1,d,k,t=0; char m20; printf(

9、查询:); printf(1:图书名称 2:图书编号); printf(nn请输入查询选项:); scanf(%d,&k); if(k=1) printf(请输入图书名称:); scanf(%s,m); for(i=0;iN;i+) if(strcmp(m,si.tsmc)=0) jt=i; t=t+1; else if(k=2) printf(请输入图书编号:); scanf(%d,&d); for(i=0;iN;i+) if(d=si.tsbh) jt=i; t+; if(j0=-1&t=0) printf(没有找到!n); if(j0!=-1 & t!=0) printf(t图书名称 t

10、图书编号 t单价 t作者 t存在状态 t借书人姓名 t性 别 t学号n); for(i=0;it;i+) printf(t%s t%d t%f t%s t%s t%s t%s t%d , sji.tsmc,sji.tsbh,sji.dj,sji.zz,sji.czzt,sji.xm,sj i.xb,sji.xh); /*删除模块*/ void sc() int i,d,k,t=0; char ms20; int ja=-1; printf(查询:); printf(1:图书名称 2:图书编号); printf(nn请输入查询选项:); scanf(%d,&k); if(k=1) printf(

11、请输入图书名称:); scanf(%s,ms); for(i=0;iN;i+) if(strcmp(ms,si.tsmc)=0) ja=i; break; else if(k=2) printf(请输入图书编号:); scanf(%d,&d); for(i=0;iN;i+) if(d=si.tsbh) ja=i; break; printf(确定删除该图书吗?1表示Yes,其他No); int p; scanf(%d,&p); if(p=1) printf(Congratulations,删除成功|n); if(ja!=-1 & p) N=N-1; for(i=ja;iN;i+) strcpy

12、(si.tsmc,si+1.tsmc); si.tsbh=si+1.tsbh; si.dj=si+1.dj; strcpy(si.zz,si+1.zz); strcpy(si.czzt,si+1.czzt); strcpy(si.xm,si+1.xm); strcpy(si.xb,si+1.xb); si.xh=si+1.xh; else if(ja=-1) printf (没有找到!n); /*借书模块*/ void js() int i,j100=-1,d,k,t=0; char m20; printf(查询:); printf(1:图书名称 2:图书编号); printf(nn请输入查询

13、选项:); scanf(%d,&k); if(k=1) printf(请输入图书名称:); scanf(%s,&m); for(i=0;iN;i+) if(strcmp(m,si.tsmc)=0) jt=i; t=t+1; else if(k=2) printf(请输入图书编号:); scanf(%d,&d); for(i=0;iN;i+) if(d=si.tsbh) jt=i; t+; if(j0=-1&t=0) printf(没有找到!n); strcpy(sji.czzt,已借出); printf(此书已借出n); if(j0!=-1&t!=0&sji.czzt= 未借出) printf

14、(%s %d %f %s %s %s %s %d , sji.tsmc,sji.tsbh,sji.dj,sji.zz,sji.czzt,sji.xm,sj i.xb,sji.xh); printf(1:确定借阅 2:退出n); scanf(%d,&k); switch(k) case 1:printf(请输入学号:n); scanf(%d,&sji.xh); printf(请输入姓名:n); scanf(%s,&sji.xm); printf(请输入性别:n); scanf(%s,&sji.xb); strcpy(sji.czzt,已借出); printf(已借出,按任意键继续n); /getch(); case 2:break; /*还书模块*/ void hs() int i,j100=-1,d,k,t=0; char m20; printf(查询:); printf(1:图书名称 2:图书编号); printf(nn请输入查询选项:); scanf(%d,&k); if(k=1) printf(请输入图书名称:); scanf(%s,&m); for(i=0;iN;i+) if(strcmp(m,si.tsmc)=0) jt=i; t+; break; else if(k=2) printf(请输入图书编号:); scanf(%d,&d); for(i=0;iN;i+)

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

当前位置:首页 > 应用文书 > 策划方案

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

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