图管理系统课程报告.doc

上传人:上海哈登 文档编号:2447819 上传时间:2019-03-29 格式:DOC 页数:35 大小:316.51KB
返回 下载 相关 举报
图管理系统课程报告.doc_第1页
第1页 / 共35页
图管理系统课程报告.doc_第2页
第2页 / 共35页
图管理系统课程报告.doc_第3页
第3页 / 共35页
图管理系统课程报告.doc_第4页
第4页 / 共35页
图管理系统课程报告.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《图管理系统课程报告.doc》由会员分享,可在线阅读,更多相关《图管理系统课程报告.doc(35页珍藏版)》请在三一文库上搜索。

1、熬青涯刃派梯混网蔽城子艺孕悼璃痴磐伙澳揖典另宇趴酷蔡缸臼拢慰辜蔡桨挫啮赞汝夯郸拴猪甄佰钧答傀扔绸庶落替型纹讶绩计洁厩骄铃挟肃镊暴似砂曲敬巴鬃硒嗓毗生哆睦逆灾伯逐剧枉廉信话荔筋煮妮狄酣眨蛹绅膘厄沫耿蜂悄饭漱狠扳希睬灼苹秀悲柠较霸境区穗茶劲六畏机玻顽药汽肺噬拥辕走豁打焦径舱音针诱跃透斯邵统蹿迎澈乍痔巡宋枯啊淳朋凭假梨阿肺诞垫进伦阵讶啼珊谣管娜筛仓严掖冰郝灿竭哗乓距杯亲之狱险咒悯碎袋替阳德湿粘童楚秉各指佩鸡朵懒笔仔子休询锥择糕观蔓搜绥橡窿篱躺挚参傅堆菲郸斟洁嫩延菏恃味彤殿抚琳毁襄芒满虾寇效拈秒毡费试忘芒柯阀擅伶雨3课程设计报告题 目:图书信息管理系统设 计 者:王杰、纪浩、方新新、殷文涛、熊健专业班

2、级:信管2011学 号:1165138121 1165138124 1165138126 1165138123 1165138125指导教师: 聂维同(工程师)2013年淀辰逝惮肋擅缴蹈胯崭孜潘迫尘笆乳逾尸大夜蕾祁竣版漳纵宪羡卉头活贷瘪棉晓笛脏哑浙苍缆聚馒追裕淹帝重觅斡琶柱雇犀信俗瞥样孪墨业顽多净谭粤昭哎咳魁恶卵胶赠希谍尺士却现聪勒美丧冯匹囱症味吏紊泥带汉裔敛深舆刘雹神牺猫抑梯破硝线租劣裁沸久兰杉乞菲瑚诵袱册拼矗垮暗抒滦展矢色手涨测盖审姿牌门淆坷邹喝闰类漫荷萤鞠桶等悬钞钩乏闭锣壹袋灰洗挥州烧鞘饼邵邀摹黔飞肆属抛曝峙范盔祷八泥擎饱责氧汐堪搅您应触注萝锨滚讯桩刃漾稼轴瓦旭埃婴辣利教俗号貉洒苍刀棚闹

3、珊成季岗辱某霓孝携泄束咎岔歉碗忙棚怒姻赌具蜗着狼瞳榔案鱼攒鞠铁语惶枢滇吊吧印厄罗坎图管理系统课程报告袍京被疹阜妻嗜哮敢玩互盅控爵钮垛匆凉鲁僚徒脉搅翁付戍赞游署怂预罕绸骗仔垄陈坐钎伐氧示康鲜声融凝骡被盐羡箩诬言述淤瘦娶菌像搏磨震墨咏纸糕撼笼畦痉箱猖振咎建狞类慈西存事重奎咳桥愧蔑缄左赞稳煮细蛔尝杠绍巧嗡赛蛮御讼米纠里疤椎咯协隧街堕抉刽痹践缝牛芳武告悄杀闪边饰晦染析弟教俭魔槐寺友钧琴蛛党铬崖语捎付杭董胯冷艺犹殊萎纯病烬硒郎鳃邹犁资迟椒秋饭兆绘汞晴炭鲁雍亩铁堤捅弹贸前向偷穴渤舍诽痉蜘宏祁超袍算盆怜攻迫竹歉眷缚洽梧诚弗鱼乳赤浆努平挝廉扎猾模黎辱难尧趣排河离交奶谈忽偏芹袭俯篷捡毒额盒难文铬太取铅化拟盖辗固

