【VC++开源代码栏目提醒】:网学会员--在 VC++开源代码编辑为广大网友搜集整理了:仿window界面计算器设计(含代码) - 编程语言绩等信息,祝愿广大网友取得需要的信息,参考学习。
程序设计课题名称 计算器设计专业班级 电信 1003 班学生姓名 张阳平 三 2011 年 10 月 17 日 目录1 设计目的.....................................................................................................................22.系统需求分析............................................................................................................2 2.1 系统目的..........................................................................................................2 2.2 主体功能..........................................................................................................2 2.3 开发环境..........................................................................................................33 系统概要设计.............................................................................................................4 3.1 系统流程图......................................................................................................4 3.2 程序模块组成及各模块功能..........................................................................6 3.2.1 系统主函数:.......................................................................................6 3.2.2 初始化界面函数:...............................................................................6 3.2.3 界面上主要按钮响应:.........................................................................7 3.2.4 系统关闭函数:.....................................................................................7 3.2.5 计算函数:.............................................................................................7 3.2.6 被调函数:.............................................................................................8 3.2.7 被调函数:.............................................................................................8 3.2.8 被调函数:.............................................................................................8 3.3 系统功能划分..................................................................................................84 系统详细设计.............................................................................................................9 4.1 设计步骤.........................................................................................................9 4.2 界面
设计....................................................................................................... 11 4.3 实现各模块功能的流程图..........................................................................13 4.3.1 主函数功能模块图.............................................................................13 4.3.2Main_OnCommand 函数响应模块图.....................................................13 4.3.3 、count()运算函数流程图..........................................................14 4.3.4、num函数流程图。
........................................................................155 测试...........................................................................................................................16 5.1 测试方案:....................................................................................................16 5.2 测试结果........................................................................................................166 小结...........................................................................................................................207 参考文献...................................................................................................................208
程序源
代码...............................................................................................................211 设计目的 1. 拥有 windows 计算器界面。
2. 能通过点击界面按钮进行操作,能实现普通计算器的大部分操作。
3. 显示当前系统时间。
2.系统需求分析2.1 系统目的 帮助解决
学习和生活中复杂的运算,提高
工作学习效率。
2.2 主体功能 1、十进制数的加、减、乘、除、乘方运算。
2、sin、cos、tan、log、开方、指数的运算。
3、能实现多项式的运算(可打括号)。
4、产生
系统随机数。
5、可显示系统当前年月时分秒。
2.3 开发环境 Windows 操作系统,
vc6.03 系统概要设计3.1 系统流程图图1 3.2 程序模块组成及各模块功能 系统主函数 BOOL WINAPI Main_Proc(); 初始化计算器界面及显示时间 Main_OnInitDialog() 获取鼠标点击消息函数并执行界面所需的各种命令 Main_OnCommand() 界面退出函数 Main_OnClose(); 计算函数 Count(); 将字符串转换为 double 型数值 num(); 优先运算乘除调用函数 cheng(); 时间函数 BACK MyTime(); 各函数功能描述如下:3.2.1 系统主函数: BOOL WINAPI Main_Proc();实际调用为:BOOL WINAPI Main_ProcHWNDhWnd UINT uMsg WPARAM wParam LPARAM lParam里面处理,根据 uMsg 判断消息类型,WPARAM wParam LPARAM lParam 来确定坐标,然后获得按钮坐标,对比一下,如果在里面就下处理,不在就调用默认处理3.2.2 初始化界面函数: Main_OnInitDialog() 启动时及显示图形界面及时间。
为: BOOL Main_OnInitDialogHWND hwnd HWND hwndFocus LPARAM lParam SetTimerhwnd01000MyTime return TRUE 3.2.3 界面上主要按钮响应: Main_OnCommand(),收每次点击按钮的消息并将其记录在字符串中。
Main_OnCommandHWND hwnd int id HWND hwndCtl UINT codeNotify3.2.4 系统关闭函数: Main_OnClose();退出操作系统。
void Main_OnCloseHWND hwnd EndDialoghwnd 0 3.2.5 计算函数: Count()计算器的主要运算函数。
3.2.6 被调函数: num();此函数能将字符串数字转化为 double 型的数值,并可放回 cos,sin,tan,ran,log 的值。
3.2.7 被调函数: cheng() , ,将此函数放在运算符“”“-”后实现“” “/”的优先运算。
3.2.8 被调函数: BACK MyTime();得到系统当前的时间,并保存在字符串中,调用它时返回此字符串的头指针。
3.3 系统功能划分 界面上按键共有 29 个,各键部分键功能特性如下序号 符号 实际输出 功能1 数字键 0 至 9 数字键 0 至 9 用于数字输入2 . . 小数点3 - / - / 普通运算符4 cos Cos 求余弦值5 sin Sin 求正弦值6 tan Tan 求正切值7 log10 Log10 求对数8 E e 求 e 的 n 次方9 Y(x) v 求 y 的 x 次方10 Sqrt g 开方符号11 括号12 rand rand 产生随机数13 无 产生结果14 C / 清空字符串15 退出 / 关闭 图2表中含括号,因此可以进行多项式的运算。
4 系统详细设计4.1 设计步骤打开
VC6.0 并安装好向导 win32 DialogBased Application。
输入工程名点击确定 图3点击确定后点出控件如下图: 图44.2 界面设计在 ResourceView 中双击 dialog 目录下地 IDD_MIAN 即出现如图 4 所示的界面。
点击选定控件查看其属性即可对其进行相应 ID 和名称的改变如图 5。
通过拖放不同控件可以设计好计算器的界面如图 6。
图5图六4.3 实现各模块功能的流程图4.3.1 主函数功能模块图 初始化界面 Main_OnInitDialog 否 是否点击关闭 是 执行 执行 Main_OnCommand Main_OnClose 图七4.3.2Main_OnCommand 函数响应模块图 图八4.3.3 、count()运算函数流程图 通过反复的调用 num()、cheng()、及 count()本身的递归调用得出运算结果。
图九4.3.4、num函数流程图。
Num()函数可将数字字符串转化为 double 型数,当 switch(P)中P 为sin,cos,tan,long10,sqrt,rand 和 e 等单目运算符时,将有 sinnum()等运算,递归调用 num()函数,并将结果返回给 count()函数。
是图 105 测试5.1 测试
方案: 1、输入多项式,检测其结果的正确性。
2、输入各种含三角函数的多项式,检测其结果。
5.2 测试结果 1)、初始化界面为:输入多项式:结果为:2)、输入含三角函数的多项式:结果为: