同步学习C#笔记6(条件判断if)

条件判断语句 if

在一行一行按顺序执行的代码的基础上,加入条件判断语句if就可以实现代码的分支了


            string s = Console.ReadLine();
            if (s == "hi") 
            {
                Console.WriteLine("你好!");
            }
            else 
            {
                Console.WriteLine("啥?");
            }

这是一组if代码的基本用法。执行逻辑是,如果输入hi,则输出“你好!”,否则就输出“啥?” 

其中双等号==是用来判断相等的。在C#中,一个等号是赋值运算,而判断相等需要用两个等号表示。

当左边等于右边时,判断结果为真;左边不等于右边时判断结果为假。

举例为:1 + 1 == 2 判断为true;1 + 1 == 3 判断为false


布尔类型

布尔类型的结果只有true和false

上述例子可以写为:

            string s = Console.ReadLine();
            bool b = s == "hi";
            if (b) 
            {
                Console.WriteLine("你好!");
            }
            else 
            {
                Console.WriteLine("啥?");
            }

同样可以输出相同的结果,且这样的写法显然符合字符串的转换规则(见笔记5)


常用的bool运算符

等于        ==
不等于      !=
大于        >
小于        <
大于等于    >=
小于等于    <=
取反        !

*取反的意思是true变false;false变true

表示逻辑关系的连接符号:且(&&);或(||)


if 语句的完整形式

if(条件1)
{
    //第一行代码
}
else if (条件2) //可以有任意多个else if,也可以没有
{
    //第二段代码
}
else
{
    //最后一段代码。如果前面条件均不满足,最后一段必然执行
}

依照这个逻辑,完成一个例题:

要求,提示用户输入一个分数(0~100),程序告诉用户该分数属于哪个等级。等级分为四档:

             ·A(90~100)
             ·B(80~89)
             ·C(60~79)
             ·D(小于60)

若超过范围则提示无法查出等级,若不符合A则给予鼓励,若符合A则表示恭喜

例1

 Console.WriteLine("请输入你的分数(0~100)查看等地");

 int score = int.Parse(Console.ReadLine());
 bool a = score >= 90 && score <= 100;
 bool b = score >= 80 && score <= 89;
 bool c = score >= 60 && score <= 79;
 bool d = score < 60 && score >= 0;

            if (a) 
            {
                Console.WriteLine("A");
                Console.WriteLine("恭喜!");
            }
            if (b)
            {
                Console.WriteLine("B");
            }
            if (c)
            {
                Console.WriteLine("C");
            }
            if (d)
            {
                Console.WriteLine("D");
            }
            if (score >100 || score < 0) 
            {
                Console.WriteLine("您输入的分数超过了我可以预测的范围");
            }
            if (!a && score <= 100 && score >= 0)
            {
                Console.WriteLine("下次努力考A啊");
            }

用else if 改进则得到

例2

//例子改进
Console.WriteLine("请输入你的分数(0~100)查看等地");

int score = int.Parse(Console.ReadLine());

            if (score >= 90 && score <= 100)
            {
                Console.WriteLine("A");
                Console.WriteLine("恭喜!");
            }
            else if (score >= 80 && score <= 89)
            {
                Console.WriteLine("B");
            }
            else if (score >= 60 && score <= 79)
            {
                Console.WriteLine("C");
            }
            else if (score < 60 && score >= 0)
            {
                Console.WriteLine("D");
            }
            else 
            { 
                Console.WriteLine("您输入的分数超过了我可以预测的范围");
            }
            if (score < 90 && score >= 0) 
            {
                Console.WriteLine("下次努力考A啊");
            }

有了else if的帮助,条件判断容易写了很多,并且可以避免ABCD四种情况同时打印的可能

**其中,一个if到一个else是一个整体代码

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值