C 判斷
一個
if 語句 後可跟一個可選的 else 語句 ,else 語句在布爾表達式為 false 時執行。文法
C 語言中
if...else語句的文法:
if(boolean_expression)
{
/* 如果布爾表達式為真将執行的語句 */
}
else
{
/* 如果布爾表達式為假将執行的語句 */
}
如果布爾表達式為
true,則執行
if塊内的代碼。如果布爾表達式為
false else塊内的代碼。
C 語言把任何
非零和
非空的值假定為
,把
零或
null假定為
。
流程圖
執行個體
#include <stdio.h>
int main ()
{
/* 局部變量定義 */
int a = 100;
/* 檢查布爾條件 */
if( a < 20 )
{
/* 如果條件為真,則輸出下面的語句 */
printf("a 小于 20\n" );
}
else
/* 如果條件為假,則輸出下面的語句 */
printf("a 大于 20\n" );
printf("a 的值是 %d\n", a);
return 0;
}
當上面的代碼被編譯和執行時,它會産生下列結果:
a 大于 20
a 的值是 100
if...else if...else 語句
語句後可跟一個可選的
else if...else語句,這可用于測試多種條件。
當使用 if...else if...else 語句時,以下幾點需要注意:
- 一個 if 後可跟零個或一個 else,else 必須在所有 else if 之後。
- 一個 if 後可跟零個或多個 else if,else if 必須在 else 之前。
- 一旦某個 else if 比對成功,其他的 else if 或 else 将不會被測試。
C 語言中的
if...else if...elseif(boolean_expression 1)
{
/* 當布爾表達式 1 為真時執行 */
}
else if( boolean_expression 2)
{
/* 當布爾表達式 2 為真時執行 */
}
else if( boolean_expression 3)
{
/* 當布爾表達式 3 為真時執行 */
}
else
{
/* 當上面條件都不為真時執行 */
}
#include <stdio.h>
int main ()
{
/* 局部變量定義 */
int a = 100;
/* 檢查布爾條件 */
if( a == 10 )
{
/* 如果 if 條件為真,則輸出下面的語句 */
printf("a 的值是 10\n" );
}
else if( a == 20 )
{
/* 如果 else if 條件為真,則輸出下面的語句 */
printf("a 的值是 20\n" );
}
else if( a == 30 )
{
/* 如果 else if 條件為真,則輸出下面的語句 */
printf("a 的值是 30\n" );
}
else
{
/* 如果上面條件都不為真,則輸出下面的語句 */
printf("沒有比對的值\n" );
}
printf("a 的準确值是 %d\n", a );
return 0;
}
沒有比對的值
a 的準确值是 100