C语言课程设计.doc_第1页
C语言课程设计.doc_第2页
C语言课程设计.doc_第3页
C语言课程设计.doc_第4页
C语言课程设计.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

.C语言课程设计任务书指导书任务本课程设计是采用C语言,在VC平台下设计图书管理系统,该系统运行在MS-DOS命令行模式下。本课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。C语言课程设计主要是培养学生利用系统综合C语言进行程序设计的能力。1. 进一步巩固和复习C程序设计的基础知识。2. 培养学生结构化程序、模块化程序设计的方法和能力。3. 了解软件的编制过程及各环节的具体内容。4. 提高学生程序调试技巧、软件设计能力和代码规范化等素质。5. 提高学生分析问题、解决问题以及实际运用能力。 功能能够完成图书馆日常操作,数据要能够保存,能够随时取出,并在任何操作后都能保持信息完整性,具体内容如下:l 图书管理 添加图书增加新的图书,同时需检查新书的图书编号是否在原图书当中存在,若是则应取消添加并提示重新输入。 查询图书通过书编号查询图书信息。 修改图书通过编号查询该图书,若找到则允许修改,否则提示无该图书信息。 删除图书资料 通过编号查询该图书,若找到则允许删除,否则提示无该图书信息。删除对象包括该图书资料以及“借还书登记”中的相关记录。l 图书借还 借书1. 判断所借书籍号是否存在,若不存在重新输入书籍号。2. 判断该借书证号是否存在,若不存在重新输入借书证号。3. 判断该书籍是否已借出,若是则不允许执行借书操作。4. 借书处理包括在“借还书登记”中增加该借书情况,在该图书信息中加上“已借”标记。 还书()1. 判断所借书是否存在,若不存在重新输入书籍。2. 判断该书是否已借出,若不是则不允许执行还书操作。3. 借书处理包括在“借还书登记”中增加该还书情况,在该图书信息中加上“未借”标记。 历史查询可根据日期、书编号、查询所有符合的借还书记录。l 证件管理 添加读者增加新读者,同时需检查该读者编号是否在所有借书证当中存在,若是则应取消添加并提示重新输入。 查询读者资料通过借书证号查询读者信息。 修改读者资料通过借书证号查询该读者,若找到则允许修改,否则提示无该读者资料。 删除读者资料1. 通过借书证号查询该读者,若找到则允许删除,否则提示无该读者资料。2. 通过借书证号查询该读者是否仍借有书籍,若有,则应归还书籍才可进行删除操作。3. 删除对象包括该读者资料以及“借还书登记”中的相关记录。l 系统帮助 关于此系统显示本系统是用于学生C语言课程设计,功能简单,算法和处理方式可用于参考。 版本信息显示开发者姓名、班级、开发完成日期、版本号和指导老师等信息。l 退出系统退出程序。基本数据结构l 图书结构体struct book char num4;/* 书编号*/ char name20;/*书名*/char pub_co20; /*出版社*/char auther10; /*作者*/ float price;/*价格*/ char per_num5;/借书证号*/ char borrow;/*借出否,1:借出;0:未借出*/ ;l 读者结构体struct certchar per_num5;/*借书证号*/ char name20;/*姓名*/ char sex;/*性别,M表示男,G表示女*/ int age;/*年龄*/;l 日期结构体struct timeint year;/*年*/int minth; /*月*/int date; /*日*/;l 借书情况结构体struct card char per_num5;/*借书证号*/ struct time br_time;/*借还书日期*/ char event;/*借还书,其中1:表示借,0:表示还*/ char num4;/*图书编号*/;l 多个数据的组织形式1. 对于多本图书资料,可采用“图书结构体“数组来组织存放。2. 对于多个读者,可采用“读者结构体”数组来组织存放。3. 对于多条借还书记录,可采用“借书情况结构体”数组来组织存放。数据流通过数据流,能够了解本系统所采用的数据及各操作所需的数据,以及图书管理业务的基本流程。如下图:处理流程 以下提供几个关键处理流程,希望同学们能够举一反三,独立完成其他处理流程的设计。 Main函数流程添加图书流程设计方法和技巧:1. 在主程序中首先以读写方式打开各数据文件文件,并将数据存放到各数组中,所有操作都在数组中进行,当要退出程序时,将该数组写回到文件中,并关闭文件。2. 为了便于判断数组元素的个数,可以仿造字符串的做法,在数组的最后添加一个元素,作为数组的结束标志,以后当读到该元素时,就作为数组的结束。例如:图书数组:选择图书编号结构体成员设为”AAAA”作为结束标志。读者数组:选择借书证号结构体成员设为”AAAAA”作为结束标志。借书情况数组:选择图书编号结构体成员设为”AAAA”作为结束标志。3. 所有存储数据的文件采用二进制文件,对文件的读写可以采用顺序文件的方式,并使用fread和fwrite函数。 4. 设计的步骤:先设计主函数,各子函数只是简单的定义;当主函数调试正确后,再分别设计各子函数。(即所说的模块化设计方法)5. 添加数组元素算法:找到具有结束标志的数组元素,将内容写入其中,在下一个数组元素添加结束标志。6. 删除数组中一个元素的算法:算法1:采用一个临时数组,将除去该元素的其他数组复制到临时数组中,然后将临时数组复制到原数组中。算法2:找到要删除的元素位置,然后由该元素开始,将后面的所有元素往前移动。备注:以上方法和技巧只作为参考,若有更有效、简便的处理方式亦可采用。设计要求1、 基本要求:设计的系统界面要美观大方,操作合理,有必要的提示。2、创新要求:在基本要求达到后,进行创新设计。3、对系统进行功能模块分析、控制流程分析正确。4、系统设计要实用,编程简练,可用,功能全面,并有一定的容错能力。5、说明书、流程图要清楚6、要求程序设计合理,用户界面良好,如采用菜单工作方式。设计完成后提交以下资料:、设计论文(以电子文档的方式提供)。、源程序代码清单及可执行程序代码清单(保留在磁盘)。纪律要求、不得擅自离校,有特殊情况必须请假。、遵守实验室规则,服从老师统一安排。评分方法(取用分制) 纪律占20、论文占30、程序占50。 如有互相抄袭者,取消成绩,不予毕业。设计计划(时间:二周)计划如下:1. 准备阶段(时间:一天)明确设计任务、理清思路、制定计划、整理设计步骤。备注:以上内容可集体讨论。2. 功能模块划分(时间:一天)理清程序的总体流程,根据需要进行

温馨提示

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

评论

0/150

提交评论