程序设计及应用(C++)课程项目
一. 根据要求,独立完成程序设计及应用课程项目设计
• 需要提交程序代码、使用的数据文件和生成的可执行文件(压缩为 RAR 或
ZIP 文件)
– 保证你完成的功能代码可以正常运行,在代码中尽量多一些注释,便于
老师理解代码。
– 如果需要分多个步骤,最好能在代码开始处利用多行注释进行详细说明。
– 对于未能完成的功能,也可以将你的代码留在代码文件中,并加以必要 的说明。
– 设计功能时,请注意界面的友好性和容错处理。
– 使用“学号_姓名.rar”或“学号_姓名.zip”命名,例如:4190123_张
三.rar。
• 需要提交课程项目设计报告(PDF 文件)
– 使用提供的《程序设计及应用课程项目设计》模版完成你的报告。
– 报告中应包括:项目总体功能设计、各项功能描述、设计中主要数据变 量及其类型说明的组织(使用不同类型变量的原因、作用和特点)、设 计思路和处理流程(根据任务要求的实现步骤和主要处理环节),运行 实例(输入输出结果截图)。
– 对于关键代码,可以粘贴到报告相应位置中,但请务必保持报告的工整。
– 对于未能成功运行代码的功能,也可以在报告中加以说明,即叙述你的
设计思路。
– 使用“学号_姓名.pdf”命名,例如:4190123_张三.pdf。
在 2020 年 06 月 15 日 21:00 前提交你的压缩文件(RAR 或 ZIP 文件,含程序代码、使用的数据文件和生成的可执行文件)和 课程项目设计报告 (PDF 文件)。
二. 题目:个人收支管理系统 设计一个简单的个人收支管理系统,至少包括如下功能:
1、逐笔输入个人收入或支出的明细,写入到文件保存,可不断进行输入和追加。 输入的明细数据包括:收支明细类别编码、发生日期、金额、备注。
1)为了简化用户的输入,类别编码由字母和数字构成:“a”表示收入、“b”表示支 出,数字是大类下的编号。类别编码及类别名称的对应由自己定义、组织在程序中 并输出展示。比如 a1 表示收入类的生活费,b1 表示支出类的学习,编号依次递增, 类别的数量和名称根据日常需要自拟。要求收入类、支出类的类别数量分别不低于
3 项、不高于 6 项。在用户输入明细之前,输出类别编码和类别名称的对应提示, 例如:
类别编码和类别名称的对应关系如下: 收入类:a1‐生活费,a2‐奖学金,a3‐稿费 支出类:b1‐学习用品,b2‐生活用品,b3‐游戏
2)用户输入收支明细,具体的输入格式如下(各数据用一个或多个连续空格分隔, 直接输入回车表示输入结束):
请逐笔输入类别编码、发生日期、金额、备注(各数据用一个或多个连续空格分隔,直接输入回车 表示输入结束):
输入收支明细:a1 2020‐1‐26 2000.0 1 月生活费 输入收支明细:b1 2020‐3‐9 52.5 买书
…
输入收支明细:b2 2020‐5‐9 78.00 购买台灯
3)将输入的明细数据写入到一个文件中进行保存,便于以后进行追加和处理。
2、根据日常对个人收支管理的需要,完成汇总,进行功能设计和编码实现。需要 统计并输出用户所输入月份各收支类别的汇总情况,输出后,再次询问用户是否输 出该月的各笔明细,用户回答是,则按明细类别的升序输出;回答否,则不输出。 输入和输出结果如下:
请输入对收支类别数据进行汇总的月份:2020‐3 2020 年 3 月收支类别数据的汇总
收入/支出 明细类别 金额
收入 生活费 2000
…
支出 学习用品 200
…
2020 年 3 月的总收入为:1500,总支出为:1200
是否输出该月的各笔明细(y 为输出,其他为不输出):y 2020 年 3 月收支类别数据的明细
类别 收入/支出 发生日期 金额 备注
生活费 收入 2020‐03‐01 2000.0 3 月生活费
学习用品 支出 2020‐03‐03 10.0 买钢笔 …..
3、设计对文件中的收支明细数据进行查询、统计和输出结果的功能,根据功能进 行编码实现。查询是在文件中找出满足指定条件的数据进行展示;统计是在原始数 据的基础上进行计算、汇总等统计处理。要求:
1)每一项功能要在课程项目设计报告中进行描述,编程时向用户简要提示此项功 能,并提示用户输入与该项查询或统计相关的数据。
2)设计功能的难度和代码完成度是评分的依据之一。
3)需要输出收支明细类别时,要求显示为大类及明细类别名称,而不是类别编码。 如上例中的“明细类别”所示。