- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算器VC源代码
VC++计算器设计
设计一个简单的计算器,能够实现浮点型数的加、减、乘、除、开方、倒数运算。运行界面如图所示。
步骤如下:
1、创建一个对话框应用程序MyCalculator;
2、在“Project Workspace”窗口,选择“Resource View”标签,双击Dialog下的“IDD_MYCALCULATOR_DIALOG”,从“IDD_MYCALCULATOR_DIALOG”对话框删除“OK” 和“ Cancel”及“TODO文本” ,将对话框标题设置为“计算器”。
3、编辑对话框资源。向对话框添加按钮 Button 控件,并设置属性见表。
计算器对话框对象属性
对象 控件ID Caption 对象 控件ID Caption Button IDC_BUTTON0 0 Button IDC_BUTTON_MUTIPLY * Button IDC_BUTTON1 1 Button IDC_BUTTON_DIV / …… …… …… Button IDC_BUTTON_CLEAR C Button IDC_BUTTON9 9 Button IDC_BUTTON_SQRT sqrt Button IDC_BUTTON_POINT . Button IDC_BUTTON_RECI 1/x Button IDC_BUTTON_SIGN +/- Button IDC_BUTTON_EQUAL Button IDC_BUTTON_ADD + Edit Box IDC_DISPLAY 只读) Edit Button IDC_BUTTON_MINUS - 4、为对话框类添加成员变量
double m_first;//存储一次运算的第一个操作数及一次运算的结果
double m_second;//存储一次运算的第二个操作数
CString m_operator;//存储运算符
double m_coff;//存储小数点的系数权值
CString m_display;//编辑框IDC_DISPLAY的关联变量,显示计算结果
5、在对话框类的构造函数中,初始化成员变量
CMyCalculatorDlg::CMyCalculatorDlg CWnd* pParent /* NULL*/ : Dialog CMyCalculatorDlg::IDD, pParent ……
m_display _T 0.0 ;
m_first 0.0;
m_second 0.0;
m_operator _T + ;
m_coff 1.0;
…… 6、为对话框添加2个成员函数:
void UpdateDisplay double lVal —用于在编辑框中显示数据
void Calculate ---用于计算
void CMyCalculatorDlg::UpdateDisplay double lVal //在编辑框中显示数据
m_display.Format _T %f ,lVal ; int i m_display.GetLength ;
while m_display.GetAt i-1 0 //格式化输出,将输出结果后的零截去 m_display.Delete i-1,1 ; i--;
UpdateData false ;//更新编辑框变量m_display void CMyCalculator::Calculate //将前一次数据与当前数据进行运算,作为下次的第一操作数,并在编辑框显示。
switch m_operator.GetAt 0 case +: m_first+ m_second;break; case -: m_first- m_second;break; case *: m_first* m_second;break;
case /: if fabs m_second 0.000001 m_display 除数不能为0; UpdateData false ; return; m_first/ m_second;break; m_second 0.0;
m_coff 1.0;
m_operator _T + ;
UpdateDisplay m_first ;//更新编辑框显示内容 7、为Button按钮的BN_CLICKED事件添加响应函数,并编写代码
数字”N”的消息响应函数 N 0,1,…9
void CMyCalculatorDlg::OnButtonN if m_coff 1.0 m_second m_second*10 + N;//作为整数输入数字时
else m_second m_second + N*m_coff; //
您可能关注的文档
- Android系统服务之看门狗.ppt
- 2014高考英语易错动词总结.doc
- 英语课演说pptThe Top 10 Qualities Of A Good Teacher.ppt
- 高中艺术生动词形容词副词词汇表.doc
- 2014年海淀区初三英语第一学期期中练习.docx
- 氙气技术说明.doc
- 不规则动词快速记忆表.doc
- 显示器操作说明.doc
- 汽车氙气大灯介绍.doc
- 显示器接口解读第二期:HDMI和DisplayPort.doc
- 《JJF 2132-2024荧光紫外灯人工气候老化试验装置校准规范:辐射照度参数》.pdf
- JJF 2120-2024轮速传感器校准规范.pdf
- 计量规程规范 JJF 2120-2024轮速传感器校准规范.pdf
- 《JJF 2129-2024钙钛矿太阳电池校准规范:光电性能参数》.pdf
- JJF 2129-2024钙钛矿太阳电池校准规范:光电性能参数.pdf
- 《JJF 2120-2024轮速传感器校准规范》.pdf
- JJF 2117-2024沥青混合料理论最大相对密度仪校准规范.pdf
- JJF 2116-2024特定蛋白分析仪校准规范.pdf
- 《JJF 2116-2024特定蛋白分析仪校准规范》.pdf
- 计量规程规范 JJF 2117-2024沥青混合料理论最大相对密度仪校准规范.pdf
文档评论(0)