欢迎来到天天文库
浏览记录
ID:61398342
大小:28.41 KB
页数:6页
时间:2021-01-26
《C个人书籍标准管理系统的设计与实现.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、C个人书籍标准管理系统的设计与实现数学与计算机学院C程序设计课程设计报告年级2012学号2012110911姓名刘怡然成绩专业电气实验地点B3-401指导教师许景山实验项目简单个人书籍管理系统的设计与实现实验日期2013年6月23日一、实验题目简单个人书籍管理系统的设计与实现二、实验目的、要求1、存储书籍各种相关信息。2、提供查找功能,按照多种关键码查找需要的书籍,查找成功后可以修改记录的相关项。3、提供排序功能,按照多种关键码对所有的书籍进行排序,例如按照购买日期进行排序。4、其他辅助的维护工作。三、数
2、据结构及算法描述1、使用C++中的类来实现,其中有DATE类和Book类,进行类的复合。数据均为私有数据。classDATE{public:friendostream&operator<<(ostream&output,DATE&t);//友元函数重载流插入运算符friendistream&operator>>(istream&input,DATE&t);//友元函数重载流提取运算符public:DATE(inty=0,intm=0,intd=0);//初始化virtual~DATE();DATE&ope
3、rator=(DATE&);//重载时间等于运算符intoperator<(DATE&);//重载时间小于运算符intoperator==(DATE&);//重载时间等于判断运算符private:intyear,month,day;};----------------------------------------------------------------------------------------------------------classBook{public:Book(intt,char
4、*n,char*a,floatp,inty,intm,intd);Book(){};virtual~Book();intf_new();//新建书籍信息intf_save();//保存书籍信息intf_open();//打开书籍信息intdisplay();//显示书籍信息inte_delete();//删除书籍信息inte_update();//修改书籍信息intshowInfo();//显示个别书籍信息intsort();//排序书籍信息Book&operator=(Book&);//重载等于运算符p
5、rivate:inttype;//书籍类型charname[MAX];//书籍名称charauthor[MAX];//作者floatprice;//书籍价格DATEdate;//购买日期};2、定义数组Bookbooks[200]使用流提取、流插入方式进行数据读取和存储。3、在排序函数intsort()中使用冒泡算法排序:for(i=0;i6、7、books[i].date==books[j].date;j++)8、{ex=books[i];books[i]=books[j];books[j]=ex;}}四、程序流程图程序整体的功能模块如下所示:maindisplfileeditsortf_openf_newf_save_delete_update各个功能模块的含义如下:1、“主函数”模块main()此模块循环显示第一级操作命令菜单,接收键盘输入的命令,检查命令是否合法,若合法则调用相应下层函数。命令菜单中包含“退出系统”命令,当接收到该命令时立即终止整个程序的运行。2、“新建”模块f_new():此模块清空book9、s数组;进入输入状态,接收键盘输入的全部数据保存在books数组中,按“购买日期”顺序输入记录。3、“打开”模块f_open():此模块清除books数组中原有数据,从A盘上已经存在的数据文件()中读入全部数据到books数组中,并将全部数据按读入顺序显示在屏幕上。4、“保存”模块f_save():。5、“删除”模块e_delele():此模块接收从键盘输入的一条记录的“购买日期”和“书名”,在books数组中查找,如找到则从books数组中删除该记录,否则显示“未找到”。6、“更新”模块e_update10、():此模块接收键盘输入的一条记录的“购买日期”和“书名”,在books数组中查找,如找到则显示该记录的原数据并提示键盘输入新数据用以替换原有数据,如未找到则显示“未找到”。7、“显示”模块display():此模块显示类别名称和编号,提示用户输入类别编号,显示books数组中指定类别的书籍记录,或显示全部书籍记录。8、“排序”模块sort():此模块对books数组中所有记录按“购买时间”排序。五、源程序清单文件:类DATE
6、
7、books[i].date==books[j].date;j++)
8、{ex=books[i];books[i]=books[j];books[j]=ex;}}四、程序流程图程序整体的功能模块如下所示:maindisplfileeditsortf_openf_newf_save_delete_update各个功能模块的含义如下:1、“主函数”模块main()此模块循环显示第一级操作命令菜单,接收键盘输入的命令,检查命令是否合法,若合法则调用相应下层函数。命令菜单中包含“退出系统”命令,当接收到该命令时立即终止整个程序的运行。2、“新建”模块f_new():此模块清空book
9、s数组;进入输入状态,接收键盘输入的全部数据保存在books数组中,按“购买日期”顺序输入记录。3、“打开”模块f_open():此模块清除books数组中原有数据,从A盘上已经存在的数据文件()中读入全部数据到books数组中,并将全部数据按读入顺序显示在屏幕上。4、“保存”模块f_save():。5、“删除”模块e_delele():此模块接收从键盘输入的一条记录的“购买日期”和“书名”,在books数组中查找,如找到则从books数组中删除该记录,否则显示“未找到”。6、“更新”模块e_update
10、():此模块接收键盘输入的一条记录的“购买日期”和“书名”,在books数组中查找,如找到则显示该记录的原数据并提示键盘输入新数据用以替换原有数据,如未找到则显示“未找到”。7、“显示”模块display():此模块显示类别名称和编号,提示用户输入类别编号,显示books数组中指定类别的书籍记录,或显示全部书籍记录。8、“排序”模块sort():此模块对books数组中所有记录按“购买时间”排序。五、源程序清单文件:类DATE
此文档下载收益归作者所有