中南大学C++计算机课程设计实践报告2016
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中南大学
本科生课程设计(实践)报告
计算机程序设计基础(C++)
题目
学生学号
学生姓名
指导教师
学院
专业班级
计算机基础教学实验中心 2016年 7 月 7 日
“计算机程序设计基础(C++)”课程设计报告
1 引言
本次设计目标是参照windows系统提供的计算器,设计一个科学型计算器,为此我们需要掌握好MFC基础,掌握C++应用系统的开发方法和技巧。课程设计实践教程提供的步骤比较标准和准确,但实际操作性不是很强,所以我们应该通过对科学计算机设计来实现对过程的分析,从而掌握利用C++开发的一般设计方法与实现步骤。对帮助我们全面牢固地掌握课堂教学内容、培养学生的实践能力、为今后应用计算机打下良好基础具有重要的意义。在面对errors的解决过程中,培养独立分析问题和解决问题的能力,在生产实践中向卓越工程师的培养目标靠近。
2 总体设计
本次实践的主要目的是了解和掌握运用MFC编程的一般思想和具体操作步骤。基于MFC 库进行对对话框界面的设计,通过创建类成员函数成员变量,编辑控件创建消息映射,调用消息函数完成数据的输入输出,实现计算功能。生成应用软件。
首先需要设计0,1,2,3,4,5,6,7,8,9,0十个数字按钮,其次是+,-,*,/,.,AC,=运算符号,再进行特殊运算符号的设计,流程图如下。
3 详细设计
界面设计
通过按住Ctrl建,复制出统一大小的按钮,框选多个同时移动,使得界面排列有序,整齐。
数字键函数编写
m_result+=_T("N")对每个数字按钮进行赋值;updatedata(false)作用为当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调UpdateData(FALSE);
void CMy0308150317Dlg::OnButton7()
{m_result+=_T("1");
UpdateData(false);
// TODO: Add your control notification handler code here
}
void CMy0308150317Dlg::OnButton8()
{m_result+=_T("2");
UpdateData(false);
// TODO: Add your control notification handler code here
}
void CMy0308150317Dlg::OnButton9()
{
m_result+=_T("3");
UpdateData(false);
}
void CMy0308150317Dlg::OnButton4()
{m_result+=_T("4");
UpdateData(false);
// TODO: Add your control notification handler code here }
void CMy0308150317Dlg::OnButton5()
{
m_result+=_T("5");
UpdateData(false);
}
void CMy0308150317Dlg::OnButton6()
{
m_result+=_T("6");
UpdateData(false);
}
void CMy0308150317Dlg::OnButton2()
{m_result+=_T("8");
UpdateData(false);
// TODO: Add your control notification handler code here }
void CMy0308150317Dlg::OnButton3()
{
m_result+=_T("9");
UpdateData(false);
}
void CMy0308150317Dlg::OnButton10()
{
m_result+=_T("0");
UpdateData(false);
}
void CMy0308150317Dlg::OnButton11()
{
m_result+=_T(".");
UpdateData(false);
}
+,-,*,/普通运算符号的函数
通过对n的不同取值,来实现对函数的调用,方便简单易于操作。函数atof将字串转换为浮点型数,可以将其他型数据转为double型,提高运算精度。
void CMy0308150317Dlg::OnButton13()
{
n=0;
data=atof(m_result);
m_result=_T("");
}
void CMy0308150317Dlg::OnButton14()
{
n=1;
data=atof(m_result);
m_result=_T("");
}
void CMy0308150317Dlg::OnButton15()
{
n=2;
data=atof(m_result);
m_result=_T("");
}
void CMy0308150317Dlg::OnButton16()
{
n=3;
data=atof(m_result);