C语言课程设计报告—图书信息管理系统资料_第1页
C语言课程设计报告—图书信息管理系统资料_第2页
C语言课程设计报告—图书信息管理系统资料_第3页
C语言课程设计报告—图书信息管理系统资料_第4页
C语言课程设计报告—图书信息管理系统资料_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计报告课程名称C语言课程设计课题名称图书管理系统专业电气工程及其自动化班级学号姓名指导教师2016年12月20日湖南工程学院课程设计任务书课程名称C语言课程设计课题图书管理系统专业班级电气1604学生姓名学号指导老师审批进度安排星期时间班级内容地点第16周二7-8节电气1604你直任务D600第17周二下午2:00-5:50电气1604你直任务D600第17周三下午2:00-5:50电气1604你直任务D600第17周四下午2:00-5:50电气1604你直任务D600第17周五下午2:00-5:50电气1604你直任务D600湖南工程学院计算机科学系2016年12月13日1 题目要求2

2、 分析3 总体设计4 详细设计5 运行与测试报告C语言程序设计编程实践是学习C语言程序设计的一重要环节,上机实习和课程设计是提高同学们程序设计能力的有效途径,能够使同学们初步掌握程序设计的基本方法和调试技能。学校安排上机时间有限,老师也只能教给我们一些方法,而我们自己需要投入很大的时间和精力来锻炼。1、题目要求设计“图书信息管理系统”要求:图书信息包括:登录号,书名,作者名,分类号,出版单位,出版时间,价格等。使之提供以下功能:(1)系统以菜单方式工作。(2) 图书信息录入功能。(图书信息用文件保存)。(3) 图书信息浏览功能。(4) 图书信息查询功能。(5) 图书信息的删除和修改。2、分析:

3、根据题目要求,应当把图书信息用结构体形式输入,再定义一个全局变量和文件指针进行整个程序的运行,然后把图书信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;在程序中需实现图书信息录入,浏览,查询,删除和修改等功能的操作,所以需要建立相应的模块来实现;另外还需提供键盘式选择菜单实现功能,在运行时达到所要目的。3、总体设计:根据题目要求,可以将系统分为六个模块:(1) 管理员登录系统模块。(2) 菜单选择模块。(3) 图书信息录入功能模块。(4) 图书信息浏览功能。(5) 图书信息查询功能。(6) 图书信息的删除和修改。图书信息管理系统管理员登录系统模块菜单选择模块图书信息录入功能模块图

4、书信息浏览功能模块图书信息查询功能模块图书信息的删除和修改4、详细设计:头函数名:#include<stdio.h>#include<stdlib.h>#include<string.h>/*图书信息结构体 */*包括登录号,书名,作者名,分类号,出版单位,出版时间,价格等*/structbookinf int num;*char bname20;*char wname10;*char clanum14;*char pubcom10;*char pubtime10;*float price;*登录号 书名 作者名 分类号 出版单位 出版时间 价格;一 管理员

5、登录系统模块:( 1) 来到图书信息管理系统页面void index()char input;printf("nnttt*n");printf("ttt 图书信息管理系统n");注释: 运行时直接进入这个页面printf("ttt*nnn");printf("n");printf("t<按任意键进入>nt");input=getchar();(2)管理员登陆进入功能菜单页面FILE*fp;structmanagepswd;if(fp=fopen("password.txt&

6、quot;,"r")=NULL)printf("nnntCannotopenfile!nt");elsedoprintf("nnt请输入管理员帐号:");scanf("%s",name);printf("nnt请输入管理员密码:");scanf("%s",password);fp=fopen("password.txt","r");fread(&pswd,sizeof(structmanage),1,fp);fclose(fp)

7、;w=strcmp(pswd.manage_name,name);k=strcmp(pswd.password,password);adm_servelist();while(w!=0|k!=0);adm_servelist();(3) 来到功能菜单页面voidadm_servelist()voidbook_add();voidbook_view();voidchange();voiddel();voidbook_search();voidlogin();voidpwchange();intin;charinput;doprintf("nnnt-欢迎使用信息管理系统-");

8、printf("nnt1.图书信息录入n");printf("t2.图书信息浏览n");printf("t3.图书信息查询n");printf("t4.图书信息删除n");printf("t5.图书信息修改n");printf("t6.退出管理模式n");printf("nt请选择服务种类:");scanf("%d",&in);if(in!=1&&in!=2&&in!=3&&in!

9、=4&&in!=5&&in!=6)printf("nt没有这项服务n");printf("t按任意键重新选择");input=getchar();while(in!=1&&in!=2&&in!=3&&in!=4&&in!=5&&in!=6);switch(in)case 1: book_add();break;case 2: book_view();break;case 3: book_search();break;case 4: del();

10、break;case 5: change();break;case 6: login();break;注释 : 菜单列出的服务种类从 1 , 2, 3, 4, 5 , 6所对应的功能进行选择注释 :选择自己所需要后摁下数字键则 则进入此功能页面(4) 图书信息录入功能模块voidbook_add()voidadm_servelist();voidbook_add();inti=0,j;FILE*fp;注释:输入的图书信息是通过文件进行保存的charinput;structbookinfbooks;structbookinfbook_taxis30;printf("nnnt-请输入图书

11、信息-nn");printf("t登录号:");scanf("%d",&books.num);printf("nt书名:");scanf("%s",books.bname);printf("nt作者名:");scanf("%s",books.wname);printf("nt分类号:");scanf("%s",books.clanum);printf("nt出版单位:");scanf("%

12、s",books.pubcom);printf("nt出版时间:");scanf("%s",books.pubtime);printf("nt价格:");scanf("%f",&books.price);if(fp=fopen("book.txt","r")!=NULL)dofread(&book_taxisi,sizeof(structbookinf),1,fp);i=i+1;while(!feof(fp);fclose(fp);for(j=0;j

13、<=i;j+)if(books.num=book_taxisj.num)printf("nnnt对不起,这个编号已经使用过了n");printf("t按任意键返回管理菜单");input=getchar();adm_servelist();break;if(fp=fopen("book.txt","r")=NULL)fp=fopen("book.txt","w");elsefclose(fp);fp=fopen("book.txt","a&

14、quot;);fwrite(&books,sizeof(structbookinf),1,fp);fclose(fp);printf("nnnt信息输入完毕按任意键继续n");input=getchar();adm_servelist();( 3) 图书信息浏览功能模块voidbook_view()voidadm_servelist();voidbook_view();intinp,i=0,n=0;FILE*fp;charinput;structbookinfbookview20;if(fp=fopen("book.txt","r&qu

15、ot;)=NULL)printf("nnnt数据尚未初始化nnt请在管理菜单中增加图书信息n");printf("nt<按任意键返回管理菜单>nt");input=getchar();adm_servelist();elsedofread(&bookviewi,sizeof(structbookinf),1,fp);i=i+1;while(!feof(fp);fclose(fp);doprintf("nt共有%d条记录",i-1);printf("nnt登录号:%dn",bookviewn.nu

16、m);printf("nt书名:%sn",bookviewn.bname);printf("nt作者名:%sn",bookviewn.wname);printf("nt分类号:%sn",bookviewn.clanum);printf("nt出版单位:%sn",bookviewn.pubcom);printf("nt出版时间:%sn",bookviewn.pubtime);printf("nt价格:%fn",bookviewn.price);printf("nnt1

17、.上一页t2.下一页t3.回目录n");printf("nt请选择:");scanf("%d",&inp);switch(inp)case 1:if(n=0)printf("nt已到达首页nt按任意键重新选择");input=getchar();elsen=n-1;break;case 2:if(n=i-2)printf("nt已到达最末页nt按任意键重新选择");input=getchar();elsen=n+1;break;case 3:adm_servelist();break;defaul

18、t:printf("nt没有这项服务nt按任意键重新选择");input=getchar();while(inp!=3);( 4) 图书信息修改与删除功能模块修改:voidchange(intx)intinp,i=0,j;voidbook_search();FILE*fp,*fp1;charinput;structbookinfbooks,book_taxis20;doprintf("nnnt注意:您确定要修改该记录吗?n");printf("nt1.是t2.否n");printf("nt请输入:");scanf(

19、"%d",&inp);if(inp!=1&&inp!=2)printf("nt对不起没有这项服务n");printf("t按任意键重新选择nt");input=getchar();while(inp!=1&&inp!=2);if(inp=2)book_search();if(inp=1)printf("nnnt-请输入图书信息-nn");printf("t登录号:");scanf("%d",&books.num);printf(

20、"nt书名:");scanf("%s",books.bname);printf("nt作者名:");scanf("%s",books.wname);printf("nt分类号:");scanf("%s",books.clanum);printf("nt出版单位:");scanf("%s",books.pubcom);printf("nt出版时间:");scanf("%s",books.pubtim

21、e);printf("nt价格:");scanf("%f",&books.price);if(fp1=fopen("book.txt","r")!=NULL)dofread(&book_taxisi,sizeof(structbookinf),1,fp1);i=i+1;while(!feof(fp1);fclose(fp1);for(j=0;j<x;j+)if(books.num=book_taxisj.num)printf("nnnt对不起,这个编号已经使用过了n");p

22、rintf("t按任意键返回管理菜单");printf("0");input=getchar();book_search();break;for(j=x+1;j<i-2;j+)if(books.num=book_taxisj.num)printf("nnnt对不起,这个编号已经使用过了n");printf("1");printf("t按任意键返回管理菜单");input=getchar();book_search();break;book_taxisx=books;fp=fopen(&qu

23、ot;book.txt","w");for(j=0;j<i-1;j+)fwrite(&book_taxisj,sizeof(structbookinf),1,fp);fclose(fp);printf("nnt信息修改完成!按任意键返回");input=getchar();book_search();S删除:voiddel(inty)charinput;FILE*fp;intinp,i=0,j;structbookinfbook_taxis20;voidbook_search();voidadm_servelist();dopri

24、ntf("nnnt注意:您确定要删除该记录吗?n");printf("nt1.是t2.否n");printf("nt请输入:");scanf("%d",&inp);if(inp!=1&&inp!=2)printf("nt对不起没有这项服务n");printf("t按任意键重新选择nt");input=getchar();while(inp!=1&&inp!=2);if(inp=2)book_search();if(inp=1)if(fp

25、=fopen("book.txt","r")!=NULL)dofread(&book_taxisi,sizeof(structbookinf),1,fp);i=i+1;while(!feof(fp);fclose(fp);fp=fopen("book.txt","w");for(j=0;j<y;j+)fwrite(&book_taxisj,sizeof(structbookinf),1,fp);fclose(fp);fp=fopen("book.txt","a&q

26、uot;);for(j=y+1;j<i-1;j+)fwrite(&book_taxisj,sizeof(structbookinf),1,fp);fclose(fp);elseremove("book.txt");printf("nnt记录已删除!nnt按任意键返回nt");input=getchar();adm_servelist();( 5) 图书信息查询功能模块voidbook_search()voidadm_servelist();voidid_search();voidwr_search();voidbn_search();cha

27、rinput;FILE*fp;intinp;if(fp=fopen("book.txt","r")=NULL)printf("nnnt数据尚未初始化nnt请在管理菜单中增加图书信息n");printf("nt<按任意键返回管理菜单>nt");input=getchar();adm_servelist();elsedoprintf("nnnt1.按图书登录号查询n");printf("nt2.按图书作者查询n");printf("nt3.按图书名查询n");printf("nt4.回到主菜单n");printf("nnt请选择查询

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论