文档介绍:C++ 课程设计报告 C++ 课程设计报告学院: 专业: 课题名称: 邮局报刊、杂志订阅班级: 姓名: 学号: 指导老师: 完成时间: 2013 年 1月 11日成绩: _______________ C++ 报告共 12页 1 一、面向对象程序设计课程设计的目的本课程设计是在学****面向对象基本理论之后的实践教学环节。该实践教学是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法。学生通过课程设计在下述各方面得到锻炼: 1 .能根据实际问题的具体情况,结合面向对象的基本理论和基本技巧,正确分析问题,并能设计出解决问题的有效算法与程序。 2 .提高程序设计和调试能力。学生通过上机实****验证自己设计的算法和程序的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改, 进一步提高程序设计水平。二、课程设计题目及任务描述下面是一份“邮局报刊、杂志订阅系统”的用户需求简要说明书,根据这份用户提出的需求,分析和开发开发。“邮局报刊、杂志订阅系统”用户需求说明书 1. 任务概述及目标: “报刊、杂志订阅系统”是一个计算机辅助信息管理系统。该系统保存所有通过邮局发行的报刊和杂志的与发行有关的信息;接受订阅者的订阅和付款,并保存订阅、付款日期和金额、以及投递信息;输出投递和订阅清单;接受顾客的查询服务;统计各报刊和杂志的各阶段的总订阅数,并输出各报社、各杂志社的订单汇总表。本软件系统要求安全、可靠(具有出错处理能力)。 2. 数据描述数据流程图: 说明:报刊订单统计表和杂志订单统计表里的总份数、总金额取决于日期期限的确定。例如:季统计表,则为一个季度的信息。 3. 功能需求(1)功能划分本系统由“客户服务子系统”、“内务管理子系统”、“原始数据管理子系统”组成。订单统计订单、收据订阅,付费各类统计表报刊、杂志订阅系统顾客订阅者报社、杂志社订阅者顾客管理、邮递员输入: 输出: 查询事务事务报告 C++ 报告共 12页 2 客户服务子系统包含 2个功能模块:“订阅”、“顾客事务处理”。内务管理子系统包含 3个功能模块:“订单管理”、“投递管理”、“报费管理”。原始数据管理子系统包含 2 个功能模块:“报刊、杂志信息维护”、“报社、杂志社信息维护”(2)功能描述订阅模块:订阅者填写“报刊订单”、或“杂志订单”, 系统根据订单进行信息输入、收费确认,将数据保存到数据库中,然后输出订单交给订阅者。顾客事务处理: 报刊、杂志信息查询(费用、发行日等) ,订阅者情况查询(是否订阅?订阅信息) 订单管理模块: 将所有有效订单进行分类管理; 要求做到能够按“出版社”、“报社”、“期刊号”、“报刊名”、“杂志名”、“订单号”,“订阅者”、“订阅日期”,按“年份”等查询和统计;按报社或杂志社为单位,输出订单汇总统计清单列表。投递管理:以季度为日期段,以投递地址为单位,综合被投递的报刊、杂志种类以及份数;输出投递列表。报费管理: 对收取的订阅费用进行统计、核查,输出收费清单列表。报刊、杂志信息维护: 原始收据输入、修改、查询。报社、杂志社信息维护: 原始收据输入、修改、查询。(3)系统规定订单一旦确认,不得取消、退款。订阅的最短期为:季度。(4)主要模块的设计: 订阅模块: 报刊订阅杂志订阅保存到数据库中交给订阅者输出订单顾客事物处理: 报刊杂志订阅情况查询订单管理: 订单管理出版社报社订单号……报刊、杂志(社)信息维护: C++ 报告共 12页 3 信息维护查询修改输入(5)主要模块流程图设计开始能否打开指定文件输出“此文件不存在” NY 输入姓名输入地址输入订阅数输入订阅期限……输出订阅成功结束图1 :增加新订户流程图设计开始能否打开指定文件输出“此文件不存在” NY 输出“请输入当天日期”是否在此日期前( 是否过期) Y 删除过期订户 N 读取下一个数据是否存在下一个订户信息 Y 结束 N 图2 :删除过期订户流程图 C++ 报告共 12页 4 开始能否打开指定文件? 输出“此文件不存在” totalnum=0 sum= usersum=0 N Y 订户存在? Y totalnum=totalnum+num totalprice=num*price sum=sum+totalprice usersum=usersum+1 结束 N 关闭文件图3 :输出统计订单列表三、运行与测试运行时出现如下界面,提示选择订阅报刊还是杂志: 例如按 2后将进入主菜单进行杂志的订阅,然后在 0~3 中可选择你需要的操作: C++ 报告共 12页 5 选择操作 1后按提醒依次输入订阅用户及主要信息,并自动保存在文件中: 在输入过程中,要输入订阅期限,以便订阅信息的维护: