條件判斷

條件判斷為真就做要做的事,假則往下執行

if(條件判斷){
    要做的事
}else if(條件判斷){
    要做的事
}else{
    要做的事
}

翻譯成類人類語言

人類 葉俊廷;

if(葉俊廷是男生){

    printf("葉俊廷是男生");

}else if(葉俊廷是女生){

    printf("葉俊廷是女生");

}else{

    printf("葉俊廷不是男生也不是女生");
}

如何比較?

  • 大於>

  • 小於<

  • 等於==

  • 不等於!=

例如

人類 葉俊廷;

if(葉俊廷==男生){

    printf("葉俊廷是男生");

}else if(葉俊廷==女生){

    printf("葉俊廷是女生");

}else{

    printf("葉俊廷不是男生也不是女生");
}

不是男生也不是女生?

邏輯運算子

邏輯運算子

  • 且&&
  • 或||
  • 不!

邏輯運算子

  • 且&&
  • 或||
  • 不!

if(葉子==男生&&葉子喜歡時時) {

        printf("葉子是喜歡男生的男生")

}

錯誤用法 

if(葉子==男生&&喜歡男生){

要做的事

練習TIME 

輸入一個月份,輸出它的季節 

Hint:3-5月春天,6-8月夏天,9-11月秋天,12-2月冬天 

DAOJ 1005

不使用if達成判斷 

三元運算子 

不使用if達成判斷 

三元運算子 

條件判斷?要做的事1:要做的事2; 

不使用if達成判斷 

三元運算子 

條件判斷?要做的事1:要做的事2; 

葉子是男生?printf("葉子是男生"):printf("葉子不是男生");

練習?

輸入一個數字,判斷他是否大於10

不使用if和三元運算達成判斷 

switch-case

switch(作答區){

    case 選項A:

        要做的事

        break;

    case 選項B:

        要做的事

        break;

    default 以上皆非:

        要做的事

        break;

}

假設現在是在考選擇題,你在作答

舉個例子來說...

switch(葉子){
    case(女生):
        printf("葉子是女生");
        break;
    case(男生):
        printf("葉子是男生");
        break;
    default:
        printf("葉子是第三性");
        break;
}

為何要break?

告訴電腦你這題作答完畢。

假如是東北邊,那兩個case都會進入且執行!

switch(方向){
    case(東邊):
        printf("這裡是東邊");
    case(北邊):
        printf("這裡是北邊");
        break;
    default:
        printf("這裡不是東邊或北邊");
        break;
}

練習Time

DAOJ 1005

不要用if-else

如果你要用三元,完成叫我,第一個請麥香(?)