[C++程序设计大作业.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[C程序设计大作业

题目内容及要求 设计一个Database类 问题描述 设计一个Database类。Database类是一个表的集合,而表又由行和列组成。例如,下面的雇员信息表包含三个记录,每个记录有四个字段( Employee、Name、Department和Boss)。 雇员 姓名 部门 部门经理 111-11-1234 Cruz ACC Warder 213-44-5649 Johnston MIS Michaels 321-88-7895 Tom FIN Bearskin 基本要求 能够完成对数据库的基本操作;包括创建数据库,实现对数据库里面的表的添加,删除;以及能够完成对表结构的修改(如添加或删除字段),以及对表中的记录进行添加和删除;能够完成对使用适当的查询语言从一个或多个表中查找相关信息。 测试数据 可以选取高校人员(教师、学生、职工等)数据库作为测试数据 实现提示 Database 类的公有接口包含如下数据成员: ? 创建一个表。 ? 通过增加或删除字段修改表结构。 ? 删除一个表。 ? 在表中增加一个记录。 ? 从表中删除记录。 ? 用适当的查询语言从一个或多个表中查找信息。 其它要求 高校人员信息通常保存在文件里面,可以从文件里面读取人员信息;然后完成上面操作。 题目分析及小组成员及分工 1.题目分析: 简单来说此次程序设计就是要能实现数据库的基本功能。即表的数据的管理,数据表的创建、修改、删除,数据表的修改就包括字段和记录的添加修改删除等功能。 而设计的第一步就是要完成对于表结构的设计。数据表是一种二维结构,也就是由字段和记录组成的一张二维表。由于记录和字段是要可以创建修改删除的,从而使用指针链队处理起来较为方便。两个链队分别为字段链队和记录链队,前者最表中横向展开,记录链队纵向展开,每个记录链队的节点指向一条记录的数据项的队首,后者是由可选择数据类型的数据项组成的一个链队。从而形成了整张数据表的结构。具体如图所示2-1 图2-1-1 完成了数据表的结构设计,然后对其创建修改删除无非就是对于链表的操作,然后由几张数据表组成了一个数据库,在设计数据库类的时候同样建立一个指针链表将不同的表连接起来,方便进行处理和运算。 最后就是数据的存取问题,C++中所提供的IFSTREAM和OFSTREAM库能完成简单的文件存取功能,只要定义好存取数据的格式,便能方便的完成文件的存取功能。 2.人员分工 课题准备与讨论:全体组员 确定设计最终方案:全体组员 编码:王加夫 调试与测试:全体组员 各功能具体实现及分析 1.几个主要类的设计: (1).数据项 (2).记录 (3).字段 (4).表 (5).数据库 功能实现即具体分析 .数据库的操作 数据库的创建 创建一个DataBase对象,添加到DataBase链队中,如果链队为空,队首尾指针均指向该对象,否则将其添加至队尾 数据库的删除 查找输入的数据库名,如果找到匹配的数据库,将该数据库之前的数据库的NEXT指向该数据之后的数据库,完成删除操作。 数据库的修改 输入要修改的数据库名,查找该数库,查找过程先获取tbf指针(tbf指向数据库链队的第一个对象),然后依次向后遍历,比较数据库名是否匹配,匹配就调用数据库修改函数,进行修改 (2).数据表操作 a) 添加字段 输入添加字段的字段名和类型,获取字段链队的队尾指针,将该字段添加的队尾,并调用更新函数,为每一条记录分配一个该字段的数据项,赋予该数据项默认值。 b) 修改字段名 输入要修改的字段名,通过获取字段名链队的队首指针Fieldf,然后依次向后遍历,找到要修改的字段,输入新的字段名,将其替换。 c) 删除字段名 输入要删除的字段名,通过获取字段名链队的队首指针Fieldf,然后依次向后遍历,找到要删除的字段,将其从链队删除,然后调用更新函数删除所有记录的该字段的数据项。 添加记录 想输入要添加的记录,将其添加至记录链队的队尾,更新记录的数值。 修改记录 输入要修改记录的字段名和NUM_ID,若成功找到,输入新的修改值,修改完毕提示修改成功。 删除记录 输入删除的记录的NUM_ID,通过记录链队队首指针依次遍历,找到后从链队中删除该记录,更新记录条数的数值。 显示数据表 先依次显示字段名,然后遍历所有记录,将所有记录依次显示出来。 创建数据表 输入数据表的名字,然后调用添加字段的函数进行字段的添加,再调用记录添加函数添加记录,最后数据表创建完成。 (3).管理员登陆 从dba.txt读取管理员账户密码,然后用户输入,验证通过进入管理数据库界面,失败重新输入账号密码。 (4).文件存取 a) 存储数据

文档评论(0)

tiantiande + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档