C#判断

一、背景:

 因编程的基础差,因此最近开始巩固学习C#基础,后期把自己学习的东西,总结相应文章中,有不足处请大家多多指教。

二、简介

C#提供以下类型的判断语句:

  • if语句
  • if-else语句
  • if else-if语句
  • cash-swith语句

本文章将逐一讲解if、if-else、if else-if、cash-swith的语句。

三、 if语句

一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。

 

1.语法:

if(判断条件)

{

       要执行的代码;

}

判断条件:一般为关系表达式或者布尔类型。

执行过程:程序运行到if处,首先判断if所带的小括号中的判断条件。如果条件成立返回true,则执行if大括号的代码,如果条件成立,也就返回一个false,则跳过if结构,继续向下执行。

特点:先判断在执行,有可能一条代码也不执行。

用于一种情况的判断

 

2.流程图:

 C#判断

 

 

3.实例:

练习:如果跪键盘的时间大于60分钟,那么媳妇奖励我晚饭不用做了

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _09if结构
{
    class Program
    {
        static void Main(string[] args)
        {
           //如果跪键盘的时间大于60分钟,那么媳妇奖励我晚饭不用做了
            Console.WriteLine("请输入你跪键盘的时间");
            int mins = Convert.ToInt32(Console.ReadLine());
            //如果跪键盘的时间>60分钟,不用做晚饭

            if (mins > 60)
            {

                Console.WriteLine("好老公,不用跪键盘");

            }
            Console.ReadKey();
    }
   }
}

  

C#判断
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace _09if结构
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13            //如果跪键盘的时间大于60分钟,那么媳妇奖励我晚饭不用做了
14             Console.WriteLine("请输入你跪键盘的时间");
15             int mins = Convert.ToInt32(Console.ReadLine());
16             //如果跪键盘的时间>60分钟,不用做晚饭
17 
18             if (mins > 60)
19             {
20 
21                 Console.WriteLine("好老公,不用跪键盘");
22 
23             }
24             Console.ReadKey();
25     }
26    }
27 }
28 
29  
View Code

 

四、 if-else 语句

一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。

1.语法:

If(判断条件)

{

执行的代码;

}

else

{

执行的代码;

}

2.执行过程:

    程序执行到if处,首先判断if的小括号是判断条件是否成立,如果成立,则返回一个true,则执行if所带大括号中的代码,执行完成后,跳出if-else结构。

  如果if所带的小括号的判断条件不成立,也就是返回一个false。则跳出if语句,执行else所带大括号中的语句,执行完成后,跳出if-else结构。

3.特点:

先判断,再执行,最少执行一条代码

用于两种情况的判断

注意:else永远跟离它最近的那个if配对

 

4.流程图:

 C#判断

5.实例:

练习1:让用户输入年龄,如果输入的年龄大于23(含)岁,则给用户显示你到了结婚的年龄了.  

C#判断
 1          
 2          //1.让用户输入年龄,如果输入的年龄大于23(含)岁,则给用户显示你到结婚的年龄 .            
 3             
 4 
 5             Console.WriteLine("请输入你的年龄");
 6             int Age = Convert.ToInt32(Console.ReadLine());
 7             if (Age >= 23)
 8             {
 9                 Console.WriteLine("你到结婚年龄");
10 
11 
12             }
13             else
14             {
15                 Console.WriteLine("未到合法年龄结婚");
16             }
17             Console.ReadKey();
View Code

 

练习2:如果老苏的(chinese music):

  —语文成绩大于90并且音乐成绩大于80

 —语文成绩等于100并且音乐成绩大于70,则奖励100元.

C#判断
 1             Console.WriteLine("请输入你的语文成绩");
 2             int Chinese = Convert.ToInt32(Console.ReadLine());
 3             Console.WriteLine("请输入你的音乐成绩");
 4             int Music = Convert.ToInt32(Console.ReadLine());
 5             if ((Chinese > 90 && Music > 80) || (Chinese == 100 && Music > 70))
 6             {
 7                 Console.WriteLine("小苏,给你奖励100元哦");
 8 
 9             }
10 
11             else
12             {
13                 Console.WriteLine("你需要努力哦");
14             }
15 
16             Console.ReadKey();
View Code

 

练习3:让用户输入用户名和密码,如果用户名为admin,密码为mypass,则提示登录成功。

 

            Console.WriteLine("请输入你的用户名");
            string UserName = Console.ReadLine();
            Console.WriteLine("请输入你的密码");
            string Pwd = Console.ReadLine();
            if (UserName == "admin" && Pwd == "mypass")
            {
                Console.WriteLine("登录成功");
            }

            else
            {
                Console.WriteLine("登录名或密码错误,请重新登录");
            }
            Console.ReadKey();

 

  

五、if else-if 

1.作用:

用来处理多条件的区间性的判断。

 

2.语法:

if(判断条件)

{

       要执行的代码;

}

else if(判断条件)

{

       要执行的代码;

}

else if(判断条件)

{

       要执行的代码;

}

else if(判断条件)

{

       要执行的代码;

}

........

else

{

       要执行的代码;

}

 

3.执行过程:

程序首先判断第一个if所带的小括号中的判断条件,如果条件成立,也就是返回一个true,则执行该if所带的大括号中的代码,执行完成后,立即跳出if else-if结构。

