1.4c#中条件判断

来源:转载

c#3种基本的条件判断语句有1.if 2.if...else... 3.switch

1.5.1if结构

c#中if结构的语法与java完全相同,即

1.

if(表达式)

{

代码块

}

2.

if...else...结构如下

if()

{

代码块1

}

else

{

代码块2

}

3.

多重if结构如下

if(表达式1)

{

代码块1

}

else if(表达式2)

{

代码块2

}

else if(表达式3)

{

代码块3

}

......

else

{

代码块

}

4.嵌套if结构就是在if中再嵌入if结构,即

if(表达式1)

{

if(表达式2)

{

代码块1

}

else

{

代码块2

}

}

else

{

代码块3

}

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace HellowWorld 8 { 9 /// <summary>10 /// 该程序实现向控制台输出一条消息11 /// </summary>12 /// <param name="args"></param>13 class Program14 {15 //程序的入口16 static void Main(string[] args)17 {18 int price = 4000;//机票原价19 int month;20 int type;21 string info1 = "please input the month when you go out:1~12";22 string info2 = "please choose first-class or economy-class?first-class 1,economy-class 2";23 string info3 = "your plane ticket price is {0} $";24 Console.WriteLine(info1);25 month = int.Parse(Console.ReadLine());26 Console.WriteLine(info2);27 type = int.Parse(Console.ReadLine());28 if (month >= 5 && month <= 10)//旺季29 {30 if (type == 1)//头等舱31 {32 Console.WriteLine(info3, price * 0.9);33 }34 else if (type == 2)//经济舱35 {36 Console.WriteLine(info3, price * 0.75);37 }38 }39 else //淡季40 {41 if (type == 1)//头等舱42 {43 Console.WriteLine(info3, price * 0.6);44 }45 else if (type == 2)//经济舱46 {47 Console.WriteLine(info3, price * 0.3);48 }49 }50 Console.ReadLine();51 }52 }53 }

运行结果

注意:

1.只有当满足外层if条件时才会判断内层if的条件

2.else与离它最近的那个缺少else的if相匹配

规范:

1.为使if结构清晰,应把每个if或else包含的语句都用大括号括起来

2.相匹配的一对if和else应该左对齐

3.内层的if结构相对于外层的if结构要有一定的缩进

1.5.2switch结构

javac#

switch(int/char 表达式)

{

case 常量表达式1:

语句1;

break;//可以没有

case 常量表达式2:

语句2;

break;//可以没有

......

default:

语句n;

}

switch(int/char/string 表达式)

{

case 常量表达式1:

语句1;

break;//必须有

case 常量表达式2:

语句2;

break;//必须有

......

default:

语句n;

break;//必须有

}

switch(int/char/string 表达式)

{

case 常量表达式1:

case 常量表达式2:

语句2;

break;//必须有

......

default:

语句n;

break;//必须有

}

 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace HellowWorld 8 { 9 /// <summary>10 /// 该程序实现向控制台输出一条消息11 /// </summary>12 /// <param name="args"></param>13 class Program14 {15 //程序的入口16 static void Main(string[] args)17 {18 string name1 = "Jack";19 string name2 = "Tom";20 string subject1 = "c#";21 string subject2 = "java";22 int score1 = 91;23 int score2 = 89;24 Console.WriteLine("please choose to output which person's information,Jack or Tom?");25 string choice = Console.ReadLine();26 Console.WriteLine("{0}/t{1}/t{2}","name","subject","score");27 switch (choice)28 {29 case "Jack":30 Console.WriteLine("{0}/t{1}/t{2}",name1,subject1,score1);31 break;32 case "Tom":33 Console.WriteLine("{0}/t{1}/t{2}", name2, subject2, score2);34 break;35 default:36 Console.WriteLine("sorry,there is no the person you search for!");37 break;38 }39 Console.ReadLine();40 }41 }42 }

运行结果如图

经常会有忘记写break造成出错,在vs中可通过单击菜单 工具>选项>文本编辑器>c#,选中右边的显示下的行号即可。

分享给朋友:
您可能感兴趣的文章:
随机阅读: