(此文档为word格式,下载后您可任意编辑修改!)
得分:
信电工程学院
课程设计报告
基于VC的表达式计算器软件设计
课程: 程序设计综合训练1 班级: 12软嵌2班 学号:
姓名: 谢文靖
指导教师: 朱丽
2013年 6 月28日
1
目 录
1引言1
1.1课题背景-----2 1.2课程设计目的 2需求分析-5
2.2系统功能模块 2.3设计要求-----6 3系统实现 8
3.1 对话框界面设计 3.2 数值计算功能的实现0 4程序关键代码及运行结果 -12 5总结与体会
1 引言
1.1 课题背景
计算器是日常生活中十分便捷有效的工具,能实现加、减、乘、除、开方、求倒数等简单运算的工具。要实现计算功能,可以用VC++的知识编写程序来解决此问题。该计算器大大的降低了数字计算的难度及提高了计算的准确度和精确度。该计算器使用非常简单和方便,对广大中小学生的学习有巨大帮助作用,也对在职人员的工作有点帮助作用.
1.2 课程设计目的
本课程是一门实践性很强的课程,既要熟练掌握相关概念,又要动手编程,还要上机调试运行。同时,本课程也注重提高学生编写技术文档和技术文档阅读的能力。学生通过本课程的学习实践,将学习和强化软件开发的能力、文档写作能力、英语阅读能力、软件使用能力等。为今后计算机编程的学习和工作打下良好、扎实的理论实践基础。
2 需求分析
2.1系统功能模块
1)输入的符号,数字从左向右显示; 点击“=”输出结果,在输出行显示
2)支持加减乘除运算; 3)支持“x?y”的运算; 4) 括号“(”“)”的使用; 5)支持混合运算;
6)功能键“ANS” ,“CLEAR” ,“BACKSPACE”的使用; 7)计算器的输入方式:支持鼠标点击计算器键输入; 8)计算器计算结果的输出方式:在计算器窗口的输出行显示 9)算数运算的数据类型:整数和浮点数; 10)特殊情况的计算;
11)以上所有的运算都是在10进制下进行.
1)输入的符号,数字从右向左显示。
先输入“8” 8 再输入“×” 8*
点击“=”输出结果,在输出行显示. 2)支持加减乘除运算.
a.乘法计算:
8*3 24 b. 加法计算 1+0 1 c. 减法计算 8-3 5
d.除法运算(特殊情况见10.B)
94 2.25
2) 支持求次方(x ?y)运算。
求次方(x ?y)运算:
“?”为次方(x ?y)在输入行中的显示符号 4?2 16 4)“(”“)”的使用。(括号的使用)
要使用“(”“)”的时候,先点击“(”,再输入数字或符号,内容输入完毕以后,点击“)”,完成“(”“)”的所有功能。
例如:2×(2+2)=?
2 2*(
2*(2+2 2*(2+2) 2*(2+2) 8
5)支持混合运算。
附:运算符的优先级表
优先级 从 高 到 低
例如:(5+2)×5=?
(5+2)*5 35 6)功能键“CLEAR”及“BACKSPACE”的使用。
a.“CLEAR”为清0键。只要按下“CLEAR”键,输入行所有字符清0,输出行回到原始状态。 输入前:
(5+2)*5 输入后:
功能键 ( 、 ) x?y、1x ×、÷ ﹢﹣ 显示 ( 、 ) ?、~ *、 ﹢﹣ 结合律 自左向右 自左向右 自左向右 自左向右
c++实现计算器毕业课程设计报告



