南京工程学院C++/VC程序设计大作业
源码下载
链接:https://pan.baidu.com/s/15THNZiO2LamsLnuN5ysixw 提取码:1111
C++/VC程序设计大作业任务书
一、课外大作业要求:
1、每人从附件1列出的题目中任意选择其中一个完成。 2、不鼓励大家一拿到实验题目就去网上或参考书上找相关程序源代码,通过思考该问题并最终解决该问题可以锻炼大家,从而提高大家的水平。 3、每位同学须仔细阅读所选题目的要求,认真主动完成设计要求。同学们要发挥自主学习的能力,在设计过程中不断检测自己的课程知识掌握情况。 4. 程序完成后,撰写论文,作业论文包括如下内容: (1)软件需求描述,即用文字、图片描述一下要完成什么功能。 (2)软件的总体结构描述,包含哪些模块(类),各模块之间是什么关系,各实现什么功能。 (3)针对每一项要求,描述如何实现这些功能,包括哪些事件、变量、函数等。调试该模块出现的典型问题,如何解决。(可以使用画流程图、列表、展示典型程序等方法) (4)学习该课程心得体会。 5. 上交大作业论文和程序源代码 (1)论文条理要清晰、行文要流畅、叙述要简洁,切忌冗长拖沓。建议整篇大作业论文部分不得少于三页。 (2)程序源代码要完整,能够直接打开编译运行。 (3)程序主要源代码附在论文后面作为论文的附件(主要源代码尽量控制在10页以内)。大作业论文提交纸质稿。 (4)论文电子稿和源代码打包,以班级为单位(由班长或课代表收全后交给我)。要求打包命名为:班级_学号_姓名_题号
二、评分标准
- 程序占50%
(1)基本功能要求完成,能运行程序,没有语法错误可以得到中等; (2)完成功能,达到预期的效果,可以得到良好; (3)能完成更复杂的功能,可酌情加分,可以得到优秀。 - 论文占50%
(1)论文内容基本完整、条理基本清晰、行文尚流畅,切忌冗长拖沓,可得到中等; (2)论文内容完整、条理清晰、行文流畅、叙述较简洁,可得到良好; (3)论文内容完整详实、条理清晰、行文流畅、叙述简洁,不冗长拖沓,可得优秀。
三、封面格式
南京工程学院
《C++/VC程序设计A》大作业
班 级 姓 名 学 号 授课老师 王 蕾 得 分
自动化学院 2021年 月 日
四、格式要求:
(1)编排格式 正文部分每一章节的编号和各级标题的格式应保持前后一致。 (2)打印格式 论文要求一律采用计算机打印。打印格式基本要求如下: ① 面设置:(操作方法:文件(菜单上)→页面设置) 纸型:A4标准纸; 方向:纵向 页边距:上2.54cm; 下2.54cm; 左3.18cm; 右3.18cm; 页眉:1.5 cm; 页脚:1.75cm; ②格式: 正文行间距:20磅(操作:格式→段落→行距→固定值-设置值20磅) 标题行间距:行间距与正文一致为20磅,增加段前和段后分别为0.5行 字间距:标准 (操作:格式→字体→间距-标准) ③字体、字号:(操作方法:格式(菜单上)→字体) 大标题(章标题):宋体、加粗、三号; 小标题(节标题):宋体、加粗、四号; 节下子标题:宋体、加粗、小四号; 正文部分:中文为宋体、英文及数字等采用Times New Roman字体,小四号; 页脚:Times New Roman字体、小五号,居中排列,页脚内容为页码。 ④图表要求:图表整洁,布局合理,不准徒手画。需要使用例如:viso画图软件画图。 图号按照章进行编号,格式为“章号.图号”,例如“图1.1”,图名标在图片的下方,采用宋体、五号,居中排列; 表号按照章进行编号,格式为“章号.表号”, 例如“表1.1”,表名标在表格的上方,采用宋体、五号,居中排列; 其他要求:论文正文除十分必要的程序代码外,不要大量粘贴源代码。程序代码可以作为附件或附录。
附件1:
(一)饮料自动售货机
1.问题描述 设计饮料自动售货机系统模拟自动售货机的销售过程。首先由顾客投币。接下来顾客选择要购买的饮料,如果投币金额足够并且所购饮料存在,则提示用户在出口处取出饮料,同时找零钱。如果投币金额不足,则显示信息“金额不足”,如果所购饮料已经售完,显示售完信息“对不起,饮料已经卖完”。 2.基本要求 ⑴只接受10元、5元、2元、1元和0.5元的硬币; (2)顾客一次只能投入一种上述的纸币或者是硬币,当用户重复的进行投币时金额累加。 (3)销售的饮料包括5种:可口可乐(2元),百事可乐(2元)、橙汁(3元)、咖啡(5元)、c纯净水(1.5元); (4)系统通过必要的提示信息,提示用户完成相应的操作。 (5)如果顾客所购买饮料已经售完,则提示用户是否要购买其他的饮料。 (6)完成第一次售货后,系统自动进行结算找零。
3.实现提示 ⑴设计处理钱币的类和商品信息类。处理钱币的类主要是完成和钱币相关的一些操作。如找零钱。 ⑵商品信息类主要是处理和商品信息相关的一些操作。 ⑶设定自动售货机类实现饮料的售货过程,在这个类中将钱币类和商品信息类作为对象成员。 ⑷在实现的时候考虑继承和多态技术的合理使用。 4.测试数据
(二)模拟自动取款机
1.问题描述 模拟银行的自动取款机ATM使用过程中的界面和用户交互过程。 2.基本要求 ⑴模拟自动取款机的流程,实现查询银行卡余额、取款、修改密码、退出系统等功能。 (2)卡号和密码错误时最多输入3次,否则直接退出系统;; (4)系统通过必要的提示信息,提示用户完成相应的操作。 (5)取款金额受到信用卡余额、ATM机单笔最大取款金额和ATM当前剩余余额的限制。 3.实现提示 ⑴设计ATM机类,具有核对密码,取款、修改密码、查询信息、退出系统、锁机吞卡等功能。 (2)银行卡具有身份验证、查询余额、修改密码、交易成功更改余额等工作。
(三)结合课本的MFC例题,设计交互式绘图
1.问题描述 利用鼠标进行交互式绘图。 2.基本要求
- 能够应用MFC的应用程序向导,构造SDI格式的应用程序模板。
- 在SDI模板的基础上,增加一个对话框,实现用户与应用程序的数据交换。
- 在对话框添加以静态文本Static Text和Text控件,用Text控件实现用户与应用程序的数据交换。
- 设计增加菜单项或者工具栏按钮,用菜单命令或工具栏命令完成调用并显示用户设计的对话框功能。
- 在视图窗口中,实现对话框交互式绘图。要求在对话框中的Text控件中输入的数据作为半径,绘制圆。
- 模仿CAD软件,实现鼠标交互式绘图。要求在窗口视图中用鼠标绘制线段:点击、拖动、再点击,完成线段绘制。拖动的时候,要求线段跟着鼠标的光标移动。
(四)学生成绩输入及统计分析
1.问题描述 设计学生成绩输入及统计分析软件,完成至少6门课程成绩的输入,保存文档,并进行各门课程成绩平均分、最低分、最高分、成绩段人数分布、不及格率、优秀率以及6门课程总的平均成绩排序等。 2.基本要求
- 建立一个单文档的工程项目;
- 在该项目中,建立对话框进行学生成绩输入。输入内容包括课程名称、班级、姓名、学号、成绩等;
- 在对话框中使用编辑框、按钮、滚动条等进行选择。
- 在项目主框架的菜单上设置一个菜单调用该对话框;
- 在工具栏设计一个工具按钮,实现调用该对话框的功能;
- 在对话框中对当前输入和部分统计分析结果进行显示。
- 将输入内容保存到文档中;
- 对输入成绩进行统计分析后的结果保存到文档中。
(五)基于视觉的移动机器人自定位*
1.问题描述 根据视觉传感器连续采集的图像信息,移动机器人(或AGV小车)对自身的位置进行计算,并画出自身运动轨迹。 2.基本要求
- 在vc2012中建立一个基于控制台的工程;
- 下载并安装opencv3.0.0;
- 配置项目属性,包括包含目录、库目录、附加依赖库等;
- 选择下载公共数据集KITTI中的odometry数据;
- 读取数据,进行移动机器人定位和运动轨迹的绘制、显示。
|