中南大学本科生c++计算机实践报告.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中南大学本科生c计算机实践报告

中南大学 本科生课程设计(实践)任务书、设计报告 (C/C++程序设计) 学生姓名 指导教师 学 院 土木工程学院 专业班级 土建 学生学号 计算机基础教学实验中心 2013年 7 月 4 日 图书管理程序 摘要: 图书管理程序功能介绍 (1)系统结构 (2)各模块的详尽功能和功能实现的程序段 图书管理程序概要设计 ⑴程序中关键数据的表示 ⑵程序构成 ⑶程序流程图 图书管理程序详细设计及系统功能实现 遇到的问题与解决的办法 总结或体会 图书管理程序功能介绍(功能要求) 系统结构 本系统主要实现的功能为:图书基本信息记录输入,显示图书记录,维护记录,可按记者书名等查询图书记录以及记录统计等等,为更明白的体现其结构功能,特做出系统功能结构图如下图1-1: 图书管理系统 记录管理 记录查询 维护记录 统计记录 查询记录 记录输入 显示记录 图1-1 各模块的详尽功能和功能实现的程序段 首先是记录输入,我们可以给每本图书编号,输入书名,作者,单价以及数量便可存入一条记录,我们可以将所有信息先输入,即可在后面板块中查询显示。 显示记录就是用于记录的显示,我们可以从这里清楚的看到我们之前输入的图书记录,对于图书的信息一目了然。 维护记录的功能比较强,进入后,里面分为添加 修改 删除图书记录三块,我们可以根据需要选择相应指示完成指令,给图书记录的管理带来大大的便捷。 在查询界面我们可以看到两种查询方式,分别是通过书名和通过作者查询图书记录,我们可以随时迅速的调用出我们所需要的书籍信息。 统计记录中我们可以统计所有书目信息,如书名 作者 总价值还有书的总数目等。 这个程序的结构清晰易操作,具有不错的实用性和操作性,可以实现记录的输入输出,还有查询统计等功能,基本实现了图书管理系统的要求和需要。 2.图书管理程序概要设计 ⑴程序中关键数据的表示 在图书管理程序中,在main函数的整体调摄下,为了程序功能的实现,程序设置了全局变量n,以整形输入,贯穿全局,借以输入的n值完成下一步操作。Booknum,Bookname,Bookwriter,Bookprice,Booknumber,Booksun,作为全局变量记录着每一个输入的数据,分别为,编号,书名,作者,单价,数量,损耗数,其中Booknum,bookprice,booknumber,booksun为整形变量,bookname,bookwriter为字符串数据。 ⑵程序构成 本程序以main函数引导,下设menu_select、menu_sel、menu_se,作为菜单函数,用以实现菜单中主菜单、维护菜单、查询菜单的显示,add_book为添加记录函数,将数据添加到图书管理程序中的变量中,del_book为删除记录函数,删除已存的数据,show_all显示记录函数,显示已存的所有数据,alter为修改信息函数,修改已存的数据,select_n,select_w为查询记录函数,分别通过书名和作者查询已存的数据,save_new保存记录函数,保存输入的数据,statistics, writer_num为统计函数,分别为统计每本书的总价值和统计每个作者所着的图书数量,save_new保存函数,保存输入的数据。 ⑶程序流程图 4遇到的问题与解决的办法   问题一:调试时总会出现cl.exe 执行时时出错.1 error(s), 0 warning(s),但是实际上还是有很多编译错误。我在确保程序代码无误的情况下,运行程序也还是出现这个错误。恰巧我有一个同学遇到了一个同样的问题但是已经解决了,我就向他请教了一下。他告诉我可以这样尝试一下:打开vc界面, 点击VC“TOOLS(工具)”—“Option(选择)” · “Directories(目录)”重新设置“Excutable Fils、Include Files、 Library Files、Source Files”的路径。很多情况可能就一个盘符的不同 (例如你的VC装在C,但是这些路径全部在D),改过来就OK了。我试了一下再重启了一下电脑就没有这种情况了。 问题二:用私有继承不能实现运行时多态。我百度了一下找到了解决办法。要实现运行时的多态,需要以下条件:1.必须通过指向基类对象的指针访问和基类成员函数同名的派生类成员函数;或者用派生类对象初始化的基类对象的引用访问和基类成员函数同名的派生类成员函数; 2.派生类的继承方式必须是共有继承; 3. 基类中的同名成员函数必须定义为虚函数。如上所述,私有继承和保护继承都不能实现运行时多态,所以我将继承方式改为公有继承,并将需要实现多态的成员函数修改为虚函数。这样一来这个问题就解决了。 问题三:

文档评论(0)

lifupingb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档