如果第一个if所带的判断条件不成立,也就是返回一个false,则继续向下进行判断,依次的判断每一个if所带的判断条件,如果成立,就执行该if所带的大括号中的代码,如果不成立,则继续向下判断,如果 每个if所带的判断条件都不成立,就看当前这个if else-if结构中是否存在else。

如果有else的话,则执行else中所带的代码,如果没有else,则整个 if-else if神马都不做。else可以省略。

4.流程图

C#判断

5.实例:

练习1:学员的结业考试成绩评测,成绩>=90:A,90>成绩>=80:B,80>成绩>=70:C,70>成绩>=60:D,成绩<60:E

C#判断
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace _09if结构
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13         
14             //学员的结业考试成绩评测
15             // 成绩>=90:A
16             //90>成绩>=80:B
17             //80>成绩>=70:C
18             //70>成绩>=60:D
19             //成绩<60:E
20              Console.WriteLine("请输入学员的考试成绩");
21             int socre = Convert.ToInt32(Console.ReadLine());
22             if (socre >= 90)
23             {
24                 Console.WriteLine("A");
25 
26             }
27 
28             else if (socre >= 80)
29             {
30                 Console.WriteLine("B");
31             }
32             else if (socre >= 70)
33             {
34                 Console.WriteLine("C");
35             }
36             else if (socre >= 60)
37             {
38                 Console.WriteLine("D");
39             }
40             else
41             {
42                 Console.WriteLine("E");
43             }
44 
45             Console.ReadKey();
46 
47         }
48     }
49 }
View Code

 

练习2:比较3个数字的大小 不考虑相等

C#判断
            Console.WriteLine("请输入第一个数字");
            int numberOne = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入第二个数字");
            int numberTwo = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入第三个数字");
            int numberThree = Convert.ToInt32(Console.ReadLine());

            //三种情况 应该使用 if else-if来做
            //如果第一个数字大于二个数字并且而大于三个数字
            if (numberOne > numberTwo && numberOne > numberThree)
            {
                Console.WriteLine(numberOne);
            }

            //如果第二个数字大于一个数字并且也大于三个数字
            else if (numberTwo > numberOne && numberTwo > numberThree)
            {
                Console.WriteLine(numberTwo);
            }

            //第三个数字大于第二个数字并且大于一个数字
            else
            {
                Console.WriteLine(numberThree);
            }
            Console.ReadKey();
View Code

 

六、switch-case

1.作用:

用来处理多条件的定值的判断。

2.语法:

switch(变量或者表达式的值)

{

       case 值1:要执行的代码;

       break;

       case 值2:要执行的代码;

       break;

       case 值3:要执行的代码;

       break;

       ..........

       default:要执行的代码;

       break;

}

3.执行过程:

程序执行到switch处,首先将括号中变量或者表达式的值计算出来,然后拿着这个值依次跟每个case后面所带的值进行匹配,一旦匹配成功,则执行该case所带的代码,执行完成后,遇到break。跳出switch-case结构。如果,跟每个case所带的值都不匹配。就看当前这个switch-case结构中是否存在default,如果有default,则执行default中的语句,如果没有default,则该switch-case结构,什么都不做。

4.实例

练习1:李四的年终工作评定,如果定为A级,则工资涨500元,  如果定为B级,则工资涨200元,如果定为C级,工资不变,如果定为D级工资降200元,如果定为E级工资降500元.设李四的原工资为5000,请用户输入李四的评级,然后显示李四来年的工资.

C#判断
 1             bool b = true;
 2             double salary = 5000;
 3             Console.WriteLine("请输入李四的年终评定(A、B、C、D、E)");//A、B、C、 
 4              D、E
 5             string level = Console.ReadLine();
 6 
 7             switch (level)
 8             {
 9                 case "A":
10                     salary += 500;
11                     break;
12                 case "B":
13                     salary += 200;
14                     break;
15                 case "C": break;
16                 case "D":
17                     salary -= 200;
18                     break;
19                 case "E":
20                     salary -= 500;
21                     break;
22                 default:
23                     Console.WriteLine("输入的有误,请重新输入");
24                     b = false;
25                     break;
26             }
27             if (b)
28             {
29                 Console.WriteLine("李四明年的工作是{0}元", salary);
30             }
31 
32             Console.ReadKey();
View Code

 

练习2:让用户输入姓名,然后显示出这个人上辈子是什么职业。

C#判断
 1             Console.WriteLine("请输入姓名,我们将显示出来这个人上辈子的职业");
 2             string name = Console.ReadLine();
 3             //老杨,老苏,老邹,老马,老虎,老牛
 4             switch (name)
 5             {
 6                 case "老杨":
 7                     Console.WriteLine("上辈子是抽大烟");
 8                     break;
 9                 case "老苏":
10                     Console.WriteLine("上辈子是贵妃");
11                     break;
12                 case "老邹":
13                     Console.WriteLine("上辈子是驸马爷");
14                     break;
15                 case "老马":
16                 case "老牛":
17                     Console.WriteLine("上辈子是农民");
18                     break;
19 
20                 default:
21                     Console.WriteLine("不知道他上辈子是的职业");
22                     break;
23             }
24 
25             Console.ReadKey();
View Code

 

转载请注明出处,商用请征得作者本人同意,谢谢!!!

C#判断

上一篇:Luogu P2657 [SCOI2009]windy数


下一篇:C# 错误配置页