3.2 關於 if 敘述大括號的使用
內容只有一行時可以省略大括號
if...else if...else 的大括號內如果只有一行時,可以省略大括號。
所以前面範例練習的內容可以寫成這樣。
練習:絕對值
#include <iostream>
using namespace std;
int main()
{
int a;
cin >> a;
if(a<0)
a = -1*a;
cout << "|a|=" << a << endl;
return 0;
}
練習:判斷奇、偶數
int a;
cin >> a;
if(a%2==1)
cout << "奇數" << endl;
else
cout << "偶數" << endl;
但並不建議同學們這樣做,因為這樣有時會難以閱讀而造成意外的錯誤,不如老老實實的都加上大括號。
例如:下面這段程式碼就很難清楚理解,事實上是有錯誤的。
練習:是否需服兵役
string gender;
cout << "性別(男, 女):";
cin >> gender;
int age;
cout << "年齡:";
cin >> age;
if(gender=="男")
cout << "你是男生,";
if(age>=20)
cout << "需要當兵" << endl;
else
cout << "但是年紀太小,還不用當兵" << endl;
else
cout << "你是女生,不用當兵" << endl;
兩種常見的大括號使用風格
風格一:左右括號都單獨佔一行
int a;
cin >> a;
if(a%2==1)
{
cout << "奇數" << endl;
}
else
{
cout << "偶數" << endl;
}
風格二:左括號放在行末
int a;
cin >> a;
if(a%2==1) {
cout << "奇數" << endl;
}
else {
cout << "偶數" << endl;
}
這兩種撰寫風格都很常見,同學們可以自行選擇。唯一的提醒就是 務必要正確的縮排。