C语言课程设计报告
——计算器
一、需求分析
1、 演示程序中,对数据进行四则运算。
2、 由于人们长期在window下工作,程序最好要键盘和鼠标都可以用。界面要适应人们的习惯。
3、 程序执行的命令包括: 1)、乘法;2)、除法3)、加法4)、减法5)、自然对数 6)、结束。 4、测试数据:(以加法为例) (1)、‘0’+‘0’应输出“0”。 (2)、‘80’-‘30’应输出“50.00000000”。 (3)、’2’* ‘35’应输出“70,0000000000”. (4)、’2’/ ‘1’应输出“2.00000000000”. (5)’1’ ‘exp’;应输出“2.7182818285”。 二、设计思路
我们首先要考虑的是如何记录用户的输入信号,识别信号,按照信号的处理要求的不同进行不同的操作,因此我们可以考虑用两个字符串不停地来记录数据,但检测到用户按等号的时候,再转换成数字来处理,结合到鼠标的应用,从鼠标左键的输入信号和键盘有着同样的。再用显示界面函数来显示计算器的外观。
本程序包含两个模块: 1) 主程序模块:
void main() //cal.c {
各种宏定义; 欢迎界面;
图像的初始化; do{
接受键盘和鼠标输入的命令;
1
处理命令;
}while(“命令”=“结束”) }
2) 鼠标调用的界面模块 //mouse.h
各模块之间的调用关系如下:
主程序模块 输入命令的接受 计算器界面外形 数据的处理 数据的表示 三、详细设计 1、主要函数
(1)、主控模块main.c
void initialmouse(void); /*初始化鼠标函数*/
double char_to_float(char *p); /*字符转换成浮点数*/ void welcome(); /*欢迎界面*/ (2)、鼠标头文件mouse.c
void mouse(); //接受鼠标的按键信息
int rmouse(void) //初始化鼠标图像图标,并且返回是否成功的信息 showmouse() //利用不断复制和粘贴图像的方法来动态显示鼠标光标 hidemouse() //关闭光标
getmousecoods() //得到鼠标当前的信息 void movemouse(int x,int y); //确定鼠标的位置
Area(int x0,int y0,int x1,int y1) //设置鼠标移动的位置范围 guangbiao(int x,int y) //画出光标
2