C++ 基礎(chǔ)教程

C++ 流程控制

C++ 函數(shù)

C++ 數(shù)組 & 字符串

C++ 數(shù)據(jù)結(jié)構(gòu)

C++ 類 & 對(duì)象

C++ 指針

C++ 繼承

C++ STL 教程

C++ 參考手冊(cè)

C++ if, if...else和嵌套if...else

在本文中,您將學(xué)習(xí)使用不同形式的if..else語(yǔ)句在C ++程序中創(chuàng)建決策語(yǔ)句。

語(yǔ)句
if 語(yǔ)句
if...else 語(yǔ)句
嵌套if ... else語(yǔ)句
三元運(yùn)算符

C ++ if語(yǔ)句

if (testExpression) 
{
   // 如果testExpression為真將執(zhí)行的語(yǔ)句
}

if語(yǔ)句在括號(hào)內(nèi)評(píng)估testExpression。

如果testExpression的計(jì)算結(jié)果為true,則執(zhí)行if主體內(nèi)的語(yǔ)句。

如果testExpression的計(jì)算結(jié)果為false,則跳過(guò)if主體內(nèi)部的語(yǔ)句。

if語(yǔ)句如何工作?

C ++編程中if語(yǔ)句的工作

if語(yǔ)句流程圖

C ++編程中if語(yǔ)句的流程圖

上圖描述了if語(yǔ)句的工作。

示例1:C ++ if語(yǔ)句

// 程序打印用戶輸入的正數(shù)
// 如果用戶輸入負(fù)數(shù),則跳過(guò)
 
#include <iostream>
using namespace std;

int main() 
{
    int number;
    cout << "輸入一個(gè)整數(shù): ";
    cin >> number;

    // 檢查數(shù)字是否為正數(shù)
    if ( number > 0) 
    {
        cout << "你輸入了一個(gè)正整數(shù): " << number << endl;
    }

    cout << "這個(gè)語(yǔ)句總是被執(zhí)行。";
    return 0;

}

輸出1

輸入一個(gè)整數(shù): 5
你輸入了一個(gè)正整數(shù): 5
這個(gè)語(yǔ)句總是被執(zhí)行。

輸出2

輸入一個(gè)整數(shù): -5
這個(gè)語(yǔ)句總是被執(zhí)行。

C ++ if...else 語(yǔ)句

如果測(cè)試表達(dá)式(test Expression)為true,則if...else在if語(yǔ)句的主體內(nèi)執(zhí)行代碼,并跳過(guò)else主體內(nèi)部的代碼。

如果測(cè)試表達(dá)式(test Expression)為false,則在else語(yǔ)句主體內(nèi)執(zhí)行代碼,并跳過(guò)if主體內(nèi)的代碼。

if.. else語(yǔ)句如何工作?

C ++編程中if else語(yǔ)句的工作

if ... else的流程圖

C ++編程中if ... else語(yǔ)句的流程圖

示例2:C ++ if ... else語(yǔ)句

//程序檢查整數(shù)是正數(shù)還是負(fù)數(shù)
//該程序?qū)?視為正數(shù)

#include <iostream>
using namespace std;

int main() 
{
    int number;
    cout << "輸入一個(gè)整數(shù): ";
    cin >> number;

    if ( number >= 0)
    {
        cout << "您輸入了一個(gè)正整數(shù):" << number << endl;
    }
    
    else
    {
        cout << "您輸入了一個(gè)負(fù)整數(shù): " << number << endl;
    }

    cout << "此行始終被打印。";
    return 0;
}

輸出結(jié)果

輸入一個(gè)整數(shù): -4
您輸入了一個(gè)負(fù)整數(shù): -4.
此行始終被打印。

C ++ 嵌套if...else語(yǔ)句

if...else語(yǔ)句執(zhí)行兩個(gè)不同的代碼,具體取決于測(cè)試表達(dá)式(Test expression)為true還是false。有時(shí),必須從兩種以上的可能性中進(jìn)行選擇。

使用嵌套if...else語(yǔ)句,您可以檢查多個(gè)測(cè)試表達(dá)式(Test expression)并針對(duì)兩個(gè)以上的條件執(zhí)行不同的代碼。

這意味著您可以在一個(gè) if 或 else if 語(yǔ)句內(nèi)使用另一個(gè) if 或 else if 語(yǔ)句。

嵌套if ... else的語(yǔ)法

if (testExpression1) 
{
   // 如果testExpression1為真,則執(zhí)行語(yǔ)句
}
else if(testExpression2) 
{
   // 如果testExpression1為假,testExpression2為真,則執(zhí)行的語(yǔ)句
}
else{
    if (testExpression 3) 
    {
       // 如果testExpression1和testExpression2為假,testExpression3為真,則執(zhí)行的語(yǔ)句
    }
    else 
    {
       // 如果所有測(cè)試表達(dá)式均為假,將執(zhí)行的語(yǔ)句
    }
}

示例3:C ++ if...else嵌套

// 程序檢查一個(gè)整數(shù)是正、負(fù)還是零

#include <iostream>
using namespace std;

int main() 
{
    int number;
    cout << "輸入一個(gè)整數(shù): ";
    cin >> number;

    if ( number > 0)
    {
        cout << "您輸入了一個(gè)正整數(shù):" << number << endl;
    }
    else
    {
        if (number < 0)
            {
                cout<<"您輸入了一個(gè)負(fù)整數(shù): " << number << endl;
            }else{
             cout << "您輸入了0。" << endl;
        }
    }

    cout << "This line is always printed.";
    return 0;
}

輸出結(jié)果

輸入一個(gè)整數(shù): 0
您輸入了0。
這一行總是打印出來(lái)的。

條件/三元運(yùn)算符(?:)

三元運(yùn)算符對(duì)3個(gè)操作數(shù)進(jìn)行運(yùn)算,可以代替if...else語(yǔ)句來(lái)使用。

以下if代碼:

if ( a < b ) {
   a = b;
}
else {
   a = -b;
}

您可以使用三元運(yùn)算將以上代碼替換為:

a = (a < b) ? b : -b;

三元運(yùn)算符比if...else條件語(yǔ)句更短更具可讀性。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清