C語言-if-else & switch-case


Posted by pei_______ on 2022-04-19

單一判別 (單向 & 雙向)

1.如果有區塊{},大括弧結束就結束
2.可以放多行,且不需要分號
3.若只有一行可省略括號

多重判別

if (條件一)
{成立,動作指示1}

else if (條件二)
{成立,動作指示2}

else
{不成立,動作指示}//也可以不寫

巢狀判別

判別中再有判別

指定處理(swith-case)

//只能判斷字元或整數

// 指定處理(swith-case)

switch(字元目標){

    case 關鍵值1 :
        行為化1;
        break;

    case 關鍵值2 :
        行為化2;
        break;

    default:
        行為化3;
        break; 
        //default也可放中間,如果是放最後一個,可省略break
}

//單一判別:單向(只做True)   

printf("請輸入一個數值:")
double number; //宣告最大的 
scanf("%lf",&number);
if (number == (int)number)
{
    printf("你輸入的是整數\n");
}

# 單一判別:雙向 (True or False) 

printf("請輸入整數:");
int number; 
scanf("%d",&number);
if(number % 2 != 0 )
{
    printf("%d是奇數\n",number);
}
else
{
    printf("%d是偶數\n",number);
 }

// 多重判別 
printf("請輸入機票費用:");
int money;
scanf("%d",&money);

if(money>5000){
    printf("可抵達台北\n");
}
else if (money>=3000){
    printf("可抵達台中\n");
}
else if (money>=1500){
    printf("可抵達台南\n");
}
else{
    printf("可抵達高雄\n");
}

// 巢狀判別

printf("請輸入性別(f/m)和年齡:") ;
char gender;
int age;
scanf("%c%d",&gender,&age);

if(gender=='m'){
    if (age < 18){
        printf("Boy\n");
    }
    else{
        printf("Sir\n");
    }
} 
else if(gender=='f'){
    if (age < 18){
        printf("Girl\n");
    }
    else if( age<=35 ){
        printf("Miss\n");
    }
    else{
        printf("Lady\n");
    }
}

else{
    printf("性別代碼錯誤\n");
}

## 指定處理(swith-case)-用於字元

printf("請輸入Office選課代號:");
char sel;
scanf("%c",&sel);
switch(sel){

    case'w':
        printf("Word\n");
        break;
    case'e':
        printf("Excel\n");
        break;
    case'p':
        printf("PowerPoint\n");
        break;
    case'a':
        printf("Access\n");
        break;
    default:
        printf("選課代號輸入錯誤\n");
        break;

// 指定處理(swith-case)-多case對應一個result (用於整數)

printf("請輸入1~10的整數: ");
short number;
scanf("%d",&number);

switch(number){

    case 1:
    case 3:
    case 5:
    case 7:
    case 9:
        printf("奇數\n");
        break;

    case 2:
    case 4:
    case 6:
    case 8:
    case 10:
        printf("偶數\n");
        break;

#C語言 #課堂筆記







Related Posts

Node.js

Node.js

如何合併Sitecore Server Roles

如何合併Sitecore Server Roles

Git 常忘指令

Git 常忘指令


Comments