课程设计。
课程名称 c++面向对象课程设计。
题目名称 windows计算器(标准版)
学生学院。专业班级。
学号。学生姓名。
指导教师。2024年06 月 18 日。
仿windows计算器(标准版)课程设计。
一、设计题目 3
二、设计目的 3
三、设计内容 3
1、类的设计 3
2、主要功能** 4
1) 使用的头文件 4
2) **初始化 4
3) 设置显示框的字体 4
4) 删除1位数字 5
5) 复位 5
6) 数字响应(1,0和。举例) 5
7) 等号,调用stack中的text函数进行四则运算。当除数为0或按下+-*键后再按=时,显示错误并语音提示 7
8) 显示函数 7
9) test函数进行四则运算,radix代表进制,当为10时进行十进制计算并返回运算结果 8
四、测试结果及分析总结 11
1、计算6*5+6*3+0.1*5=48.5结果 11
2、计算55/0提示错误并语音提示 12
3、分析总结 13
五、设计心得及体会 13
六、参考文献 13
一个简单的计算器,风格和功能可参考windows系统中的计算器(标准版)。
1、使学生进一步巩固《面向对象程序设计》课程中的基本概念、理论、分析方法和实现方法;
2、熟悉vc++等编译环境,掌握应用vc++开发软件的基本技能。增强学生软件开发能力;
3、尝试将所学的内容解决实际工程问题,培养学生的工程实践能力。
本份计算器一共有五个类,分别是:arraystack;caboutdlg;ccaculateapp;ccaclatedlg;stack.
功能如下:arraystack和stack:为计算器提供了基本的四则运算函数及选最大值函数。
caboutdlg:计算器的界面及功能设计。
ccaculateapp:封装了windows应用程序控制和属性。
ccaclatedlg:通过对象定义了计算器要用到的各个函数及字符串等。
1) 使用的头文件。
#include ""
#include ""
#include ""
#include ""
#include ""stack为头文件储存。
#include <>****要用到的函数。
#pragma comment( lib, "
2) **初始化。
// note that loadicon does not require a subsequent destroyicon in win32
m_hicon = afxgetapp()-loadicon(idr_mainframe);
this->num1 =0.0;
this->num2 =0.0;
// 一元运算标志。
this->unary_operation = false ;
// 二元运算标志。
this->binary_operation = false ;
this->operation_type=nop;
// 数据缓存区。
this->num_buffer = 0" ;
this->equal=0;
this->tmp="0";
//最终结果显示。
this->num_sum ="0";
3) 设置显示框的字体。
cfont * f_edit ;
f_edit = new cfont ;
f_edit->createfont(20nheight
0nwidth
0nescapement
0norientation
fw_bold, /nweight
truebitalic
falsebunderline
0cstrikeout
ansi_charsetncharset
out_default_precisnoutprecision
clip_default_precisnclipprecision
default_qualitynquality
default_pitch | ff_swiss, /npitchandfamily
_t("arial"))
m_ ;4) 删除1位数字。
void ccaculatedlg::onbuttondelete()
this->check()
int i=strlen(num_buffer);
num_if ( num_ )
fresh();
5) 复位。
void ccaculatedlg::onbuttonc()
this->check()
this->num1 =0.0;
this->num2 =0.0;
// 一元运算标志。
this->unary_operation = false ;
// 二元运算标志。
this->binary_operation = false ;
this->operation_type=nop;
// 数据缓存区。
this->num_buffer = 0" ;
this->equal=0;
this->tmp="0";
fresh("0");
6) 数字响应。
void ccaculatedlg::onbutton1()
// 数字 1
void ccaculatedlg::onbutton1()
// 数字 1
this->check()
if(num_'=1)
num_buffer="0当上一次已运算完成时,如果没对数据进行复位即按数字键进行下次运算,显示响应数字。
if(num_'0') 0 ||num_ )
num_buffer +=1当第一位数为0并且没有小数点,显示响应数字,否则在前一位数字后再加响应数字。
elsenum_buffer = 1" ;
freshvoid ccaculatedlg::onbutton0()
// 数字 0
this->check()
if(num_'=1)
num_buffer="0";
cstring tmp = num_buffer ;
// 当为小数点后或其前面有不为零的数时允许输入零。
if ( 123456789" )1 )
elsefresh();
void ccaculatedlg::onbuttonpoint()
// 小数点。
this->check()
if(num_'=1)
num_buffer="0";
if ( num_ )
else if ( num_ )
else if(num_
fresh();
7) 等号,调用stack中的text函数进行四则运算。当除数为0或按下+-*键后再按=时,显示错误并语音提示。
void ccaculatedlg::onbuttonequal()
const double epsinon = 0.0 ;
c语言课程设计报告 课程设计报告
周口师范学院。课程设计报告。院 系 计算机科学与技术学院 班级。学生姓名学号。设计题目 职工工资管理系统。完成日期 年月日 课程设计任务书。设计题目 工资管理系统 教研室主任指导教师 年月日。摘要11设计内容 任务及具体要求2 1.1设计内容2 1.2设计任务及具体要求2 2概要设计3 2.1该系统...
C课程设计报告
题目各类图形面积与周长计算和高考倒计时。学生姓名张磊 学号 20131344054 学院计算机与软件学院 专业软件工程 指导教师马瑞。二 一五年六月 25 日。目录。1 引言 1 1.1 系统开发背景和意义 1 1.2 服务器运行环境 2 1.3 课题内容 2 2 系统需求分析及相关技术介绍 2 2...
C 课程设计报告
c 程序课程设计报告。学院 资源与安全工程学院 专业班级 城市地下空间工程1303 姓名卢途。指导教师 彭述权。课程设计时间 2013 2014学年第二学期18 19周。一 题目一 设计一 学生成绩管理系统 它的主要功能是对学生的成绩进行输入 修改和管理。系统功能要求 界面要求 学生成绩管理系统 1...