网站大量收购闲置独家精品文档,联系QQ:2885784924

《程序设计与实例分析》课件_第五讲.pptx

《程序设计与实例分析》课件_第五讲.pptx

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

提出问题1控制台实现的计算器程序2简单的Windows计算器程序3Contents目录

提出问题1控制台实现的计算器程序2简单的Windows计算器程序3Contents目录

5.1要解决的问题一道面试题:“请用C++、Java、C#或VB.NET任意一种面向对象语言实现一个计算器控制台程序,要求输入两个数和运算符号,得到结果。”下面分别用控制台和WindowsForm来实现。

提出问题1控制台实现的计算器程序2简单的Windows计算器程序3Contents目录

5.2控制台实现及扩展技术要点:? 要求用C#语言实现。? 要求实现的是控制台程序。? 要求的程序输入参数包括操作数1、操作数2和运算符号共三个。? 要求的程序输出为最终的计算结果,直接在控制台界面显示即可。

5.2控制台实现及扩展classProgram{staticvoidMain(string[]args){Console.Write(请输入数字A:);stringA=Console.ReadLine();Console.Write(请选择运算符号(+、-、*、/):);stringB=Console.ReadLine();Console.Write(请输入数字B:);stringC=Console.ReadLine();stringD=;

5.2控制台实现及扩展if(B==+) D=Convert.ToString(Convert.ToDouble(A)+Convert.ToDouble(C));if(B==-)D=Convert.ToString(Convert.ToDouble(A)-Convert.ToDouble(C));if(B==*)D=Convert.ToString(Convert.ToDouble(A)*Convert.ToDouble(C));if(B==/)D=Convert.ToString(Convert.ToDouble(A)/Convert.ToDouble(C));Console.WriteLine(结果是:+D);}}

5.2控制台实现及扩展思考:上述程序当中的变量A、C、D的最大值分别是多少?如果超过最大值了会怎样?如果选择的运算符为除,第二个操作数输入为0,会产生什么样的结果?如何解决?上述程序是否完全符合题目要求?不足之处:变量命名,现在的命名就是A、B、C、D,变量不带有任何具体含义,这是非常不规范的。判断分支,上述写法,意味着每个条件都要做判断,等于计算机做了三次无用功。数据输入有效性判断等,如果用户输入的是字符符号而不是数字怎么办?如果除数时,客户输入了0怎么办?

5.2控制台实现及扩展改进:将变量名从无意义的A、B、C、D,变成了更加规范的命名方式。用switch替换了if判断。增加了对除数为0的情况的判断和处理。加上了程序的异常处理。C#当中程序的异常处理通常使用try……catch或者try……finally……catch来完成。小结:程序基本能满足题目的要求,且考虑了一些异常输入的情况。但总体而言,并没有体现任何面向对象的思想,代码没有任何可以封装和重用的部分。

提出问题1控制台实现的计算器程序2简单的Windows计算器程序3Contents目录

5.3简单的Windows计算器程序简单程序中的面向对象思想上述代码可否重用?面向对象三大特性是封装、继承和多态。如何在简单的计算器程序中体现这三大特性?

5.3简单的Windows计算器程序界面搭建步骤略部分实现思路分析:为了让业务逻辑与界面逻辑分开,让其的耦合度下降,单独建立一个负责操作执行的逻辑类CalculateOperation,使其完成基本的数据运算操作。该类主要包含计算结果这一个函数,其实现方式可以同前例。

5.3简单的Windows计算器程序部分实现思路分析:定义全局变量进行数据的保存。分别实现每个数字按钮的响应事件。按键0到按键9的功能非常相似,只是具体的某一个内容不太一样,因此我们可以用一个共同的函数来处理逻辑,将不同的内容作为参数传入即可。

5.3简单的Windows计算器程序部分实现思路分析:对于数字0到9的按键响应函数,实际上都是在直接调用函数ZeroRemove,只是传入的参数不一样而已。如果发现输入响应操作处理的有问题,则只需要修改函数ZeroRemove即可,而不需要依次修改0到9的响应函数了,这种设计充分体现了公共函数的

文档评论(0)

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

kd8w

1亿VIP精品文档

相关文档