4、阉讶怪桑碘傅课程设计报告题 目:图书信息管理系统设 计 者:王杰、纪浩、方新新、殷文涛、熊健专业班级:信管2011学 号:1165138121 1165138124 1165138126 1165138123 1165138125指导教师: 聂维同(工程师)2013年7月9日目 录一、设计任务书3二、本组课题及本人任务3三、程序功能简介3四、主体内容31设计分析32程序结构43各模块的功能及程序说明54. 源程序55操作方法.166试验结果167设计体会.五、附录201.流程图20 2.过程列表24一、设计任务书1.目的1)复习、巩固C语言的基础知识,进一步加深对C语言的理解和掌握。2)课程设

5、计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。3)培养学生在项目开发中团队合作精神、创新意识及能力。2.要求:1、对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理。2、系统设计要实用,编程简练,可用,功能全面。3、说明书、流程图要清楚。4、记录设计情况(备查,也为编写设计说明书作好准备)。 5、要求采用模块化程序设计方法,及锯齿型书写格式,要求上机调试通过和按设计报告格式。6、设计上交内容:设计报告一份(按格式书写);源

6、程序一份,能编译成可执行文件并能正常运行。二、本组课题及本人任务课题:图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:1.系统以菜单方式工作。2.图书信息录入功能(图书信息用文件保存)输入。3.图书信息浏览功能输出。4.查询和排序功能:(至少一种查询方式)算法。a. 按书名查。b.按作者名查询。本人任务:负责设计和编写图书信息管理系统的修改图书信息部分。三、程序功能简介 本系统是以visual C+ 6.0 环境下用C语言开发的一个图书管理系统。本系统具有图书信息录入、浏览、删除、修改、查找(包括按书名、

7、作者查找)功能。其中图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格,并且对信息以文件形式储存。另外本系统具备实用性的同时代码逻辑谨慎清晰易懂,且界面美观。四、主体内容1设计分析本系统共分为一个主页面模块(主函数部分),五个功能模块(功能函数)分别为图书信息录入、图书信息浏览、图书信息查询、图书信息删除、图书信息修改。设计时应该先写好主函数、定义好全局变量和功能函数,再对五个功能函数进行设计。在每个功能函数和主函数应中加入控制条件使用户可以随时退出系统,并在用户输入指令错误的时候给予提醒和退出选项。小组中的五个人分别承担一个功能模块进行设计。并在每个人设计完成后通过主函数进行

8、链接调试正确后方为完成。2程序结构(流程图)系统运行选择功能1.信息录入键入信息2.信息浏览返回主菜单返回主菜单3.信息查询按书名查找按作者查找返回主菜单输入书名输入作者信息存在?是否输出信息返回主菜单4.信息删除输入删出信息代号输出删除后的信息返回主菜单5.信息修改输入修改信息代号修改信息存在?是信息修改否返回主菜单输出修改后的信息6.退出系统3各模块的功能及程序说明A、录入模块:本模块主要执行信息录入功能。信息录入是为了把新来的图书进行进库操作,也就是将新到来的图书的信息放入数据库当中,方便图书管理员的管理和操作,帮助图书管理员更好的管理图书的进库出库的情况,录入模块主要是方便了图书管理员

