25
}
pass3=0;
UpdateData(FALSE);
2、加减乘除和小数点的输入
void CLuxiaoyingDlg::OnJiaButton13() { }
void CLuxiaoyingDlg::OnJianButton14() { }
void CLuxiaoyingDlg::OnChengButton15() {
// TODO: Add your control notification handler code here UpdateData(TRUE);
m_str = m_str + \乘号 pass1=1;
UpdateData(FALSE);
25 1
// TODO: Add your control notification handler code here UpdateData(TRUE);
m_str = m_str + \加号 pass1=1;
UpdateData(FALSE);
// TODO: Add your control notification handler code here UpdateData(TRUE);
m_str = m_str + \减号 pass1=1;
UpdateData(FALSE);
26
}
void CLuxiaoyingDlg::OnChuButton16() { }
void CLuxiaoyingDlg::OnDianButton12() { }
3、清除功能的实现
void CLuxiaoyingDlg::OnClearButton17() {
// TODO: Add your control notification handler code here UpdateData(1); m_str=\
pass1=1;// 之前是否有操作符输入,有,则为1,无,则为0 pass2=1;//是否有小数点,有,则为0,无,则为1 pass3=1;// 之前是否有数字输入,有,则为0,无,则为1 UpdateData(0);
26 1
// TODO: Add your control notification handler code here UpdateData(TRUE);
m_str = m_str + \除号 pass1=1;
UpdateData(FALSE);
// TODO: Add your control notification handler code here UpdateData(1); if(pass1==1&&pass2==1)
m_str+=\
pass2=0; UpdateData(0);
27
}
4、cos功能的实现
void CLuxiaoyingDlg::OnCosButton23() {
// TODO: Add your control notification handler code here double a,itemp=0,rate=10.0; int i;
UpdateData(TRUE);
for(i=0;i 27 1 if(isdigit(m_str.GetAt(i))) { } else if(m_str.GetAt(i)=='.') rate=0.1; if(rate==10.0) { } else { } itemp=itemp+rate*(m_str.GetAt(i)-'0'); rate=rate/10; if(i==m_str.GetLength()-1) a=itemp; itemp=itemp*rate+(m_str.GetAt(i)-'0'); if(i==m_str.GetLength()-1) a=itemp; 28 } a=cos(a*3.1415926/180); m_str.Format(\pass1=0; UpdateData(FALSE); 5、倒数功能的实现 void CLuxiaoyingDlg::OnDaoshuButton19() { // TODO: Add your control notification handler code here double a,itemp=0,rate=10.0; int i; UpdateData(TRUE); for(i=0;i if(isdigit(m_str.GetAt(i))) { if(rate==10.0) { } else { } 28 1 itemp=itemp*rate+(m_str.GetAt(i)-'0'); if(i==m_str.GetLength()-1) a=itemp; itemp=itemp+rate*(m_str.GetAt(i)-'0'); rate=rate/10; if(i==m_str.GetLength()-1) a=itemp;