C語言中 if 和 else if 的區別

先看代碼:咱們本意是對i不一樣的值有不一樣的判斷。spa

#include<stdio.h>
int main(void)
{
    int i = 1;
    if(i == 1)
    {
        i++;
        printf("%d\n",i);
    }
    if(i == 2)
    {
        i++;
        printf("%d\n",i);
    }
    if(i == 3)
    {
        {
        i++;
        printf("%d\n",i);
        }
    }
    return 0;
}
#include<stdio.h>
int main(void)
{
    int i = 1;
    if(i == 1)
    {
        i++;
        printf("%d\n",i);
    }
    else if(i == 2)
    {
        i++;
        printf("%d\n",i);
    }
    else if(i == 3)
    {
        {
        i++;
        printf("%d\n",i);
        }
    }
    return 0;
}

第一個代碼運行結果 code

2
3
4

第二個代碼blog

2

由結果可見,第二個代碼是咱們想要的,這是由於第一的代碼中幾個if語句是獨立的,io

能夠進入任意多個if語句中,而第二個代碼中if和else if是相互關聯的,只有可能進入class

其中一個,所以纔會出現兩種不一樣的狀況。di

相關文章
相關標籤/搜索