戏说面向对象程序设计(C#版) 第二章 代码规范、重构

第二章代码规范、重构 copyright dedecms

大鸟说:“且先不说出题人的意思,单就你现在的代码,就有很多不足的地方需要改进。比如变量命名,你的命名 织梦内容管理系统

就是ABCD,变量不带有任何具体含义,这是非常不规范的;判断分支,你这样的写法,意味着每个条件都要做判断,

本文来自织梦

等于计算机做了三次无用功;数据输入有效性判断等,如果用户输入的是字符符号而不是数字怎么办?如果除数时,客 内容来自dedecms

户输入了0怎么办?这些都是可以改进的地方。” 内容来自dedecms

“哦,说得没错,这个我以前听老师说过,可是从来没有在意过,我马上改,改完再给你看看。” 织梦内容管理系统

class   Program

织梦好,好织梦

{ 织梦好,好织梦

static     voidMain(string[] args) 本文来自织梦

    {

内容来自dedecms

try

织梦好,好织梦

        {

dedecms.com

Console.Write("请输入数字A:");

dedecms.com

stringstrNumberA =    Console.ReadLine();

copyright dedecms

Console.Write("请选择运算符号(+、-、*、/):"); 内容来自dedecms

stringstrOperate =       Console.ReadLine();

内容来自dedecms

Console.Write("请输入数字B:");

织梦内容管理系统

stringstrNumberB =    Console.ReadLine(); 织梦内容管理系统

stringstrResult =        ""; dedecms.com

 

dedecms.com

switch(strOperate)

内容来自dedecms

{

织梦内容管理系统

case  "+": 织梦内容管理系统

        strResult =     Convert.ToString copyright dedecms

            (Convert.ToDouble(strNumberA) +  Convert.ToDouble(strNumberB)); 织梦内容管理系统

break;

copyright dedecms

case  "-":

copyright dedecms

        strResult =     Convert.ToString

本文来自织梦

            (Convert.ToDouble(strNumberA) -   Convert.ToDouble(strNumberB)); 织梦好,好织梦

break; 织梦好,好织梦

case  "*": copyright dedecms

        strResult =     Convert.ToString 本文来自织梦

            (Convert.ToDouble(strNumberA) *   Convert.ToDouble(strNumberB));

织梦好,好织梦

break; copyright dedecms

case  "/":

内容来自dedecms

if(strNumberB !=      "0") 织梦内容管理系统

            strResult =     Convert.ToString 本文来自织梦

                (Convert.ToDouble(strNumberA) /    Convert.ToDouble(strNumberB));

织梦好,好织梦

else

copyright dedecms

            strResult =     "除数不能为0"; 织梦好,好织梦

break; 织梦内容管理系统

} 本文来自织梦

        } 内容来自dedecms

Console.WriteLine("结果是:"+ strResult);

内容来自dedecms

Console.ReadLine(); 织梦好,好织梦

catch(Exceptionex) 织梦内容管理系统

        {

内容来自dedecms

Console.WriteLine("您的输入有错:"+ ex.Message); copyright dedecms

        } dedecms.com

    } copyright dedecms

}

内容来自dedecms

大鸟:“吼吼,不错,不错,改得很快吗?至在目前代码来说,实现计算器是没有问题了,但这样写出的代码是否 本文来自织梦

合出题人的意思呢?” dedecms.com

小菜:“你的意思是面向对象?”

织梦内容管理系统

大鸟:“哈,小菜非小菜也!” dedecms.com

  dedecms.com

dedecms.com

  织梦内容管理系统

精彩推荐
热点内容
最近更新