2022年图书管理系统c语言_数据结构课程设计报告 4.pdf

上传人:Che****ry 文档编号:27197815 上传时间:2022-07-23 格式:PDF 页数:28 大小:449.44KB
返回 下载 相关 举报
2022年图书管理系统c语言_数据结构课程设计报告 4.pdf_第1页
第1页 / 共28页
2022年图书管理系统c语言_数据结构课程设计报告 4.pdf_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《2022年图书管理系统c语言_数据结构课程设计报告 4.pdf》由会员分享,可在线阅读,更多相关《2022年图书管理系统c语言_数据结构课程设计报告 4.pdf(28页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、数据结构大作业121279044 伍杨数据结构大作业图书管理系统工程管理121279044 伍杨目录一、题目要求 . 2 二、总体设计 . 2 三、编码实现 . 3 1) 定义图书结构体 . 3 2) 登记操作 . 4 3) 查看操作 . 8 4) 删除操作 . 11 5) Main 函数 . 20 四、调试与测试 . 26 五、五心得体会 . 28 六、用户手册 . 28名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 28 页 - - - - - - - - - 数据结

2、构大作业121279044 伍杨一、 题目要求1) 目的要求本课程设计任务的目的是要求学生按照分析、设计、编码、调试和测试的软件开发过程独立完成管理系统设计,以及C语言算法的掌握 ,并能最终实现本系统的功能要求, 通过这个程序可以学习到以前调试短程序没有的的经验。2) 题目要求实现图书管理信息系统的设计。要求实现图书添加、显示全部图书、查询、借阅和归还。主要考查利用文件的操作!二、 总体设计名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 28 页 - - - - - -

3、- - - 数据结构大作业121279044 伍杨三、 编码实现1) 定义图书结构体struct book char bookname20; / 书名int NO; / 书编号char type20; / 类型int date; / 到书日期; struct person char name10; / 姓名char classes20; / 班级int number; / 学号char telephone12; / 联系电话int NO; / 书编号char bookname20; / 书名int borrowdate; / 借书日期int returndate; / 还书日期名师资料总结 -

4、 - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨2) 登记操作void new_book() / 登记新书 FILE *fp; struct book b; int i,j; if(fp=fopen(shuku.txt,a)=NULL) printf(File open error!n); exit(0); printf(请朱老师输入此次收到的书本总数:); scanf(%d,&i); for( j=0;

5、ji; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨all=i; if(i0&i=Max) for( j=1;jdataj.iddataj.namedataj.typedataj.statusdataj.count; in.close(); 3) 查看操作v void see_book() / 查看书库记录 FILE *fp; long NO; char bookname20; cha

6、r type20; long date; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨if(fp=fopen(shuku.txt,r)=NULL) printf(File open error!n); exit(0); while(!feof(fp) fscanf(fp,%s%ld%s%ld,bookname,&NO,type,&date); printf(%-10s %-10ld %

7、-10s %ldn,bookname,NO,type,date); ; if(fclose(fp) printf(Can not close the file!n); exit(0); void see_person() / 查看所有借书记录 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨FILE *fp; char name10; char classes20; int number;

8、 char telephone20; int NO; char bookname20; int borrowdate; int returndate; if(fp=fopen(jieshujilu.txt,r)=NULL) printf(File open error!n); exit(0); while(!feof(fp) fscanf(fp,%s %s %ld %s %ld %s %ld %ld,name,classes,&number,telephone,&NO,bookname,&borrowdate,&returndate); printf(%-5s %-5s %ld %-5s %l

9、d %-5s %ld %ldn,name,classes,number,telephone,NO,bookname,borrowdate,returndate); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨; if(fclose(fp) printf(Can not close the file!n); exit(0); 4) 删除操作void delete_books() / 删

10、除旧书 FILE *fp; struct book b; int number; void deletebooks(); printf(请输入您要删除的书编号:); scanf(%d,&number); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨if(fp=fopen(shuku.txt,r)=NULL) printf(不能打开此文件!n); exit(0); while(!feo

11、f(fp) fscanf(fp,%s %d %s %d,b.bookname,&b.NO,b.type,&b.date); if(b.NO=number) printf(nnt*图书信息 *n); printf(nt图书书名 :%25s,b.bookname); printf(nt-); printf(nt图书编号 :%25d,b.NO); printf(nt-); printf(nt图书类型: %23s,b.type); printf(nt-); printf(nt到书日期: %25d,b.date); printf(nt-); deletebooks(); 名师资料总结 - - -精品资料

12、欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨 void deletebooks() FILE *fp,*fp1,*fp2,*fp3; int number; struct book b; printf(nn确认删除?请再次输入书编号:); scanf(%d,&number); if(fp=fopen(shuku.txt,r)=NULL) printf(不能打开此文件!n); exit(0); if(fp1=fope

13、n(tempshuku.txt,w)=NULL) / 建立一个临时文件printf(不能打开此文件!n); exit(0); while(!feof(fp) fscanf(fp,%s %d %s %d,b.bookname,&b.NO,b.type,&b.date); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨if(b.NO=number) continue; else fprin

14、tf(fp1,%s %d %s %d,b.bookname,b.NO,b.type,b.date); fclose(fp); fclose(fp1); if(fp2=fopen(tempshuku.txt,r)=NULL) printf(不能打开此文件!n); exit(0); if(fp3=fopen(shuku.txt,w)=NULL) / 清空书库printf(不能打开此文件!n); exit(0); while(!feof(fp2) / 将临时文件的内容写人源文件fscanf(fp2,%s %d %s %d,b.bookname,&b.NO,b.type,&b.date); fprin

15、tf(fp3,%s %d %s %d,b.bookname,b.NO,b.type,b.date); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨fclose(fp2); fclose(fp3); printf(n 删除成功! n); void delete_returnbook() / 删除借书记录 FILE *fp; int numbers; struct person p; v

16、oid deletereturnbook(); char choice; printf(n请输入所还书本的书编号:); scanf(%d,&numbers); if(fp=fopen(jieshujilu.txt,r)=NULL) printf(不能打开此文件!n); exit(0); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨while(!feof(fp) fscanf(fp,%

17、s %s %ld %s %ld %s %ld %ld,p.name,p.classes,&p.number,p.telephone,&p.NO,p.bookname,&p.borrowdate,&p.returndate); if(p.NO=numbers) printf(nt*图书信息 *n); printf(nt借书人姓名: %20s,p.name); printf(nt-); printf(nt借书人班级: %20s,p.classes); printf(nt-); printf(nt借书人学号: %20d,p.number); printf(nt-); printf(nt借书人联系电话

18、:%20s,p.telephone); printf(nt-); printf(nt图书编号 :%24d,p.NO); printf(nt-); printf(nt图书名称 :%23s,p.bookname); printf(nt-); printf(nt借书日期: %25d,p.borrowdate); printf(nt-); printf(nt还书日期: %25d,p.returndate); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 28 页 - - -

19、- - - - - - 数据结构大作业121279044 伍杨printf(nt-); deletereturnbook(); printf(nt您想继续吗 ?(y/n); scanf( %c,&choice); if(choice=Y|choice=y) system(cls); delete_returnbook(); fclose(fp); void deletereturnbook() FILE *fp,*fp1,*fp2,*fp3; struct person p;int numbers; printf(nn确认删除?请再次输入书编号:); 名师资料总结 - - -精品资料欢迎下载

20、- - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨scanf(%d,&numbers); if(fp=fopen(jieshujilu.txt,r)=NULL) printf( 不能打开此文件! n); exit(0); if(fp1=fopen(tempbook.txt,w)=NULL) printf( 不能打开此文件! n); exit(0); while(!feof(fp) fscanf(fp,%s %s %d %s %d

21、%s %d %d,p.name,p.classes,&p.number,p.telephone,&p.NO,p.bookname,&p.borrowdate,&p.returndate); if(p.NO=numbers) continue; else fprintf(fp1,%s %s %d %s %d %s %d %d,p.name,p.classes,p.number,p.telephone,p.NO,p.bookname,p.borrowdat名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - -

22、- - - 第 18 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨e,p.returndate); fclose(fp); fclose(fp1); if(fp2=fopen(tempbook.txt,r)=NULL) printf( 不能打开此文件! n); exit(0); if(fp3=fopen(jieshujilu.txt,w)=NULL) printf( 不能打开此文件! n); exit(0); while(!feof(fp2) / 将临时文件写人源文件fscanf(fp2,%s %s %d %s %d %s %d %d,p.nam

23、e,p.classes,&p.number,p.telephone,&p.NO,p.bookname,&p.borrowdate,&p.returndate); fprintf(fp3,%s %s %d %s %d %s %d %d,p.name,p.名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨classes,p.number,p.telephone,p.NO,p.bookname,

24、p.borrowdate,p.returndate); fclose(fp2); fclose(fp3); printf(n 删除成功! n); 5) Main 函数int main(void) int choice; char choice2; struct book; struct person; do printf(nnn 图书馆管理系统 na); printf( *n); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 28 页 - - - - - - - -

25、- 数据结构大作业121279044 伍杨printf( *朱老师您好吖 *功能选项:登记 * 请按 1,*n); printf( * 查看/ 查询*请按 2 *n); printf( * 删除* 请按 3 *n); printf( * 退出* 请按 0 *n); printf( *nnn); printf( 请选择功能: ); scanf(%d,&choice); switch(choice) case 1: printf( 登记选项: 新书登记请按1,借书登记请按2,返回请按 3n); printf(请选择: ); scanf(%d,&choice); switch(choice) cas

26、e 1: system(cls); / 清屏printf(新书资料登记: nn); new_book(); / 新书登记printf(登记完毕! n); printf(n); scanf( %c,&choice2); system(cls); break; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨case 2: system(cls); printf(借书资料登记: nn); n

27、ew_person(); / 借书登记printf(n press anykey ); scanf( %c,&choice2); system(cls); break; case 3: system(cls); break; break; case 2: printf( 查看/ 查询选项:书库查看请按1,总借书记录查看请按2,到期记录查询请按3,返回请按4n); printf(请选择: ); scanf(%d,&choice); switch(choice) case 1: system(cls); printf(欢迎朱老师进入书库!nn); 名师资料总结 - - -精品资料欢迎下载 - -

28、- - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨printf(书名书编号类型到书日期 n); printf(-n); see_book(); / 书库显示printf(n press anykey ); scanf( %c,&choice2); system(cls); break; case 2: system(cls); printf(欢迎朱老师进入借书记录!nn); printf(姓名班级 学号联系电话书编号书名借书日期到书日期n

29、); printf(-n); see_person(); / 借书记录显示printf(n press anykey ); scanf( %c,&choice2); system(cls); break; case 3: system(cls); search_person(); / 显示符合记录printf(n press anykey ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 28 页 - - - - - - - - - 数据结构大作业121279044

30、 伍杨scanf( %c,&choice2); system(cls); break; case 4: system(cls); break; break; case 3: printf( 删除选项:旧书删除请按1,借书记录删除请按2,返回请按3n); printf(请选择: ); scanf(%d,&choice); switch(choice) case 1: system(cls); delete_books(); / 删除 ing printf(n press anykey ); scanf( %c,&choice2); system(cls); break; case 2: 名师资料

31、总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨system(cls); delete_returnbook(); / 删除 ing printf(n press anykey ); scanf( %c,&choice2); system(cls); break; case 3: system(cls); break; break; case 0: system(cls); while(choi

32、ce != 0); return 0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 25 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨四、 调试与测试主菜单登记名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 26 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨查看删除生成的文件

33、内信息名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 27 页,共 28 页 - - - - - - - - - 数据结构大作业121279044 伍杨五、 五心得体会经过这次大作业,我觉得代码的编写,最主要的的是编程思想,语言其实不是太重要,思路最重要!六、 用户手册程序执行文件为lib sys.exe,打开执行文件后按提示操作即可名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 28 页,共 28 页 - - - - - - - - -

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

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

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com