單一判別 (單向 & 雙向)
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;