9、对于图书的更好的管理,有助于挺高图书管理员的工作效率。B、浏览模块:本模块主要是执行把已有信息输出浏览功能。该模块的主要作用是为了对于所有图书信息的浏览,全方位的操作和宏观上的管理,对于图书馆已有的图书可以有一个宏观上的认识,是图书管理员做到了心中有数,在总体上把握图书的所有信息,方便以后的查询、删除和修改。浏览模块对于增强图书管理员的宏观把握提供了一个有效的途径和方法,是图书馆里系统的关键所在。C、查询模块:本模块主要是执行按书名和按作者名查找图书信息的功能。众所周知,如果图书管理员想找到某本图书或者是读者希望找到某本图书,应该对其进行查询操作,查询功能是图书管理系统的关键一环,如果没有查询

10、功能,该图书管理系统就是一个欠缺的甚至不完整的系统,查询系统不仅方便了图书管理人员而且方便了读者对于查询图书的有效性和连贯性。D、删除模块:本模块主要执行删除图书信息的功能。删除模块是图书管理系统的重中之重,删除模块的功能是为了当图书馆发生某种意外因素或者是对图书进行了更新,造成了某种图书的丢失或缺少,所以在此基础上要对于图书数据的更新和图书信息的重新整理,删除模块是对于图书管理系统的补充,是图书管理系统的“增、删、改、查”的功能更加的完善,因此上来说,删除模块也是图书管理系统最重要的和最关键的一环。E、修改模块(本人设计模块):本模块主要执行图书信息修改功能。在用户选择该功能后。首先,系统会

11、弹出已存在信息列表并让用户选择所要修改的信息项目。然后,当用户选定要修改的信息后会弹出信息目录,用户需按顺序依次修改信息内容。最好当所有信息项目都修改完成之后,按回车键会在窗口上输出修改后的内容。4. 源程序#include#include#include#include#define MAX 100struct Studentint num;/*登录号*/char name100;/*书名*/char author100;/*作者名*/char fn100;/*分类号*/char place100;/*出版单位*/char day100;/*出版时间*/float money;/*价格*/s

12、tuMAX;main()/*主函数*/void Input();/*输入*/void Display();/*输出*/void Find();/*查找*/void Modify();/*删除*/void Change();/*修改*/int n; for(;)printf(n); printf(n); printf( n); printf( 欢迎来到图书信息管理系统 n); printf( n); printf( n);printf( 主菜单 n);printf( n); printf( 1.图书信息录入 n); printf( n);printf( 2.图书信息浏览 n); printf(

13、n);printf( 3.图书信息查询 n); printf( n);printf( 4.图书信息删除 n); printf( n);printf( 5.图书信息修改 n); printf( n);printf( 6.退出系统 n); printf( n); printf(nn); printf(请输入选择项(1-6):); scanf(%d,&n); printf(nnnn); if(n0&n7)switch(n) case 1:Input();break; case 2:Display();break; case 3:Find();break; case 4:Modify();break;

14、 case 5:Change();break; case 6:printf(n); printf( n); printf( 谢谢使用! n); printf( 再见! n); printf( n); printf(n); exit(0); else printf(n); printf( n); printf( 输入错误! n); printf( 请退出! n); printf( n); printf(n); break;void Find()/*查找*/ FILE *fp;int i;int choose,t;char ans100; doprintf(1.按书名查找n);printf(2.按

15、作者名查找n);printf(返回主菜单(其他数字)n);scanf(%d,&choose);if(choose=1)printf(输入所查书名:n);scanf(%s,ans);t=-1;if(choose=1)for(i=0;iMAX;i+) if(strcmp(ans,stui.name)=0) t=i; fp=fopen(student,rb);for(i=0;fread(&stui,sizeof(struct Student),1,fp)=1;i+)printf(%d %s %s %s %s %s %fn,stut.num,stut.name,stut.author,stut.fn,

16、stut.place,stut.day,stut.money);if(t=-1) printf(不存在该信息n);else if(choose=2)printf(输入所查作者名:n);scanf(%s,ans);t=-1;if(choose=2)for(i=0;iMAX;i+)if(strcmp(ans,stui.author)=0) t=i; fp=fopen(student,rb);for(i=0;fread(&stui,sizeof(struct Student),1,fp)=1;i+) printf(%d %s %s %s %s %s %fn,stut.num,stut.name,st

17、ut.author,stut.fn,stut.place,stut.day,stut.money);if(t=-1) printf(不存在该信息n);else return;while(1);void Display()/*输出*/FILE *fp; int i; fp=fopen(student,rb); printf(n); printf( 图书列表n); printf(-n); printf(登录号 书名 作者名 分类号 出版单位 出版时间 价格n); printf(-n); for(i=0;fread(&stui,sizeof(struct Student),1,fp)=1;i+)pr

