C#中控制语句if的使用
if语句
if语句的语法相对比较简单,主要是用来做选择的,它也可以结合else子句使用,其声明语法如下:
if(布尔表达式)
//区段一,符合布尔表达式执行的代码
else
//区段二,不符合布尔表达表执行的代码
if语句会根据布尔表达式的值决定执行哪一个区段的程序代码。若为True,则执行区段一中的程序代码;反之,则执行区段二中的代码。如果在if语句中用来判断的条件有多个,可以使用else if语句。所有的else if语句的条件都是互斥的。
图1 if语句流程
示例
if语句的使用
定义一个Boolean类型的变量flag,并为其赋值为True,当程序运行到if语句时则开始判断flag值的状态。如果为True则输出“The flag is True”,否则输出“The flag is False”。程序的流程如图1所示。
程序代码如下:
bool flag = True;
if (flag == True)
{
Console.WriteLine("The flag is True.");
}
else
{
Console.WriteLine("The flag is False.");
}
按键运行程序,运行结果如图2所示。
图2 示例运行结果
如果想要执行的语句不止一个,可以通过使用{}将多个语句包含在块中,有条件地执行多个语句,如示例所示。测试条件时,执行的语句可以是任何种类的,包括嵌套在原始if语句中的另一个if语句。在嵌套的if语句中,else子句属于最后一个没有对应else的if关键字。例如:
if (x > 10)
if (y > 20)
Console.Write("one");
else
Console.Write("two");
说明:如果条件(y > 20)计算为False,将显示two,但如果要使two与条件(x>10)关联,则使用大括号,如下所示:
if (x > 10)
{
if (y > 20)
Console.Write("one ");
}
else
Console.Write("two");
说明:如果条件(x>10)计算为False,将显示two。
示例
多分支if-else语句的使用
通过键盘输入一个字符,程序开始检查输入字符是否为字母字符。如果输入的字符是字母,则程序检查是大写还是小写。在任何一种情况下,都会显示适当的消息。程序的流程如图3所示。
图3 多分支if-else语句流程
程序代码如下:
// http://www.isstudy.com
using System;
class IfTest
{
static void Main()
{
Console.WriteLine("输出结果为:");
char c = 'D';
if (Char.IsLetter(c))
{
if (Char.IsLower(c))
{
Console.WriteLine("这是一个小写字母");
}
else
{
Console.WriteLine("这是一个大写字母");
}
}
else
{
Console.WriteLine("这不是字母");
}
Console.ReadLine();
}
}