Transcript C++程式設計入門
條件判斷if –else
switch
作者:黃建庭
循序結構
選擇結構(本單元)
重複結構
若測式條件成立,則執行條件成立的動作,否則執
行條件不成立的動作」
◦ 例如:若明天天氣很好的話,我們就去動物園,否則就待
在家裡
單向選擇程式語法
程式範例
if (條件判斷) {
if (score >= 60) {
條件成立的敘述
cout << "很好,請繼續保持下
}
去";
}
說明
若變數score大於等於60,則顯示「很好,請繼續保持下去」。
#include <iostream>
using namespace std;
int main(){
int score;
cin >> score;
if (score > 60){
cout << "很好,請繼續保持下去" << endl;
}
system("pause");
}
雙向選擇程式語法
程式範例(超過2000打九折)
if (條件判斷) {
if cost >= 2000 {
條件成立的敘述
}else{
cout << cost * 0.9;
} else {
條件不成立的敘述
}
cout << cost;
}
說明
若cost大於等於2000,則顯示為cost的值打九折,否則顯示
cost的值
#include <iostream>
using namespace std;
int main(){
int cost;
cin >> cost;
if (cost >= 2000){
cout << cost*0.9 << endl;
}else{
cout << cost << endl;
}
system("pause");
}
多向選擇程式語法
if (條件判斷1) {
程式範例(分數與評語)
if (score >= 80) {
條件判斷1成立的敘述
cout << "非常好";
}else if (條件判斷2) {
}else if (score >= 60) {
條件判斷2成立的敘述
}else {
條件判斷2不成立的敘述
}
cout << "不錯喔";
}else {
cout << "要加油";
}
#include <iostream>
using namespace std;
int main(){
int score;
cout << "請輸入一成績?";
cin >> score;
if (score >= 80) {
cout << "非常好" << endl;
}else if (score >= 60) {
cout << "不錯喔" << endl;
}else {
cout << "要加油" << endl;
}
system("pause");
}
多向選擇程式語法
程式範例
switch (測試變數){
switch (BMI){
case 狀況1:
case 1 ... 17:
狀況1的動作
cout << "體重過輕" << endl;
break;
break;
case 狀況2:
case 18 ... 23:
狀況2的動作
cout << "體重正常" << endl;
break;
break;
case 狀況3:
case 24 ... 26:
狀況3的動作
cout << "體重過重" << endl;
break;
break;
default:
default :
狀況1、狀況2與狀況3皆不符合的動作
cout << "體重肥胖" << endl;
break;
}
註:switch中測試變數需為整數。
break;
}
註:BMI需轉換成整數。
#include <iostream>
#include <math.h>
using namespace std;
int main(){
double weight,height,BMI;
int iBMI;
cout << "請輸入體重(KG)?";
cin >> weight;
cout << "請輸入體重(M)?";
cin >> height;
BMI=weight/(height*height);
cout << "BMI為" << BMI <<
endl;
iBMI=floor(BMI);
switch (iBMI){
case 1 ... 17:
cout << "體重過輕"
break;
case 18 ... 23:
cout << "體重正常"
break;
case 24 ... 26:
cout << "體重過重"
break;
default:
cout << "體重肥胖"
break;
}
system("pause");
}
<< endl;
<< endl;
<< endl;
<< endl;