- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++程序设计设计性实验报告
实验项目名称:中学生成绩管理信息系统设计与开发
专业班级: 信息XX ;姓名: XX ;学号 XX
实验起止日期:起于 XX 年 11 月1日止于 XX 年 12 月10日
实验目的:学会用C++语言和数据结构二叉树后序遍历算法实现表达式的解析与计算;学会使用动态链接库技术进行编程;学会编辑、编译、运行MFC应用程序的基本过程.
实验要求:包括系统设计要求,开发环境要求,技术文档要求三部分。
系统设计要求:
最低要求:能完成双精度型数值的加、减、乘、除计算;编程中使用了动态连接库技术.
较高要求:能完成双精度型数值的加、减、乘、除计算;编程中使用了动态连接库技术; 能实现表达式的输入,解析与计算
开发环境要求:
软件环境:windows98/windowsXP/windows2000,Visual C++
硬件环境:计算机(Pen4CPU, 256MRAM,60G以上硬盘,输入输出设备)
技术文档要求:
按照软件工程技术文档编写要求进行。要求流程图绘制规范,模块功能描述清晰,数据字典齐全。
实验内容:
1 C++语言的顺序结构,分支结构,循环结构,函数,结构体,指针。
2 数据结构中的二叉树数据组织、存贮、后序遍历及其操作
实验具体方案:按照系统设计要求,用Visual C++设计和开发一个MFC应用程序---高级计算器,提交由需求分析;系统设计说明(包括主菜单、子菜单、模块功能简介、数据字典、系统结构图);系统技术文档 (包括系统各模块主要流程图,软件总体测试方案与测试记录、局部测试方案与测试记录、软件调试和修改记录、测试结论、运行情况记录),系统使用说明书,源程序代码为附录构成的实验报告。
需求分析:
需求获取:
本实验要求编写一个高级计算器。能完成双精度型数值的加、减、乘、除计算,编程中使用了动态连接库技术,能实现表达式的输入,解析与计算。
需求分析:
实验要求实现表达式的输入,这在MFC上通过连加不难实现,但要实现最终求解却很困难。要解决这个问题需要把输入的操作数放进一个字符数组中,而且为了计算方便需要通过栈把这个字符数组中存放的中序表达式转化成后序表达式(后序表达式中不含左右括号,这可以大大简化结果的求解)。而且为了继续运算,应该在每次计算完清空栈。
逻辑模型:计算器输入的字符存放在字符数组中,将字符数组传入动态链接库已申明的函数中,将中序表达式转化成后序表达式(将后序表达式也存进一个字符数组中),将这个数组传入动态链接库中已申明的函数中,返回一结果输出在编辑框中。
需求规格说明书:
设计一个基于对话框的软件运行界面,在上面添加0——9的操作数键位。在上面添加+、-、*、/、(、)、=、清零键位 。添加编辑框键位,并要在其上输出表达式。
编写算法阶段:首先要声明一个字符数组用于存放中缀表达式(为了后面算法的编写方便和有效控制,要输入一个结束字符)。声明一个字符类型的栈用于中缀转后缀,并把后缀表达式存放进一个字符数组。声明一个实型栈用于计算结果。
需求评审:
对需求分析阶段的工作复查,可以看到需求文档满足一致性、可行性、完整性和有效性。
系统设计说明(包括主菜单、子菜单、模块功能简介、数据字典、系统结构图);
系统结构图
由上面的系统图可看出本系统有三大模块:
(1)输入表达式模块:
该模块的功能主要是将输入的表达式放入一个字符数组中,当然还要将表达式输入到编辑框中(这是MFC中的相关内容,主要是在输入+、-、*、/操作符后不要刷新,这样可将一个完整的表达式输入到编辑框。)
(2)中序变后序模块:
该模块的功能主要是把中序表达式转化为后序表达式,在后序表达式将不存在左右括号,这样可大大简化计算结果算法的编写。
(3)计算结果模块:
该模块功能是通过后序表达式得到结果。其主要思想是:设置一个栈存放操作数,从左到右依次扫描后缀表达式,每读到一个操作数就将其入栈;每读到一个运算符就从栈顶取出两个操作数施以该运算符所代表的运算操作,并把运算结果入栈;此过程一直进行到后缀表达式读完,最后栈顶的操作数就是该后缀表达式的运算结果。
数据词典:看后面的软件运行图,该界面主要有以下键组成:
1——9键位:用于输出数据。
运算符键位:用于控制运算。
编辑框:用于输出表达式和结果。
清零键:用于清除编辑框中的表达式和结果。
确定键:用于退出软件运行界面。
系统技术文档 (包括系统各模块主要流程图,软件总体测试方案与测试记录、局部测试方案与测试记录、软件调试和修改记录、测试结论):
输入表达式模块流程图:
2.中缀转后缀模块表达式:
说明:当遇到左右括号是算法将在此时去掉括号,当遇到结束标记时,算法在此结束处理。
3.计算结果模块:
系统技术文档 (包括系统各模块主要
您可能关注的文档
- 区域医疗医学影像信息共享方案进展与面临的挑战.pdf
- 联合用药治疗顽固性湿疹32例效果观察.pdf
- 内蒙古银行2011校园招聘大礼包_备战内蒙古银行2011校园招聘.pdf
- 上海浦东发展银行贵阳分行2011校园招聘大礼包_备战上海浦东发展银行贵阳分行2011校园招聘.pdf
- 小肠超声造影应用进展.pdf
- 临床护理安全用药管理的探索与思考.pdf
- 中国航信2011校园招聘大礼包_备战中国航信2011校园招聘.pdf
- 汤森路透2011校园招聘大礼包_备战汤森路透2011校园招聘.pdf
- 复星集团2011校园招聘大礼包_备战复星集团2011校园招聘.pdf
- 人类功能基因组研究与开发的进展及对策建议.pdf
- 2024年度安永全球另类投资基金调查报告.docx
- 2024年中国汽车产业出海回顾分析 -中汽信科国际化研究团队.docx
- 【民航局国际合作服务中心】马尔代夫民航业发展研究报告.docx
- 2025走向融合与深化的中国媒介市场报告-星传媒体.docx
- 2023Givaudan和ESG目的与性能.docx
- 中国民间应对气候变化行动故事集-教育故事.docx
- 2025AI制药市场规模产业链构成应用现状及AI制药公司分析报告.docx
- 医疗器械专题之基因测序:分子诊断掌上明珠,四代测序开启规模化应用时代.docx
- 2024年中央银行黄金储备调查报告 202406.docx
- 智慧芽 -2024第4季度全球潜力靶点及FIC产品调研报告.docx
文档评论(0)