第4课大型综合程序范例解析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4课大型综合程序范例解析

简单计算器-函数设计 util.c char getnumber (int x,int y) 获取单击按钮图标 每个按钮的位置是确定的(即矩形框的左上角坐标和大小已知) 根据单击按钮时鼠标的(x,y)可确定单击了哪个按钮,函数返回按钮的标签 例: 左上角坐标为(150,105)和右下角为(200,135)的矩形框表示计算器上数字7按钮 void clearscreen() 清信息显示框 清除信息显示框中的数据(可能是输入的数或输出的计算结果) int kx(char d) 获取按钮的左上角x坐标 d表示按钮的图标 根据d返回按钮的左上角x坐标 按钮左上角坐标为模拟单击按钮服务 第4章 大型综合程序范例解析 简单计算器-函数设计 util.c int ky(char d) 获取按钮 的左上角 y坐标 d表示按钮的图标 根据d返回按钮的左上角y坐标 按钮左上角坐标为模拟单击按钮服务 void outch(double sum) 在信息显 示框中输 出sum sum的绝对值大于1e20,输出E,即对太大或太小的数显示出错 sum小于等于1e20且大于等于1e8,显示格式为d.dExx sum大于等于-1e20且小于等于-1e8,显示格式为-d.dExx sum的值在-1e8和1e8之间,若是0,显示0. 其他,按实际显示 第4章 大型综合程序范例解析 compute.c void compute() 简单计算器的主处理函数 最外层循环由鼠标右键控制,单击右键则计算器退出 在其内层,判断鼠标左键是否单击,无则仅做移动鼠标光标处理 若单击左键,且MouseLeftFlag全局变量为1,则置该变量为0,避免重复进入,并进行相应处理 若单击的是C,则启用计算器 若单击0-9数字键,则进行第1个或第2个输入数据的处理 若单击加,减,乘,除,等号按钮,进行相应的计算处理 若单击小数点按钮的处理 若单击求平方根按钮的处理 若单击+/-按钮的处理 double calculate(double u, double v,int sign) 加减乘除计算处理 根据sign的运算符进行加减乘除的计算处理 计算结果保存在u中,但由函数返回 void main() 计算器的main()函数 应用程序由多个文件组成时,仅能有一个main()函数 简单计算器-函数设计 第4章 大型综合程序范例解析 第4章 大型综合程序范例解析 简单计算器 源程序: 略 第4章 大型综合程序范例解析 简单计算器 测试: 关于测试方法和特殊输入的测试,针对简单计算器程序,我们可以从以下几个方面来检验程序功能是否正确。 1.界面及按钮单击测试 检查界面布局是否合理、正确,单击按钮是否有按下再弹起效果,单击按钮的输入是否正确。 简单计算器 第4章 大型综合程序范例解析 测试: 2.简单计算器的功能测试 (1) 加、减、乘、除四则运算的测试。 (2) 优先级处理的测试 单击‘1’、‘+’、‘2’、‘* ’、‘4’、‘=’按钮,结果是12,即不支持四则运算的优先级。因为单击‘*’按钮时,1+2的结果3已经计算并显示在信息显示框中,此时继续计算乘4得结果12。 简单计算器 第4章 大型综合程序范例解析 测试: (3) 求平方根运算的测试 1)计算sqrt(9) 先单击9、再S按钮,看结果是否正确。 2)计算1+sqrt(9) 检查是否能正确1+sqrt(9)。 通过以上测试可以基本确定计算器程序是否实现了预定的功能。 第4章 大型综合程序范例解析 主要内容 通讯录范例解析 简易计算器范例解析 俄罗斯方块范例解析 第4章 大型综合程序范例解析 俄罗斯方块 问题描述: 要求支持键盘操作和7种不同类型方块的旋转变换,并且界面上显示下一个方块的提示以及当前的玩家得分 第4章 大型综合程序范例解析 俄罗斯方块 功能分析: 俄罗斯方块游戏需要解决的问题包括: ( 1)整个游戏界面的图形显示; (2)各种方块形状的表示; (3)如何控制方块的移动、旋转和下落速度; (4)如何判断方块是否到底; (5)如何判断一行是否填满以及如何消去填满的行; (6)如何判断游戏的结束及如何终止游戏; (7)游戏难度的设计和得分规则 第4章 大型综合程序范例解析 俄罗斯方块 功能分析: 重点: 游戏面板的数据结构 :二维数组 7种形状方块的数据结构 :结构体保存每种形状方块的坐标、颜色 第4章 大型综合程序范例解析 俄罗斯方块 设计: 程序总体结构: void main() { Initi

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档