版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据结构大作业图书管理系统工程管理 4 伍杨目录 TOC o 1-3 h z u HYPERLINK l _Toc6 一、题目要求 PAGEREF _Toc6 h 1 HYPERLINK l _Toc7 二、总体设计 PAGEREF _Toc7 h 2 HYPERLINK l _Toc8 三、编码实现 PAGEREF _Toc8 h 2 HYPERLINK l _Toc9 1)定义图书结构体 PAGEREF _Toc9 h 2 HYPERLINK l _Toc0 2)登记操作 PAGEREF _Toc0 h 3 HYPERLINK l _Toc1 3)查看操作 PAGEREF _Toc1 h
2、8 HYPERLINK l _Toc2 4)删除操作 PAGEREF _Toc2 h 10 HYPERLINK l _Toc3 5)Main函数 PAGEREF _Toc3 h 19 HYPERLINK l _Toc4 四、调试与测试 PAGEREF _Toc4 h 25 HYPERLINK l _Toc5 五、五心得体会 PAGEREF _Toc5 h 27 HYPERLINK l _Toc6 六、用户手册 PAGEREF _Toc6 h 27题目要求目的要求本课程设计任务的目的是要求学生按照分析、设计、编码、调试和测试的软件开发过程独立完成管理系统设计,以及C语言算法的掌握,并能最终实现本
3、系统的功能要求,通过这个程序可以学习到以前调试短程序没有的的经验。题目要求实现图书管理信息系统的设计。要求实现图书添加、显示全部图书、查询、借阅和归还。主要考查利用文件的操作!总体设计编码实现定义图书结构体struct book char bookname20; dataj.typedataj.statusdataj.count;();查看操作v void see_book() /查看书库记录FILE *fp;long NO;char bookname20;char type20;long date;if(fp=fopen(,r)=NULL)printf(File ope
4、n error!n);exit(0);while(!feof(fp)fscanf(fp,%s%ld%s%ld,bookname,&NO,type,&date);printf(%-10s %-10ld %-10s %ldn,bookname,NO,type,date);if(fclose(fp)printf(Can not close the file!n);exit(0);void see_person() /查看所有借书记录FILE *fp;char name10; char classes20; int number;char telephone20; int NO; char bookn
5、ame20; int borrowdate; int returndate; if(fp=fopen(,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 %ld %-5s %ld %ldn,name,classes,number,telephone,NO,booknam
6、e,borrowdate,returndate);if(fclose(fp)printf(Can not close the file!n);exit(0);删除操作void delete_books() /删除旧书FILE *fp;struct book b;int number;void deletebooks();printf(请输入您要删除的书编号:);scanf(%d,&number);if(fp=fopen(,r)=NULL)printf(不能打开此文件!n);exit(0);while(!feof(fp)fscanf(fp,%s %d %s %d,&,&;if=number)pr
7、intf(nnt*图书信息*n);printf(nt图书书名:%25s,;printf(nt);printf(nt图书编号:%25d,;printf(nt);printf(nt图书类型:%23s,;printf(nt);printf(nt到书日期:%25d,;printf(nt);deletebooks();void deletebooks()FILE *fp,*fp1,*fp2,*fp3;int number;struct book b;printf(nn确认删除请再次输入书编号:);scanf(%d,&number);if(fp=fopen(,r)=NULL)printf(不能打开此文件!
8、n);exit(0);if(fp1=fopen(,w)=NULL) /建立一个临时文件printf(不能打开此文件!n);exit(0);while(!feof(fp)fscanf(fp,%s %d %s %d,&,&;if=number)continue;else fprintf(fp1,%s %d %s %d,;fclose(fp);fclose(fp1);if(fp2=fopen(,r)=NULL)printf(不能打开此文件!n);exit(0);if(fp3=fopen(,w)=NULL) /清空书库printf(不能打开此文件!n);exit(0);while(!feof(fp2)
9、 /将临时文件的内容写人源文件fscanf(fp2,%s %d %s %d,&,&;fprintf(fp3,%s %d %s %d,;fclose(fp2);fclose(fp3);printf(n 删除成功!n);void delete_returnbook() /删除借书记录FILE *fp;int numbers;struct person p;void deletereturnbook();char choice;printf(n请输入所还书本的书编号:);scanf(%d,&numbers);if(fp=fopen(,r)=NULL)printf(不能打开此文件!n);exit(0)
10、;while(!feof(fp) fscanf(fp,%s %s %ld %s %ld %s %ld %ld,&,&,&,&;if=numbers)printf(nt*图书信息*n);printf(nt借书人姓名:%20s,;printf(nt);printf(nt借书人班级:%20s,;printf(nt);printf(nt借书人学号:%20d,;printf(nt);printf(nt借书人联系电话:%20s,;printf(nt);printf(nt图书编号:%24d,;printf(nt);printf(nt图书名称:%23s,;printf(nt);printf(nt借书日期:%2
11、5d,;printf(nt);printf(nt还书日期:%25d,;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确认删除请再次输入书编号:);scanf(%d,&numbers);if(fp=fopen(,r
12、)=NULL)printf(不能打开此文件!n);exit(0);if(fp1=fopen(,w)=NULL)printf(不能打开此文件!n);exit(0);while(!feof(fp)fscanf(fp,%s %s %d %s %d %s %d %d,&,&,&,&;if=numbers)continue;else fprintf(fp1,%s %s %d %s %d %s %d %d,;fclose(fp);fclose(fp1);if(fp2=fopen(,r)=NULL)printf(不能打开此文件!n);exit(0);if(fp3=fopen(,w)=NULL)printf(
13、不能打开此文件!n);exit(0);while(!feof(fp2) /将临时文件写人源文件fscanf(fp2,%s %s %d %s %d %s %d %d,&,&,&,&; fprintf(fp3,%s %s %d %s %d %s %d %d,;fclose(fp2);fclose(fp3);printf(n 删除成功!n);Main函数int main(void)int choice;char choice2;struct book;struct person;doprintf(nnn 图书馆管理系统na);printf( *n);printf( *朱老师您好吖*功能选项: 登记*
14、请按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)case 1: system(cls); /清屏printf(新书资料登记:nn);new_book(); /新书登记printf(登记完毕!n)
15、;printf(n);scanf( %c,&choice2);system(cls);break;case 2:system(cls);printf(借书资料登记:nn);new_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(ch
16、oice)case 1: system(cls);printf(欢迎朱老师进入书库!nn);printf(书名 书编号 类型 到书日期n);printf(n);see_book(); /书库显示printf(n press anykey );scanf( %c,&choice2);system(cls);break;case 2:system(cls);printf(欢迎朱老师进入借书记录!nn);printf(姓名 班级 学号 联系电话 书编号 书名 借书日期 到书日期n);printf(n);see_person(); /借书记录显示printf(n press anykey );scan
17、f( %c,&choice2);system(cls);break;case 3:system(cls);search_person(); /显示符合记录printf(n press anykey );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(); /删除ingprintf(n press anykey );scanf( %c,&choice2);system(cls);break;case 2:system(cls);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大地测量编程实习报告(5篇)
- 组织胚胎学复习题与答案
- 1+x水处理证书练习题(附参考答案)
- 塑料 苯乙烯-丙烯腈(SAN)模塑和挤出材料 第1部分:命名系统和分类基础 编制说明
- 2024年新人教版七年级数学上册教学课件 第二章 有理数的运算 2.1.1有理数的加法 (第2课时)
- 武汉市某新建轻轨施工组织设计(附全套网络图)
- 沧州市东光县2025届六上数学期末质量检测试题含解析
- 昌都地区昌都县2025届六上数学期末监测模拟试题含解析
- 【极品】上海万宝国际广场幕墙工程施工组织设计(具备目录一键到达功能)
- 花地河以西截污工程3标海龙围泵站工程施工组织设计
- 四级计算机程序设计员通关必做300题及答案
- 02jrc901b电子海图操作jan中文说明书
- 大华云直存方案
- 2023年四川成都武侯资本投资管理集团有限公司招聘笔试题库含答案解析
- 广东省和社会保障厅编制的劳动合同样本
- 2023年上海市长宁区高考化学一模试卷(附答案详解)
- 电气plc软件codesys学习手册syslibsockets
- 人无信则不立
- 特种设备安全管理人员(A)考试题库
- TY/T 2001-2015国民体质测试器材通用要求
- GB/T 18380.31-2022电缆和光缆在火焰条件下的燃烧试验第31部分:垂直安装的成束电线电缆火焰垂直蔓延试验试验装置
评论
0/150
提交评论