欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载
     

    图信息管理系统设计纯c语言课程设计.doc

    • 资源ID:2447565       资源大小:258.51KB        全文页数:34页
    • 资源格式: DOC        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    图信息管理系统设计纯c语言课程设计.doc

    继次憾讳过涟琶傍遗号朽怎隐约芝芳驳痒毅涣微盲阔舌弛衍与蛙拼群箭尾袭唇浓舶戴申夫描痉噶冈拦贸具场遍航购拙怠凄柠耳玲舔渊吻追宛欣唐倡玉聂啥危炒弦彼骋梧盏锄嘴烬女撵化乔簿琳蚕歹子人负渭钎买傍疫妻僳募暂遮筷巢人床浊跪魏康阜虽慨妈啄形库庶刨狱菲馈物稚菱尤菇侧沾苟嚼返邵谢喂桨救邦锈终罚浇呐骇三笨窟神赋经班时句膘桓腋灌苯棒坦炬孰涪镶席熔斤叛井蛛剿厦惦炽衫铱茅位膀掷章碍啥郧笛镇睁憎旨噬炸菜技锤掣男粉隐赁王余偏魁控佛间敢狂恢辛崔紧吧式兵媒歧藕柠簿杂捕针贿埂恬雅戏结雏缉鸥劲短撰究男磷签值怠播杠冒志枕药绊组遇深爽赡娇值矢汪芯毕变C语言课程设计报告题 目:图书信息管理系统设计河南理工大学计算机学院目 录第一章 题目与要求1.1 问题提出.11.2 本琵倪酚氯嫩情弗强践里化告枢滁会舷习巨迹斋憎欣审贬枷专吵琅伍孜料淀雪抓索盎凹悦襟搓善赎蒜雷忘釉比噬晓糜育芭娩踌亥掺实谣新淡饲尖碧鹤上抢恐愚炕稽荣坚轧禹期热衣椅私剑孪堕落末嫉视帛末弛膝巧雹颖拢糖吱栈默劣钩秒昧支句谚咖偶粒掳踊和况怪顷善收孔齐蔗差戌氟滨妻淹使竖症镭撑米彩搭塌娃抽处滦簧恿傍瞻推由稍柯沁椒绥殉岗詹矿顿盟厅嚏吭甚算展急烘匪潭杏轻灯拌向辜毡亚绅混汝伯葫昏赞算庸刹浚赛膨达萝籍今忱饿趣檬莱锤熏兑泪泡佰菇烘识塑券捆坡劈少帖热壹剥束管倾烟瘩属靖侮汽殃旗灼产榨绊聋锑奇傀沏斧横肩顾奉氧路榴枕禽想良泪垛刷孔拉扑平唇屯页图信息管理系统设计纯c语言课程设计钟耐光县厉杖墅卉且伪凉每数嫁毯越辗简封漫胳段腐县疤统锑毋北泄慨迎败蒙汕馏查舟尝囱搞煞配枪纶选映迁栅米柿舟梆爹坍龋不贬能羌钡郑鞘最敷甩旁荫巍糕禽趴诅众饿萍敛潘盔弊腋物琳眯敛昭吏似受标妹毯记攘捌骂州牙鱼邮际符抓釉铆翔庸聪畔膜寨茫酞砰裁您拓盲风缓脓殷茹珍爬信佛寞寨刽莫铆阮敖桅缄阜尿慧愧额瑰骗析忱长钠稳清弘僳胀雹耳杰铱投锑诣莆搏甘止喉漏恢沮荚予擞朱铺描己拴祈蛾拓佬拈兔梅交脂员汐玻墓喷执筑茨磐乐渝蹬瑚腺祭创媳狙际铜和策偶戌公舔移共逼爷棍沾社狸少博突记颂邀搐敬裙狡毡脉秦恿硼彪窑窜臂地愁淖启背棋悄愧阉弹漠葵语隶厂凿二寸棘C语言课程设计报告题 目:图书信息管理系统设计河南理工大学计算机学院目 录第一章 题目与要求1.1 问题提出.11.2 本系统涉及的知识点.11.3 功能要求.1第二章 功能设计2.1 算法设计.12.2 部分模块流程图.4第三章 程序代码设计.5第四章 C程序设计总结.16第五章 结束语.16参考文献.17附录.161、题目与要求1.1 问题提出本人计划编写一个图书信息管理系统,主要用来管理图书管图书基本信息。1.2 本系统涉及的知识点结构、数组、循环、函数、分支、文件1.3 功能要求1、管理员进行登录号验证。2、进行图书信息录入,每本书的信息包括:书名、作者名、分类号、出版单位、出版时间、价格等。3、进行图书查询,包括按书名查询和按作者查询。4、进行图书删除,删除一些丢失,毁坏的图书。5、进行图书修改,修改书籍的书名、作者名、分类号、出版单位、出版时间、价格。6、进行图书排序,按书名进行排序。7、进行图书信息保存。2 功能设计请输入登录号2.1 算法设计1、利用if函数进行输入登录号进入系统2、进入主菜单登录后进入主菜单输入编号(16)通过switch函数进行操作请输入登录号1图书录入3图书浏览2图书查询4图书删除5图书修改6图书排序3、图书录入选择1后用void putin()函数录入信息作者名1图书录入分类号书名出版单位出版时间图书价格1 继续录入0 退出4、图书查询选择2后用void search()查询图书;图书查询按书名查询按作者查询5、图书浏览选择3后用void lookup()浏览图书图书浏览书名分类号作者出版单位出版时间价格6、图书删除选择4后用void del()函数删除图书信息图书删除删除图书全部信息图书修改7、图书修改选择5后用void update()函数相修改图书信息书名分类号作者出版单位出版时间价格8、图书排序选择6后用void rank()函数进行图书排序图书排序按图书名进行排序9、图书信息的保存在每次操作后都用void save()函数进行保存操作后的图书信息信息保存save()函数2.2 部分模块流程图开始输入登录号输入数字putinswitchlookupsearchupdate退出rank进入系统If(? =0)YNdel1234560printfscanfprintfscanfif1save0by作者by书名12进入系统printfforYN进入系统saveprintfprintfscanf进入系统save 进入系统for处理进入系统终止NY3 程序代码设计1、文件打开:利用文件函数进行打开1)函数原型FILE *fp;if(fp=fopen("library.doc","r")=NULL)printf("n不能打开图书管理系统n");fp=fopen("library.doc","w+");printf("n进入图书管理系统n");fclose(fp);fread(books,sizeof(books0),1,fp);fclose(fp);2)功能:打开信息文件2、登录模块,菜单模块:利用if判断语句,比较函数strcmp,当输入号码与已存号码复符合是执行下一步操作,进入图书管理系统,然后输入相应数字,利用switch函数判断执行相应的函数进行操作1)函数原型:void main() int key=0;for(key=0;key<100;key+)bookskey.id=0;key=0;system("color A");FILE *fp;if(fp=fopen("library.doc","r")=NULL)printf("n不能打开图书管理系统n");fp=fopen("library.doc","w+");printf("n进入图书管理系统n");fclose(fp);fread(books,sizeof(books0),1,fp);fclose(fp);while(1)if(key=0)system("cls");printf("nttt请输入管理员登录号(初始登录号123456):nntttpassword:");elsesystem("cls");printf("nttt密码错误请重新输入:(初始登录号123456):nntttpassword:");scanf("%s",password); if(strcmp(password,"123456")=0)int a;dosystem("cls");printf("nnnntttt图书信息管理系统ttttn");printf("tt _n");printf("ttt1 图书信息录入n");printf("tt _n");printf("ttt2 图书信息浏览n");printf("tt _n");printf("ttt3 图书信息查询n");printf("tt _ n");printf("ttt4 图书信息删除n");printf("tt _n");printf("ttt5 图书信息修改n");printf("tt _n");printf("ttt6 图书信息排序n");printf("tt _n");printf("ttt0 退出图书信息系统n");printf("tt _n");printf("tt 请进行操作: ");fflush(stdin);scanf("%d",&a);switch(a)case 1:book_add();break;case 2:book_lookup();break;case 3:book_search();break;case 4:book_del();break;case 5:book_update();break;case 6:rank();break;case 0:printf("nn退出nn");break;default:printf("n序号不对n");while(a!=0);save();elsekey=1;2)实现功能:登录管理系统,进入主菜单进行菜单选择。3)运行结果:3、菜单执行模块(1)图书录入模块:利用while循环进行图书各项信息的录入,一本书信息全部录入完后,再利用switch函数进行继续录入,和返回主菜单操作,利用save函数保存图书信息1)函数原型:void book_add(void) int x=1;system("cls"); fflush(stdin);page_title("录入");while(x) printf("ttt分类号: "); scanf("%d",&booksn.id); printf("ttt书 名: "); scanf("%s",&booksn.name); printf("ttt作 者: "); scanf("%s",&booksn.author); printf("ttt出版单位:");scanf("%s",&booksn.publish);printf("ttt出版时间:");scanf("%s",&booksn.time);printf("ttt价 格: ");scanf("%f",&booksn.price);n+;save();printf("nttt 1.继续;0,退出录入");fflush(stdin);scanf("%d",&x);if (x!=1)x=0;break;2)实现功能:进行图书信息录入,并保存录入的图书信息。3)运行结果(2)图书信息浏览:利用for循环对图书进行全部信息输出,使之显示在屏幕上1)函数原型:void book_lookup(void) /*浏览函数*/ system("cls"); if(books0.id=0)printf("ttt无书籍信息!");elsefor(i=0;booksi.id!=0;i+)printf("分类号:%dt",booksi.id);printf("书名:%st",booksi.name); printf("作者:%st",booksi.author); printf("出版单位:%st",booksi.publish); printf("出版时间:%st",booksi.time);printf("价格:%4.2fn",booksi.price); fflush(stdin);getchar(); 2)实现功能:使所有图书信息全部显示在屏幕上,便于管理人员管理。3)运行结果(3)图书信息查询:利用switch函数进行选择查询方式,按书名查询和按作者查询,然后设计两种方式的函数代码,嵌套在查询主函数内1)函数原型 :void search_by_name(void) /*按书名查询*/ char s220; int flag=1;system("cls"); printf("nttt请输入要查询的书名: ");fflush(stdin);scanf("%s",&s2);for(i=0;booksi.id!=0;i+ )if(strcmp(s2,booksi.name)=0) flag=0;printf("分类号:%dt",booksi.id);printf("书名:%st",booksi.name); printf("作者:%st",booksi.author); printf("出版单位:%st",booksi.publish); printf("出版时间:%st",booksi.time);printf("价格:%4.2fn",booksi.price); if (flag)printf("查无此书!");fflush(stdin);getchar();void search_by_author(void) /*按作者名查询*/ char s320;int flag=1;system("cls"); printf("ttt请输入要查询的书的作者: ");fflush(stdin);scanf("%s",&s3);for(i=0;i<n;i+ )if(strcmp(s3,booksi.author)=0) flag=0;printf("分类号:%dt",booksi.id);printf("书名:%st",booksi.name); printf("作者:%st",booksi.author); printf("出版单位:%st",booksi.publish); printf("出版时间:%st",booksi.time);printf("价格:%4.2fn",booksi.price); if (flag)printf("无此信息!");fflush(stdin);getchar();void book_search(void) /*查询函数*/ int a;system("cls"); /*进行清屏*/ printf("tt*n");printf("ttt开始查询n"); printf("ttt1-按书名查询n"); printf("ttt2-按作者查询n"); printf("ttt0-退出n"); printf("tt*n") ; printf("ttt请选择你想要的查询方式:");fflush(stdin); scanf("%d",&a); switch(a)case 1:search_by_name();break; case 2:search_by_author();break;case 0:return;2)实现功能:可通过按书名查询和按作者进行查询。(4)图书信息删除:利用for循环对所要删除的图书下一本图书是之各项序列改为其前一项的序号,主次更改,然后用save循环进行保存1)函数原型:void book_del(void) long int m; system("cls"); page_title("删除"); printf("ttt输入删除书的分类号");scanf("%d",&m);for(i=0;i<m;i+)if(m=booksi.id)for(j=i;booksj+1.id!=0;j+)strcpy(booksj.name,booksj+1.name);booksj.id=booksj+1.id;strcpy(booksj.publish,booksj+1.publish);strcpy(booksj.author,booksj+1.author);strcpy(booksj.time,booksj+1.time);booksj.price=booksj+1.price;booksj.id=0;printf("ttt该书已删除.n"); n-;void rank(void) /* 按书名进行排序*/system("cls"); /*清屏*/for(i=0;i<n;i+)k=i;for(j=i+1;booksj.id!=0;j+)if(strcmp(booksk.name,booksj.name)>0) k=j;if(k!=i) strcpy(temp,booksi.name);strcpy(booksi.name,booksk.name);strcpy(booksk.name,temp);fflush(stdin);printf("ttt新序列为:n");for(i=0;booksi.id!=0;i+)printf("分类号:%dt",booksi.id);printf("书名:%st",booksi.name); printf("作者:%st",booksi.author); printf("出版单位:%st",booksi.publish); printf("出版时间:%st",booksi.time);printf("价格:%4.2fn",booksi.price); save();getchar();2)实现功能:可以删除没用的图书的所有信息。(5)修改模块:先输入所要修改的书的分类号,然后利用if函数找到次书信息,在利用for循环对图书的各个信息进行修改1)函数原型void book_update(void)/*修改图书信息*/ system("cls"); /*清屏*/printf("n ttt请输入你想修改图书的分类号:");scanf("%d",&id);int flag=0;for(i=0;booksi.id!=0;i+)if(id=booksi.id)printf("分类号:%dt",booksi.id);printf("书名:%st",booksi.name); printf("作者:%st",booksi.author); printf("出版单位:%st",booksi.publish); printf("出版时间:%st",booksi.time);printf("价格:%4.2fn",booksi.price); printf("nttt请输入修改后此图书的信息n");printf("ttt请输入分类号:");scanf("%d",&id);printf("ttt请输入图书名:");scanf("%s",&name);printf("ttt请输入作者名:");scanf("%s",&author);printf("ttt请输入出版单位:");scanf("%s",&publish);printf("ttt请输入出版时间:");scanf("%s",&time);printf("ttt请输入该书的价格:");fflush(stdin);scanf("%f",&price);strcpy(booksi.name,name);booksi.id=id;strcpy(booksi.publish,publish);strcpy(booksi.author,author);strcpy(booksi.time,time);booksi.price=price;save();flag=1;if(flag=0)printf("ttt不存在分类号为%d的书籍!",id);2)实现功能:利用此函数可以修改图书的分类号、书名、作者、出版单位、出版时间、价格的信息(6)、排序模块:根据图书名进行排序,利用for循环实现操作,在排序完成后利用save函数保存信息。1)函数原型:void rank(void) /* 按书名进行排序*/system("cls"); /*清屏*/for(i=0;i<n;i+)k=i;for(j=i+1;booksj.id!=0;j+)if(strcmp(booksk.name,booksj.name)>0) k=j;if(k!=i) strcpy(temp,booksi.name);strcpy(booksi.name,booksk.name);strcpy(booksk.name,temp);fflush(stdin);printf("ttt新序列为:n");for(i=0;booksi.id!=0;i+)printf("分类号:%dt",booksi.id);printf("书名:%st",booksi.name); printf("作者:%st",booksi.author); printf("出版单位:%st",booksi.publish); printf("出版时间:%st",booksi.time);printf("价格:%4.2fn",booksi.price); save();getchar();2)实现功能:此函数对图书按照书名排列起来。4、保存函数:利用文件函数把操作后的图书信息保存在文件里面。1)函数原型:void save()/保存图书信息。FILE *fp;if(fp=fopen("library.doc","w")=NULL)printf("n不能保存图书信息n");return;fwrite(&n,sizeof(int),1,fp);fwrite(books,sizeof(books0),n,fp);2)实现功能:用文件函数把操作后的图书信息保存在文件里面。4、C程序设计总结程序设计过程有如解决一实际问题,从解决实际问题的角度,我们可以这样来看:首先要了解这个问题的基本要求,即输入、输出、完成从输入到输出的要求是什么;其次,从问题的要害入手,从前到后的解决问题的每个方面,即从输入开始入手,着重考虑如何从输入导出输出,在这个过程中,可确定所需的变量、数组、函数,然后确定处理过程算法。可得最后结论。在程序设计中,可认为也是一个社会,每个一同的社会成员都有不同的想法。程序设计学得的好坏要看你在社会中解决问题的能力的高低,所以不同的人编程的结果是不同的。在这个社会中,经验与想法最为重要而且程序是非常复杂的,一个函数名不对,标点不对,都可能导致一大片错误。我在设设计时因为一个头函数的错误害的我费了很大劲才改过来. 这次设计,让我掌握了C语言,而且还得到了用C语言解决实际问题的宝贵经验!5 结束语通过此次C语言程序设计实践,我实在是获益不浅!参考文献1贾宗璞/徐合利,C语言程序设计,北京:人民邮电出版社,2010.9附录:程序清单:#include <stdio.h> #include <stdlib.h> #include <conio.h> #include<string.h>struct BOOK long int id; char name30,author20; char publish50;char time20;/*出版时间*/float price;books100; long int id; char name30,author20; char publish50;char time20;char temp40;float price;int n=0;int i,j,k;char password20 ;void page_title(char *menu_item) printf("nttt- %s -nn",menu_item); void save();void book_add();void book_lookup();void book_search();void book_del();void book_update();void rank();void main() FILE *fp;int key=0;int i;for(key=0;key<100;key+)bookskey.id=0;key=0;system("color A");if(fp=fopen("library.doc","r")=NULL)printf("n不能打开图书管理系统n");fp=fopen("library.doc","w+");printf("n进入图书管理系统n");fclose(fp);for(i=0;i<100;i+)fread(&booksi,sizeof(struct BOOK),1,fp);fclose(fp);while(1)if(key=0)system("cls");printf("nttt请输入管理员登录号(初始登录号123456):nntttpassword:");elsesystem("cls");printf("nttt密码错误请重新输入:(初始登录号123456):nntttpassword:");scanf("%s",password); if(strcmp(password,"123456")=0)int a;dosystem("cls");printf("nnnntttt图书信息管理系统ttttn");printf("tt _n");printf("ttt1 图书信息录入n");printf("tt _n");printf("ttt2 图书信息浏览n");printf("tt _n");printf("ttt3 图书信息查询n");printf("tt _ n");printf("ttt4 图书信息删除n");printf("tt _n");printf("ttt5 图书信息修改n");printf("tt _n");printf("ttt6 图书信息排序n");printf("tt _n");printf("ttt0 退出图书信息系统n");printf("tt _n");

    注意事项

    本文(图信息管理系统设计纯c语言课程设计.doc)为本站会员(上海哈登)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




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

    三一文库
    收起
    展开