今天是学习C#第三天,今天学习了if 如果语句,及其嵌套的应用。
学完之后,感觉if语句实际上就是条件运算符 ?: 的升级版应用,使复杂的条件运算符 ?: 变得更简单了。
一。什么是if(。。。)语句?
在英语中,if表示如果的意思,在C#中,其意思相同,可直接当成 如果………执行………
例:
(1)
if (a==2)
{Console.WriteLine("你好");}
在这里这个表达式实际意思就是,如果a=2条件成立,那么输出结果“你好”,这只是最简单的if语句。
(2)if (a==2)
{Console.WriteLine("你好");}
else
{Console.WriteLine("你要说什么?");}
这个的意思是如果a=2条件成立,那么执行输出结果“你好“,如果满足除a=2以外的情况,那么输出结果为“你要说什么?“。
(3)
if (a==2)
{Console.WriteLine("你好");}
else if (a==3)
{Console.WriteLine("你在说什么?");}
这个表达式的意思是,若果a=2条件成立,那么输出结果“你好”,如果a=2的条件不成立,那么输出结果“你在说什么?”
if不可以无限叠加,后面只能else语句
(4)
if (a==2)
{Console.WriteLine("你好");}
if (a==3)
{Console.WriteLine("你在想什么?");}
4号程序和3号程序实际意思一致,均为 如果a=2成立,执行…………。如果a=3成立,执行…………。
if可以无限叠加。
二,if语句的嵌套
在我看来,if语句的嵌套实际上就是将本来需要一次性满足的多个条件分层次罗列出来,使输出结果有层次的逐条满足输出结果,避免出现一次性条件过多造成混乱。
例:
(1)if(a>1&&a<20&&a!=10)
{Console.WriteLine("正确”);
else
{Console.WriteLine("错误");
如果a满足大于1小于20并且不等于10的条件下,输出结果正确。如果不满足这些条件,输出结果为错误。
(2)
if ( a>1 )
{ if ( a<20 )
{ if ( a != 10 )
{Console.WriteLine("正确");}
}
}
else
{ Console.WriteLine("错误");}
表达式意思相同,但是应用(2)更加具有条理层次性,适应判断条件多的情况。
三,如何和电脑简单猜拳
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace 猜拳 7 { 8 class Program 9 { 10 static void Main(string[] args) 11 { 12 Console.WriteLine("请输入手势(石头,剪子,布):"); 13 String shoushi = Console.ReadLine(); 14 String c1 ="0"; 15 Int32 s=0; 16 17 18 Random h = new Random(); 19 int c = h.Next(0,3); 20 21 22 if (shoushi=="石头") 23 s = 0; 24 if (shoushi=="剪子") 25 s = 1; 26 if (shoushi=="布") 27 s = 2; 28 if (c == 0) 29 c1 ="石头"; 30 if (c == 1) 31 c1 ="剪子"; 32 if (c == 2) 33 c1 ="布"; 34 Console.Write("用户手势:" + shoushi+" 电脑手势:"+c1); 35 if ( (c - s == -1) || (c - s == 2)) 36 { 37 Console.WriteLine("电脑赢了!"); 38 39 } 40 else if ((c - s == -2) || (c - s == 0) || (c - s == 1)) 41 { Console.WriteLine("你赢了!"); } 42 else 43 { Console.WriteLine("平局!"); } 44 Console.ReadLine();
这是一个模拟输出的结果,if,if else ,else的应用,随即数的生成。
今天的的东西看起来不多,但是逻辑运算较多,特别是多条件判断,注意顺序,不要搞混,出现程序错误。