C語言結構選擇語句

總結一下經常使用的if else與switch,其中switch中的break知識點是筆試題常常考到的內容。編程

if else與else if函數

在C語言中,常常使用if else選擇語句,來實現不少對應的功能,此部分簡單易學,倒是基礎中的基礎。特記錄一下,供像我當初同樣學編程迷茫的初學者參考。input

一 直接使用if-else語句it

int num;
scanf("%d",&num)
if(num==1)
{
   printf("you input is 1\n");
}
else 
    printf("you input is another\n");
上面的代碼表示,若是num=1,輸出you input is 1。若是不是,輸出you input is another。io

這是最基本的選擇語句。if或者else條件後面只有一條語句時,花括號可寫可不寫,不加的話記得縮進,爲了美觀和規範,通常寫上。基礎

二 嵌套使用if else、else if語句循環

先來看下面的代碼程序

#include<stdio.h>

int main()
{

    int a,b,c;

    scanf("%d",&a);//輸入a

    if(a==0)  //若是a等於0,進入,
    {
        printf("welcome here\n");

        scanf("%d",&b); //輸入b

        if(b==5)   //判斷b是否是等於5,若是等於,輸出you intput is 5,該函數體結束
        {
            printf("you intput is 5\n");
        }
else if(b>5)
{
printf("More than 5\n");
}
        else
        {     
            printf("Less than 5\n");    //若是不知足b>=5,打印Less than 5,函數結束
        }
    } //end for if(a==0)
    else
        puts("hello world");
}
 總結

一個if對應一個else,須要注意配對。在編寫代碼的時候,若是使用的if-else較多,www.cdxsxbx.com應當注意添加相應的花括號,增長代碼的可讀性。在使用了if之後,若是不須要另外的條件判斷,就能夠不使用else。當括號較多時,一般在右括號}後面註釋上是屬於哪段的括號,以避免混淆。筆試

----------------------------------------------------------分割線------------------------------------------------------

switch-case

C語言中,switch的執行規則是,判斷case後面的常量和switch後面的表達式是否相匹配,若是匹配,就執行case後面的程序代碼,直到遇到break退出。

#include<stdio.h>

int main() 
{
int num;

while(1)
{
printf("******************************************\n"); //界面
printf("-------------主菜單界面------------------\n");
printf("------------1:輸出hello-------------------\n");
printf("------------2:輸出world------------------\n");
printf("------------3:輸出welcome--------------\n");
printf("------------4:註銷------------------------\n");
printf("******************************************\n");
printf("請選擇:\n");  
scanf("%d",&num);  //輸入選項

switch(num)
{

case 1:
    printf("hello\n");
break;    //break表示跳出switch選擇結構,記住,是跳出switch,不是跳出循環

case 2:
    printf("world\n");
break;

case 3:
   printf("welcome\n");
break;

case 4:
   sleep(1); //等待1s後
exit(0); //表示直接退出函數

default:   //表示若是輸入1,2,3,4以外的選項,就直接退出switch
break;

}

}

return 0;

}
分析:

一、說明一下switch case語句中的break。break是可加可不加的。好比case 1後面沒有break,那麼當咱們輸入1,匹配成功,

就會打印hello。而後會自動往下走,執行case 2後面的語句,直到遇到break。若是case 2仍是沒有break,就會繼續往下執行case 3中的語句,遇到break後結束。若是後面都沒有break,就會依次執行整個switch case中的程序。

舉個栗子,好比下面這個程序。

int n=10;

switch (n++)
{
default:
break;
case 10:
printf("123");
case 5:
printf("456");
break;
case 6:
printf("789");
break;
}
將會輸出,123456。由於case 10: 知足條件,打印123,可是沒有break,程序繼續往下執行,打印456,遇到break後退出。

--------------------------------------------分割線--------------------------------------------------------------------------

二、exit(0)表示正常運行程序並退出。    exit(1)表示非正常運行程序致使退出。通常0表示正常退出,非0爲異常。

在單個程序中看不出做用,可是若是在一個程序中調用別的程序,這個返回值就能夠看出來調用的程序運行有沒有異常。

相關文章
相關標籤/搜索