1 / 13
文档名称:

用c语言编写的计算器源代码.doc

格式:doc   大小:83KB   页数:13页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

用c语言编写的计算器源代码.doc

上传人:乘风破浪 2019/5/3 文件大小:83 KB

下载得到文件列表

用c语言编写的计算器源代码.doc

文档介绍

文档介绍:作品:科学计算器作者:欧宗龙编写环境:vc++:c#include""#include<>#include<>#include<>#include""#include""#include<>#include<>#=FALSE;BOOLWINAPIMain_Proc(HWNDhWnd,UINTuMsg,WPARAMwParam,LPARAMlParam){switch(uMsg){HANDLE_MSG(hWnd,WM_INITDIALOG,Main_OnInitDialog);HANDLE_MSG(hWnd,MAND,mand); HANDLE_MSG(hWnd,WM_CLOSE,Main_OnClose);}returnFALSE;}BOOLMain_OnInitDialog(HWNDhwnd,HWNDhwndFocus,LPARAMlParam){returnTRUE;}voidTrimNumber(chara[])//判断并删除小数点后无用的零{ for(unsignedi=0;i<strlen(a);i++) { if(a[i]=='.') { for(unsignedj=strlen(a)-1;j>=i;j--) { if(a[j]=='0') { a[j]='\0'; } elseif(a[j]=='.') { a[j]='\0'; } elsebreak; } } }}doubleOperate(charOperator,doublen1,doublen2)//判断符号,进行相应的运算{ if(Operator=='0') { } if(Operator=='+') { n2+=n1; } if(Operator=='-') { n2=n1-n2; } if(Operator=='*') { n2*=n1; } if(Operator=='/') { n2=n1/n2; } if(Operator=='^') { n2=pow(n1,n2); } return n2;}////////////////////////////////////////////////voidIntBinary(chara[],intn){if(n>1)IntBinary(a,n/2);sprintf(a,"%s%i",a,n%2);}voiddecimal(chara[],doublem){if(m>){m=m*2;sprintf(a,"%s%d",a,(long)m);decimal(a,m-(long)m);}}voidBinary(chara[],doubleNum){ charDecP[256]=""; doublex,y; double*iptr=&y; x=modf(Num,iptr); decimal(DecP,x); IntBinary(a,(int)y); strcat(a,"."); strcat(a,DecP);}////////////////////////////////////mand(HWNDhwnd,intid,HWNDhwndCtl,UINTcodeNotify){ staticDELTIMES=0; harstr[256]; harOperator='0'; staticdoubleRNum[3];switch(id){ caseIDC_BUTTONN1://数字1 { if(A_Op) { SetDlgItemText(hwnd,IDC_EDIT,NULL); } GetDlgItemText(hwnd,IDC_EDIT,str,sizeof(str)); strcat(str,"1"); SetDlgItemText(hwnd,IDC_EDIT,str); RNum[1]=atof(str); A_Op=FALSE; } break; caseIDC_BUTTONN2://数字2 { if(A_Op) { SetDlgItemText(hwnd,IDC_EDIT,NULL); } GetDlgItemText(hwnd,IDC_EDIT,str,sizeof(str)); strcat(str,"2"); SetDlgItemText(hwnd,IDC_EDIT,str); RNum[1]=atof(str); A_Op=FALSE; } break; caseIDC_BUTTONN3://数字3 { if(A_Op) { SetDlgItemText(hwnd,IDC_EDIT,NULL