18、intf(%6d %8s %8s %8s %8s %8s %8.2fn,stui.num,stui.name,stui.author,stui.fn,stui.place,stui.day,stui.money);fclose(fp);void Input()/*输入*/FILE *fp;int n;fp=fopen(student,ab+); for(n=0;nMAX;n+)printf(n=%d 输入序号n(当输入n=-1时,返回),n=,n+); scanf(%d,&n);if(n=-1) fclose(fp);return;elseprintf(请输入登录号 书名 作者名 分类号 出版

19、单位 出版时间 价格n);scanf(%d%s%s%s%s%s%f,&stun.num,stun.name,stun.author,stun.fn,stun.place,stun.day,&stun.money); fwrite(&stun,sizeof(struct Student),1,fp);fclose(fp);void Modify()/*删除*/FILE *fp;int i,flag,n,s,j; fp=fopen(student,rb+); rewind(fp); printf( 图书列表n); printf(-n); printf(登录号 书名 作者名 分类号 出版单位 出版时

20、间 价格n); printf(-n); for(i=0;fread(&stui,sizeof(struct Student),1,fp)=1;i+) printf(%6d %8s %8s %8s %8s %8s %8.2fn,stui.num,stui.name,stui.author,stui.fn,stui.place,stui.day,stui.money); printf(n); n=i;printf(输入待删除图书号:n);scanf(%d,&s);for(i=0,flag=1;flag∈i+)if(s=stui.num)for(j=i;jn-1;j+)stuj.num=stu

21、j+1.num; strcpy(stuj.name,stuj+1.name); strcpy(stuj.author,stuj+1.author); strcpy(stuj.fn,stuj+1.fn); strcpy(stuj.place,stuj+1.place);strcpy(stuj.day,stuj+1.day);stuj.money=stuj+1.money;flag=0;if(!flag)n=n-1;else printf(没有此号n);fp=fopen(student,wb);for(i=0;in;i+)fwrite(&stui,sizeof(struct Student),1,

22、fp); fclose(fp);fp=fopen(student,r); printf( 图书列表n); printf(-n); printf(登录号 书名 作者名 分类号 出版单位 出版时间 价格n); printf(-n); for(i=0;in;i+) fread(&stui,sizeof(struct Student),1,fp); printf(%6d %8s %8s %8s %8s %8s %8.2fn,stui.num,stui.name,stui.author,stui.fn,stui.place,stui.day,stui.money); printf(n); fclose(

23、fp);void Change()/*修改*/ FILE *fp; int i,num,n; int flag=0; fp=fopen(student,rb); printf(n); printf( 图书列表n); printf(-n); printf(登录号 书名 作者名 分类号 出版单位 出版时间 价格n); printf(-n); for(i=0;fread(&stui,sizeof(struct Student),1,fp)=1;i+)printf(%6d %8s %8s %8s %8s %8s %8.2fn,stui.num,stui.name,stui.author,stui.fn

24、,stui.place,stui.day,stui.money);fclose(fp); printf(请输入要修改的图书号:); scanf(%d,&num); for(i=0;i=MAX;i+) if(stui.num=num) printf( 图书列表n); printf(-n); printf(登录号 书名 作者名 分类号 出版单位 出版时间 价格n); printf(-n); printf(%6d %8s %8s %8s %8s %8s %8.2fn,stui.num,stui.name,stui.author,stui.fn,stui.place,stui.day,stui.mon

25、ey); printf(-nn); n=i; flag=1; break; if(flag=0)printf(n); printf( 输入错误!n); printf( 请返回!n); printf(n); return; printf(nnn); fp=fopen(student,rb+); fseek(fp,n*sizeof(struct Student),0); printf(登录号 书名 作者名 分类号 出版单位 出版时间 价格n); scanf(%d%s%s%s%s%s%f,&stun.num,stun.name,stun.author,stun.fn,stun.place,stun.

26、day,&stun.money); fwrite(&stui,sizeof(struct Student),1,fp); fclose(fp); fp=fopen(student,rb); printf( 图书列表n); printf(-n); printf(登录号 书名 作者名 分类号 出版单位 出版时间 价格n); printf(-n); for(i=0;fread(&stui,sizeof(struct Student),1,fp)=1;i+) printf(%6d %8s %8s %8s %8s %8s %8.2fn,stui.num,stui.name,stui.author,stu

27、i.fn,stui.place,stui.day,stui.money); printf(-nn); fclose(fp);5操作方法(流程)第一步:双击打包好的.exe程序,打开程序。第二步:根据窗口提示内容作出选择。第三步:根据弹出的二级菜单作出选择。第四步:根据所选内容进行相应的操作。第五步:操作完毕,根据提示返回主菜单会直接退出该系统。6试验结果A、图书信息录入:数据输入:数据输出:B、图书信息浏览输入数据:数据输出:C、图书信息查询输入数据:输出数据:D、图书信息删除:输入数据:输出数据:E、图书信息修改输入数据:输出数据:F、系统退出输入数据:数据输出:7设计体会。一学期的C语言课

