C語言中文網 目錄
首頁 > C#教程 > C#基礎語法 閱讀:370

C# if else語句

< 上一頁C#變量命名規則 C# switch case下一頁 >

C# if else 語句是最常用的條件語句,并且 if else 語句的形式有多種,包括單一條件的 if 語句、二選一條件的 if else 語句以及多選一條件的 if else if 語句。下面將詳細介紹這 3 種形式。

單一條件的 if 語句

單一條件的 if 語句是最簡單的 if 語句,只有滿足 if 語句中的條件才能執行相應的語句。

具體的語法形式如下。

if(布爾表達式)
{
    語句塊;
}

這里語句塊是指多條語句。當布爾表達式中的值為 True 時執行語句塊中的內容,否則不執行。

二選一條件的 if 語句

二選一條件的 if 語句與前面介紹的三元運算符完成的效果是一樣的,只是比三元運算符實現的過程靈活一些。

具體的語法形式如下。

if(布爾表達式)
{
    語句塊 1;
}else{
    語句塊 2;
}

上面語句的執行過程是當 if 中的布爾表達式的結果為 True 時執行語句塊 1,否則執行語句塊 2。

多選一條件的 if 語句

多選一條件是最復雜的 if 語句,但是語法形式并不難。

具體的語法形式如下。

if(布爾表達式 1)
{
    語句塊 1;
}else if(布爾表達式 2){
    語句塊 2;
}
...
else{
    語句塊 n;
}

上面語句的執行過程是先判斷布爾表達式 1 的值是否為 True,如果為 True,執行語句塊 1,整個語句結束,否則依次判斷每個布爾表達式的值,如果都不為 True,執行 else 語句中的語句塊 n。

需要注意的是,在上面的語法中最后一個 else{} 語句是可以省略的。如果省略了 else{} 語句,那么多分支的 if 語句中如果沒有布爾表達式的值為 True 的語句,則不會執行任何語句塊。

【實例 1】使用 if 語句判斷從控制臺輸入的整數是否為偶數。

根據題目要求,從控制臺輸入的值是字符串類型,因此需要將字符串類型的值轉換成整數型,轉換是通過“int.Parse(Console.ReadLine())”語句實現的。代碼如下。
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("請輸入一個整數:");
        //將從控制臺輸入的值轉換成int類型
        int num = int.Parse(Console.ReadLine());
        if (num % 2 == 0)
        {
            Console.WriteLine(num+"是偶數!");
        }
        else
        {
            Console.WriteLine(num+"不是偶數!");
        }
    }
}
執行上面的代碼,效果如下圖。

判斷輸入的值是不是偶數

在上面的實例中使用的是二選一的 if 語句,也可以使用單一的 if 語句來實現,實現的代碼如下。
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("請輸入一個整數:");
        //將從控制臺輸入的值轉換成int類型
        int num = int.Parse(Console.ReadLine());
        String msg = num + "不是偶數!";
        if (num % 2 == 0)
        {
            msg = num + "是偶數!";
        }
        Console.WriteLine(msg);
    }
}
在上面的代碼中為 msg 變量設置一個值,如果 if 語句中的布爾表達式的值為 True,則改變 msg 的值,這樣就可以使用單一的 if 語句完成二選一的 if 語句的操作。

【實例 2】使用多分支 if 語句完成對游戲賬戶積分等級的判斷,判斷的條件是當游戲積分為 0~100 時是初級、100~200 時是中級、200~500 時是高500以上時是特級。

根據題目要求,代碼如下。
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("請輸入游戲積分(大于0的整數)");
        int points = int.Parse(Console.ReadLine());
        //如果輸入的積分小于0則將其設置為0
        if (points < 0)
        {
            points = 0;
        }
        if (points <= 100)
        {
            Console.WriteLine("您的游戲等級為初級");
        }else if (points <= 300)
        {
            Console.WriteLine("您的游戲等級為中級");
        }else if (points <= 500)
        {
            Console.WriteLine("您的游戲等級為高級");
        }else
        {
            Console.WriteLine("您的游戲等級為特級");
        }
    }
}
執行上面的代碼,效果如下圖所示。

根據積分判斷等級

在上面的程序中,由于使用的是多選一的分支語句,所以在分支語句使用“points<=300”時實際上代表的是 points 大于 100 并小于 300 的值。
< 上一頁C#變量命名規則 C# switch case下一頁 >

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo