1、C语言毕业课程设计报告计算器(此文档为word格式,下载后您可任意编辑修改!)C语言课程设计报告计算器题目:设计一个计算器的程序,功能上尽量模仿windows内的计算器目 录() cal.c 各种宏定义;欢迎界面;图像的初始化; do 接受键盘和鼠标输入的命令; 处理命令; while(“命令”=“结束”)鼠标调用的界面模块 mouse.cvoid initialmouse(void); *初始化鼠标函数*double char_to_float(char *p); *字符转换成浮点数*void welcome(); *欢迎界面*(2)、鼠标头文件mouse.cvoid mouse(); 接受
2、鼠标的按键信息int rmouse(void) 初始化鼠标图像图标,并且返回是否成功的信息showmouse() 利用不断复制和粘贴图像的方法来动态显示鼠标光标.c 主控文件 *#include =char_to_float(emp) yuan = char_to_float(sum) - char_to_float(emp); sprintf(sum,%0.10f,yuan); else yuan=char_to_float(emp)-char_to_float(sum); sprintf(sum,-%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0
3、; else if (flag=0) outtextxy(x+30,y+40,emp); stpcpy(sum,emp); else outtextxy(x+30,y+40,sum); ch=; flag=0; emp0=0; e=emp; dian=0; break; case 42: * bar (cheng); delay(8000); initialmouse(); if (ch!=0) switch(ch) case : yuan = char_to_float(sum) char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(
4、x+30,y+40,sum); emp0=0; e=emp; break; case *: yuan = char_to_float(sum) * char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case +: yuan = char_to_float(sum) + char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; ca
5、se -: if (char_to_float(sum)=char_to_float(emp) yuan = char_to_float(sum) - char_to_float(emp); sprintf(sum,%0.10f,yuan); else yuan=char_to_float(emp)-char_to_float(sum); sprintf(sum,-%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; else if (flag=0) outtextxy(x+30,y+40,emp); stpcpy(sum,
6、emp); e=emp; else outtextxy(x+30,y+40,sum); ch=*; flag=0; dian=0; break; case 45: *-* bar (jian); delay(8000); initialmouse(); if (ch!=0) switch(ch) case : yuan = char_to_float(sum) char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case *: yuan = char_to_f
7、loat(sum) * char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case +: yuan = char_to_float(sum) + char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case -: if (char_to_float(sum)=char_to_float(emp) yuan = char_to
8、_float(sum) - char_to_float(emp); sprintf(sum,%0.10f,yuan); else yuan=char_to_float(emp)-char_to_float(sum); sprintf(sum,-%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; else if (flag=0) outtextxy(x+30,y+40,emp); stpcpy(sum,emp); e=emp; else outtextxy(x+30,y+40,sum); ch=-; flag=0; dian
9、=0; break; case 43: bar (jia); delay(8000); initialmouse(); if (ch!=0) switch(ch) case : yuan = char_to_float(sum) char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case *: yuan = char_to_float(sum) * char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy
10、(x+30,y+40,sum); emp0=0; e=emp; break; case +: yuan = char_to_float(sum) + char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case -: if (char_to_float(sum)=char_to_float(emp) yuan = char_to_float(sum) - char_to_float(emp); sprintf(sum,%0.10f,yuan); else yu
11、an=char_to_float(emp)-char_to_float(sum); sprintf(sum,-%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; else if (flag=0) outtextxy(x+30,y+40,emp); stpcpy(sum,emp); e=emp; else outtextxy(x+30,y+40,sum); ch=+; flag=0; dian=0; break; case m: bar (fuhao); delay(8000); initialmouse(); for (i
12、=0;i=79;i+) if (empi=0) break; if (flag=0) *e=-;e+;*e=0; outtextxy(x+30,y+40,emp); else outtextxy(x+30,y+40,sum); break; case 49: *1* bar (num1); delay(8000); initialmouse(); for (i=0;i=79;i+) if (empi=0) break; if (flag=0) *e=1;e+;*e=0; outtextxy(x+30,y+40,emp); else outtextxy(x+30,y+40,sum); break
13、; case 50: bar (num2); delay(8000); initialmouse(); for (i=0;i=79;i+) if (empi=0) break; if (flag=0) *e=2;e+;*e=0; outtextxy(x+30,y+40,emp); else outtextxy(x+30,y+40,sum); break; case 51: bar (num3); delay(8000); initialmouse(); for (i=0;i=79;i+) if (empi=0) break; if (flag=0) *e=3;e+;*e=0; outtextx
14、y(x+30,y+40,emp); else outtextxy(x+30,y+40,sum); break; case EXP: * bar (zhishu); delay(8000); initialmouse(); if (flag=1&ch=0)yuan = exp(char_to_float(sum); else yuan =exp(char_to_float(emp); sprintf(emp,%0.10f,yuan); outtextxy(x+30,y+40,emp); flag=0; dian=0; break; case ENTER: bar (enter); delay(8
15、000); initialmouse(); if (ch!=0) switch(ch) case : yuan = char_to_float(sum) char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case *: yuan = char_to_float(sum) * char_to_float(emp); sprintf(sum,%0.10f,yuan); outtextxy(x+30,y+40,sum); emp0=0; e=emp; break; case +: yuan = c
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1