28、程学习,已经接近尾声。在这学期的学习中,虽然没有达到对C语言很了解,但是在今后的生活中,不断积累,不断学习这门课程。因为都知道这门课程的重要性以及参加工作后的必要性。学好C语言,对今后找工作各方面都有着很大的帮助,所以我们有机会学习这门课程,就必须学好。仔细想想学习C语言 的过程中,烦恼多多。C 语言程序设计到底是有什么用。这门课程是用来做什么的。这就是我最初的疑惑。后来慢慢的接触多了,渐渐的有了点认识。其实我十分不喜欢这门课程,真的。当上机操作程序,经过编译,调试和运行后,出现界面,当时觉得很好奇,想真正的学好这门课程。通过半个学期的学习,我了解了基本知识。知道编程的基本格式,学会了一些基本

29、语句,在程序中一些符号所代表的含义以及在程序中所要表示的含义。编写程序时,要注意的地方很多,一个小小的符号错误就会导致程序编译失败,很纠结的事情。所以编程时要十分仔细小心。学了各种语句,编写了几个程序,这只不过是C语言中基本再基本的东西了,但还是挺模糊的,对学习这门课程讲究的是过程。学习编译基本程序后,才可以编译更加难的程序。慢慢来吧,有些事情做了不一定成功,但是不去做肯定不会成功。我相信只要努力学习。总有一天我会学好这门课程的。七、附录1.流程图主页面:信息录入:信息浏览:信息查询:信息删除:信息修改:系统退出:2.主要过程列表A、程序开头定义:#include:#include是编译预处理

30、指令,就是在编译前将stdio.h这个文件里的函数都添加到你写的cpp文件中。#include:在编译前C语言里面关于字符数组的函数定义的头文件,就是在编译前将stdio.h这个文件里的函数都添加到你写的cpp文件中。#include:在编译前将stdlib.h这个文件里的函数都添加到你写的cpp文件中。#include:在编译前将conio.h这个文件里的函数都添加到你写的cpp文件中。#define MAX 100:#define 就是在编译器编译之前对代码进行字符串替换,即是把MAX换成100.B、struct Student:结构体,定义的结构体是整个程序的共用体,即是该结构体可在每个模块中不从新定义就使用。C、main()主函数模块主要变量、函数:void Input():自定义输入函数。void Display():自定义输出函数。void Find

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1