if語句
if語句用於測試條件並在條件為真時執行一桌或幾條語句。
說明:if表達式後面不能帶分號,否則它本身表示代碼中的空語句,使編譯器將空語句解釋為在條件為真時執行的語句。
if (x == 10); // Warning! Extra semicolon!
DoSomething(x);
這裡DoSomething()函數總會執行,因為編譯器不把它看成在條件為真時執行的第一條語句。由於這個代碼完全合法(但無用),所以編譯器無法發出警告。
假設要在條件為真時執行多行語句,則要將這些語句放在大括號內:
if (x > 10) {
cout << "The number is greater than 10" << end1;
DoSomethingWithNumber(x);
}
條件表達式求值為false時,與if語句相關聯的碼段忽略,程序繼續執行該碼段之後的第一條語句。
說明 :
C++中包含許多快捷方法,其中一個是用變量名測試true,例如:
if (fileGood) ReadData();
這個方法是下列語句的速寫方法:
if (fileGood == true) ReadData();
本例用了bool變量,也可以用其它數據類型。只要變量包含非零數值,表達式即求值為true,對變量名加上邏輯非(!)操作符可以測試false值:
bool fileGood = OpenSomeFile();
if (!fileGood) ReportError();
學會C++快捷方法有助於寫出更精彩的代碼。 有時要在條件表達式求值為true時進行某個動作,在條件表達式求值為false時進行另一動作,這時可以用else語句如下:
if (x == 20) {DoSomething(x);}
else {DoADifferentThing(x);}
新術語
else語句和if語句一起使用,表示if語句失敗時(即在條件表達式求值為false時)執行的碼段。
if語句形式之二:
if (cond_expr_1) {
true_statements_1;
}
else if (cond_expr_2)
{ true_statements_2; }
else {
false_statements;
}
如果條件表達式cond_expr為1真(非零),則執行true_statements1碼段;如果條件表達式cond_expr為1為假而如果條件表達式cond_expr為2真(非零),則執行true_statements 2碼段;如果兩個表達式均為假,執行false_statements碼段。
--------------------------------
使 用 循 環
循環是所有編程語言共同的要素。循環可用於對數組重復,對某個動作重復進行指定次數,從磁盤中讀取文件,等等。
循環有:for循環、while循環和do while循環。
這幾個循環基本相同,所有循環都有下列共同要素:
· 起點
· 循環體,通常放在大括號內,包含每次循環要執行的語句
· 終點
· 確定循環終止的測試條件
· 可選使用break和continue語句
for循環是最常用的循環,取三個參數:起始數,測試條件和增量表達式。
for循環語句:
for(initial; cond_expr;adjust)
{ statements;
}
for循環重復執行statements碼段,直到條件表達式cond_expr不為真。循環狀態由initial語句初始化,執行statements碼段後,這個狀態用adjust語句修改。下面舉一個for循環的典型例子進行說明:
for (int i=0;i<10;i++){
cout << "This is iteration" << i << end1;
}