c语言 图书管理系统 上机实验报告_第1页
c语言 图书管理系统 上机实验报告_第2页
c语言 图书管理系统 上机实验报告_第3页
c语言 图书管理系统 上机实验报告_第4页
c语言 图书管理系统 上机实验报告_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

成都信息工程大学计算机系课程实验报告实验课程C语言程序设计基础实验项目图书管理系统指导教师李莉丽学生姓名学生学号20100班级计算机科学与技术实验地点5201实验时间2011年5月18日实验成绩评阅老师一【上机实验目的】设计并实现该课程设计的目的主要在于1对一定规模的综合软件编程有一定的经历与认识。在做的过程中,你会发现,提前的规划即分析与设计重要过编程过程,否则会走很多弯。2综合并结合现实应用使用C语言的知识。这个设计会用到C语言这门课的全部知识,其中以文件、数组与链表为主,书中提到的主要及重点算法都会使用到。3不仅涉及编程,还涉及到功能分析、模块规划等方面的知识,这些知识在后续课程学习时,会经常使用。这些知识在学软件工程这门课时,会系统讲解。希望有了这次的经历,你能更好的体会软件工程这门课的意义,并能学好和用好其中的知识。4每项功能的实现,一般有多种方法,这里都强调使用时空效率最高的方法,此次实现只是让你有一个初步的认识,在下学期学习了数据结构后,你就知道为什么让你这样做,你也对数据结构这门课的作用及意义有所了解。二【实验环境】PC机每人1台三【上机实验内容】编写图书管理系统,具有以下基本功能(1)各种基本数据的录入。如图书资料基本信息录入等。(2)各种基本数据的修改。即允许对以及录入的数据重新进行编辑、修改。(3)各种基本数据的插入。如在图书采购信息中插入一条新信息等。(4)各种基本数据的删除。如假设某本书遗失且馆藏数为0,删除该书的相关信息等。(5)基于各种数据的查询。如书名中含有“计算机”的所有书籍、全部借出的所有图书等。(6)基于各种基本数据的统计计算。四【上机调试程序流程图】(注可打印)调用_WINDOW函数,设置界面属性调用WORDS函数在相应位置输出文字调用PLAY,输入Y的值PLAY开始调用CHOOSE显示光标调用ADD函数调用MANAGE函数调用SEARCH函数调用STA函数退出,执行EXIT0结束五【上机调试中出现的错误信息、错误原因及解决办法】读写错误FOPEN的时候改成用二进制读写目前不知道为什么不用二进制不能读写六【上机调试后的源程序及还存在的问题】INCLUDEINCLUDEINCLUDEINCLUDEINCLUDEINCLUDEDEFINEKEY_UP72DEFINEKEY_DOWN80DEFINEKEY_ENTER28DEFINEKEY_N49DEFINEKEY_Y21DEFINELENSIZEOFSTRUCTLINKLISTTYPEDEFSTRUCTBOOK1/图书基本信息结构体/CHARNAME20CHARWRITER30CHARTYPE20CHARNUM20CHARTIME20CHARPRESS20CHAREDITION20CHARISBN40FLOATPRICEINTCOUNTINTLENDNUMBBASIC/图书资料基本信息中图法分类号、图书编号、书名、作者(要考虑多个作者情况)、出版社、出版日期、ISBN、版次、定价、馆藏数、借阅数等。/TYPEDEFSTRUCTBOOK2/图书采购信息结构体/CHARNAME20CHARWRITER20CHARTIME15INTNUMFLOATPRICEFLOATMONEYCHARBILL30BPURCHASE/图书采购信息书名、作者、采购日期、采购数量、采购单价、采购金额、发票号码、图书编号等。/TYPEDEFSTRUCTBOOK3/图书借阅信息结构体/需要输入的信息/CHARNAME20CHARPERSON20CHARCOMPANY20CHARNUM20/借书证号/CHARBTIME15/运算可得信息/CHARRTIME15CHARFINE20BLEND/图书借阅信息借阅人、借阅人所在单位、借书证号、所借书名、借阅日期、归还日期、逾期罚款等。借阅期限为一个月,逾期1天,罚款1角。/STRUCTLINKLISTBBASICBINFOSTRUCTLINKLISTNEXTINTKEYVOIDMENUVOID_WINDOWVOIDWORDSVOIDBOXINT,INT,INT,INTINT_CHOOSEINTBOT,INTTOPVOIDPLAYINTINTREADSUMVOIDADDVOIDADDBOOKVOIDADDBUYVOIDADDBORROWVOIDMANAGESTRUCTLINKLISTCREATEVOIDMODIFYVOIDDELETEVOIDINSERTVOIDSEARCHVOIDSEARCHNAMEVOIDSEARCHWRITERVOIDORDERWBBASICBINFO100VOIDORDERWBBASICBINFO100INTHALFNINTSUM,BBASICBINFO100,CHARFINDINTHALFWINTSUM,BBASICBINFO100,CHARFINDVOIDSTAVOIDBLISTVOIDBMONEYINTMAINVOIDMENUVOIDMENUINTY_WINDOW/显示窗口/WORDS/显示菜单文字/YCHOOSE7,19/光标/PLAYY/根据键盘值操作/VOID_WINDOW/窗口初始化/TEXTBACKGROUNDBLUETEXTCOLORWHITECLRSCRBOX1,1,24,80VOIDWORDS/显示菜单文字/TEXTCOLORWHITEGOTOXY30,7TEXTBACKGROUNDREDCPRINTF“ADDBOOKINFO“TEXTBACKGROUNDBLUEGOTOXY30,10CPRINTF“MANAGEBOOK“GOTOXY30,13CPRINTF“SEARCHBOOK“GOTOXY30,16CPRINTF“BOOKSTATISTIC“GOTOXY30,19CPRINTF“EXIT“GOTOXY35,22TEXTCOLORLIGHTGRAYTEXTBACKGROUNDBLUECPRINTF“MAINMENU“GOTOXY25,2TEXTCOLORREDHIGHVIDEOCPRINTF“THELIBRARYMANAGEMNTPROGRAM“NORMVIDEOVOIDBOXINTX,INTY,INTHIGH,INTWIDTH/画方框/INTIGOTOXYX,YPUTCHAR0XDAFORI1IBOTUPBARYYY3BREAKCASEKEY_DOWNIFYNEXTP1IFFREADP2NEXTNULLFCLOSEFPRETURNHEADVOIDMODIFYSTRUCTLINKLISTP,HEADCHARFIND30INTI,KY,SUMFILEFPPHEADCREATESUMREADSUMCLRSCRPRINTF“PLESEINPUTTHENAMEOFTHEBOOKYOUWANTTOMODIFY“SCANF“S“,FINDFORI0IBINFONAME0GOTOXY2,2CPRINTF“PLEASEINPUTTHECLASSFICATIONOFCHINESELIBRARYCLASSIFICATION“SCANF“S“,GETCHARGOTOXY2,4CPRINTF“PLEASEINPUTTHEBOOKSNUMBER“SCANF“S“,GETCHARGOTOXY2,6CPRINTF“PLEASEINPUTTHEBOOKSNAME“SCANF“S“,GETCHARGOTOXY2,8CPRINTF“PLEASEINPUTTHEBOOKSWRITER“SCANF“S“,GETCHARGOTOXY2,10CPRINTF“PLEASEINPUTTHETHEBOOKSPRESS“SCANF“S“,GETCHARGOTOXY2,12CPRINTF“PLEASEINPUTTHEBOOKSEDITION“SCANF“S“,GETCHARGOTOXY2,14CPRINTF“PLEASEINPUTTHEBOOKSPUBLISHTIME“SCANF“S“,GETCHARGOTOXY2,16CPRINTF“PLEASEINPUTTHEPRICE“SCANF“F“,GETCHARGOTOXY2,18CPRINTF“PLEASEINPUTTHEISBNOFTHEBOOK“SCANF“S“,GETCHARGOTOXY2,20CPRINTF“PLEASEINPUTTHECOUNTOFBOOKS“SCANF“D“,GETCHARGOTOXY2,22CPRINTF“PLEASEINPUTTHELENDNUMBEROFTHEBOOK“SCANF“D“,GETCHARPRINTF“PRESSYTOCONTINUEORPRESSANYKEYTOBACKTOMENU“KYKEYIFKYKEY_YPHEADI1CLRSCRPRINTF“PLESEINPUTTHENAMEOFTHEBOOKYOUWANTTOMODIFY“SCANF“S“,FINDELSEPHEADIFFPFOPEN“EADDBOOKDAT“,“WB“NULLPRINTF“CANNOTOPENADDBOOKDAT“FORI0IBINFO,SIZEOFBBASIC,1,FP1CLRSCRPRINTF“CANNOTSAVETHEDATA“PPNEXTFCLOSEFPMENUPPNEXTCLRSCRPRINTF“CANNOTFINDTHEBOOK“GETCHVOIDDELETESTRUCTLINKLISTP1,P2,HEADCHARFIND30INTI,KY,SUM,FLAG0FILEFPP1P2HEADCREATESUMREADSUMCLRSCRPRINTF“PLESEINPUTTHENAMEOFTHEBOOKYOUWANTTODELETE“SCANF“S“,FINDIFSTRCMPFIND,HEADBINFONAME0HEADHEADNEXTSUMFLAG1ELSEFORI0INEXTIFSTRCMPFIND,P1BINFONAME0P1P1NEXTP2NEXTP1SUMFLAG1BREAKELSEP2P2NEXTIFFLAG1PRINTF“CANNOTFINDTHEBOOK“GETCHMENUP1HEADIFFPFOPEN“EADDBOOKDAT“,“WB“NULLPRINTF“CANNOTOPENADDBOOKDAT“FORI0IBINFO,SIZEOFBBASIC,1,FP1CLRSCRPRINTF“CANNOTSAVETHEDATA“P1P1NEXTFCLOSEFPIFFPFOPEN“ESUMDAT“,“WB“NULLPRINTF“CANNOTOPENSUMDAT“IFFWRITEGETCHEXIT0FCLOSEFPPRINTF“SUCCEEDTODELETETHEBOOKPRESSANYKEYTOGETBACKTOTHEMAINMENU“GETCHVOIDINSERTSTRUCTLINKLISTP1,P2,HEAD,TEMPCHARFIND10INTI,KY,SUM,FLAG0FILEFPCLRSCRSUMREADSUMP1P2HEADCREATETEMPSTRUCTLINKLISTMALLOCLENPRINTF“THENUMBERYOUWANTTOINSERTBEHIND“SCANF“S“,FINDFORI0INEXTIFSTRCMPFIND,P2BINFONUM0P2NEXTTEMPTEMPNEXTP1SUMFLAG1BREAKELSEP2P2NEXTIFFLAG1PRINTF“CANNOTFINDTHEBOOK“GETCHMENUCLRSCRGOTOXY2,2CPRINTF“PLEASEINPUTTHECLASSFICATIONOFCHINESELIBRARYCLASSIFICATION“SCANF“S“,GETCHARGOTOXY2,4CPRINTF“PLEASEINPUTTHEBOOKSNUMBER“SCANF“S“,GETCHARGOTOXY2,6CPRINTF“PLEASEINPUTTHEBOOKSNAME“SCANF“S“,GETCHARGOTOXY2,8CPRINTF“PLEASEINPUTTHEBOOKSWRITER“SCANF“S“,GETCHARGOTOXY2,10CPRINTF“PLEASEINPUTTHETHEBOOKSPRESS“SCANF“S“,GETCHARGOTOXY2,12CPRINTF“PLEASEINPUTTHEBOOKSEDITION“SCANF“S“,GETCHARGOTOXY2,14CPRINTF“PLEASEINPUTTHEBOOKSPUBLISHTIME“SCANF“S“,GETCHARGOTOXY2,16CPRINTF“PLEASEINPUTTHEPRICE“SCANF“F“,GETCHARGOTOXY2,18CPRINTF“PLEASEINPUTTHEISBNOFTHEBOOK“SCANF“S“,GETCHARGOTOXY2,20CPRINTF“PLEASEINPUTTHECOUNTOFBOOKS“SCANF“D“,GETCHARGOTOXY2,22CPRINTF“PLEASEINPUTTHELENDNUMBEROFTHEBOOK“SCANF“D“,GETCHARGOTOXY10,25CPRINTF“PRESSYTOCONTINUEORPRESSANYKEYTOBACKTOMENU“KYKEYIFKYKEY_YINSERTELSEP1HEADIFFPFOPEN“EADDBOOKDAT“,“WB“NULLPRINTF“CANNOTOPENADDBOOKDAT“FORI0IBINFO,SIZEOFBBASIC,1,FP1CLRSCRPRINTF“CANNOTSAVETHEDATA“P1P1NEXTFCLOSEFPIFFPFOPEN“ESUMDAT“,“WB“NULLPRINTF“CANNOTOPENSUMDAT“IFFWRITEGETCHEXIT0FCLOSEFPMENUVOIDMANAGE/图书管理/INTY_WINDOWGOTOXY30,7TEXTBACKGROUNDREDCPRINTF“MODIFYBOOK“TEXTBACKGROUNDBLUEGOTOXY30,10CPRINTF“DELETEBOOK“GOTOXY30,13CPRINTF“INSERTBOOK“GOTOXY30,16CPRINTF“BACK“GOTOXY25,2TEXTCOLORREDHIGHVIDEOCPRINTF“THELIBRARYMANAGEMNTPROGRAM“NORMVIDEOGOTOXY35,22TEXTCOLORLIGHTGRAYTEXTBACKGROUNDBLUECPRINTF“MANAGEBOOK“TEXTBACKGROUNDBLUETEXTCOLORWHITEYCHOOSE7,16SWITCHYCASE7MODIFYMENUBREAKCASE10DELETEMENUBREAKCASE13INSERTMENUBREAKCASE16MENUDEFAULTPRINTF“ERROR“BREAKVOIDSEARCHINTY_WINDOWGOTOXY30,7TEXTBACKGROUNDREDCPRINTF“SEARCHBYNAME“TEXTBACKGROUNDBLUEGOTOXY30,10CPRINTF“SEARCHBYWRITER“GOTOXY30,13CPRINTF“BACK“GOTOXY25,2TEXTCOLORREDHIGHVIDEOCPRINTF“THELIBRARYMANAGEMNTPROGRAM“NORMVIDEOGOTOXY35,22TEXTCOLORLIGHTGRAYTEXTBACKGROUNDBLUECPRINTF“SEARCHBOOK“TEXTBACKGROUNDBLUETEXTCOLORWHITEYCHOOSE7,13SWITCHYCASE7SEARCHNAMEBREAKCASE10SEARCHWRITERBREAKCASE13MENUDEFAULTPRINTF“ERROR“BREAKINTREADSUMFILEFPINTSUMIFFPFOPEN“ESUMDAT“,“RB“NULL/读取图书基本信息数量SUM/FREADELSECLRSCRPRINTF“CANNOTOPENTHESUMDAT“GETCHEXIT0FCLOSEFPRETURNSUMVOIDORDERWBBASICBINFO100FILEFPINTSUM,I,JBBASICTEMPSUMREADSUM/读取图书基本信息数量SUM/IFFPFOPEN“EADDBOOKDAT“,“RB“NULL/读取文件中所存的图书基本信息/PRINTF“CANNOTOPENTHEADDBOOKDAT“GETCHEXIT0FORI0I0IBINFOI1TEMPVOIDORDERNBBASICBINFO100FILEFPINTSUM,I,JBBASICTEMPSUMREADSUM/读取图书基本信息数量SUM/IFFPFOPEN“EADDBOOKDAT“,“RB“NULL/读取文件中所存的图书基本信息/PRINTF“CANNOTOPENTHEADDBOOKDAT“GETCHEXIT0FORI0I0IBINFOI1TEMPINTHALFNINTSUM,BBASICBINFO100,CHARFIND/二分法查找书名,返回所需数组标号/INTSTART0,MIDINTENDSUM1WHILESTART0STARTMID1ELSEIFSTRCMPFIND,BINFOMIDNAME0STARTMID1ELSEIFSTRCMPFIND,BINFOMIDWRITER19GOTOXY10,23CPRINTF“PRESSANYKEYTOCLEARSCREENANDCONTINUEDISPLAYBOOKLIST“GETCHCLRSCRJ0_WINDOWGOTOXY35,22TEXTCOLORLIGHTGRAYTEXTBACKGROUNDBLUECPRINTF“BOOKLIST“TEXTCOLORWHITEGOTOXY25,2CPRINTF“THETOTALBOOKNUMBERISD“,SUMFCLOSEFPGOTOXY20,23CPRINTF“THATSALLPRESSANYKEYTOBACKTOMENU“GETCHVOIDBMONEYFILEFPINTSUMLONGIFLOATRMB0BBASICBINFO100_WINDOWGOTOXY35,22TEXTCOLORLIGHTGRAYTEXTBACKGROUNDBLUECPRINTF“MONEYLIST“TEXTCOLORWHITESUMREADSUM/读取图书基本信息数量SUM/IFFPFOPEN“EADDBOOKDAT“,“RB“NULL/读取文件中所存的图书基本信息/PRINTF“CANNOTOPENTHEADDBOOKDAT“GETCHEXIT0FORI0ISUMIIFFREADGETCHEXIT0RMBRMBBINFOIPRICEFCLOSEFPGOTOXY2,3CPRINTF“THETOTALMONEYIS2F“,RMBGOTOXY2,5CPRINTF“THEAVERAGECOSTOFEVERYBOOKIS2F“,RMB/SUMGOTOXY25,23CPRINTF“PRESSANYKEYTOBACKTOMENU“GETCH七【上机实验中的其他它问题及心得】做这次图书管理系统收获很大,第一次不是只单纯的解题,第一次将C语言运用,学以致用的感觉很好。与解题相比有趣很多。这次做图书管理系统,功能方面,链表的创建,插入,修改,以及二分法这些都已经很熟了,唯一的问题就是把它们结合在一起,这并不算很难。所以刚开始花时间比较多的地方主要是在界面和文件的应用那里。做界面的时候,因为C程序设计(第三版)谭浩强里面没有讲,我专门去买了C语言高级编程及实例,我是从开头开始看的,前面看了第一章内存管理,不是很懂,又去图书馆借汇编语言基础来看,看了似乎懂了一些,马马虎虎看过去,花了点时间。第二章就是文本屏幕界面设计,看了以后,勉强算是把界面做出来了,然后慢慢加了一些光标,边框,变换了一下颜色,使界面美观了一些。文件的应用的时候,在文件读写那里老是想用FSEEK去使FREAD的指针跳到下一条,卡住了很久。后来李老师说不应该用,改了以后确实能行。之前我存的时候用了FSEEK,读的时候也用了,就刚好没有问题。但应该存的文件就不连续,空了很多吧。下次要注意。做功能的时候,基本上没有遇到什么困难,做的还算顺利。这次做图书管理系统,让我思考了很多关于设计一个真正的程序的问题。比如数据结构的选择,时间复杂度的考虑,优化的算法,结构化程序的设计,用宏定义使程序简单明了等等。在做的过程中,我也发现很多细节的东西其实自己还没有完全弄懂,那天听了周立功的讲座后更是觉得如此。学好C语言还有很长的路要走,这是一个漫长而有趣的过程。路漫漫其修远兮,吾将上下而求索。下面是赠送的中秋节演讲辞,不需要的朋友可以下载后编辑删除谢谢中秋佳节演讲词推荐中秋,怀一颗感恩之心老师们,同学们秋浓了,月圆了,又一个中秋要到了本周日,农历的八月十五,我国的传统节日中秋节。中秋节,处在一年秋季的中期,所以称为“中秋”,它仅仅次于春节,是我国的第二大传统节日。中秋的月最圆,中秋的月最明,中秋的月最美,所以又被称为“团圆节”。金桂飘香,花好月圆,在这美好的节日里,人们赏月、吃月饼、走亲访友无论什么形式,都寄托着人们对生活的无限热爱和对美好生活的向往。中秋是中华瑰宝之一,有着深厚的文化底蕴。中国人特别讲究亲情,特别珍视团圆,中秋节尤为甚。中秋,是一个飘溢亲情的节日中秋,是一个弥漫团圆的时节。这个时节,感受亲情、释放亲情、增进亲情这个时节,盼望团圆、追求团圆、享受团圆这些,都已成为人们生活的主旋律。同学们,一定能背诵出许多关于中秋的千古佳句,比如“举头望明月,低头思故乡”、“但愿人长久,千里共婵娟”、“海上生明月,天涯共此时”这些佳句之所以能穿透历史的时空流传至今,不正是因为我们人类有着的共同信念吗。中秋最美是亲情。一家人团聚在一起,讲不完的话,叙不完的情,诉说着人们同一个心声亲情是黑暗中的灯塔,是荒漠中的甘泉,是雨后的彩虹中秋最美是思念。月亮最美,美不过思念月亮最高,高不过想念。中秋圆月会把我们的目光和思念传递给我们想念的人和我们牵挂的人,祝他们没有忧愁,永远幸福,没有烦恼,永远快乐一、活动主题游名校、赏名花,促交流,增感情二、活动背景又到了阳春三月,阳光明媚,微风吹拂,正是踏青春游的好时节。借春天万物复苏之际,我们全班聚集在一起,彼此多一点接触,多一点沟通,共话美好未来,与此同时,也可以缓解一下紧张的学习压力。相信在这次春游活动中,我们也能更亲近的接触自然,感悟自然,同时吸收万物之灵气的同时感受名校的人文气息。三、活动目的1丰富同学们的校园生活,陶冶情操。2领略优美自然风光,促进全班同学的交流,营造和谐融洽的集体氛围。3为全体同学营造一种轻松自由的气氛,又可以加强同学们的团队意识。4有效

温馨提示

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

评论

0/150

提交评论