C語言 分支結構

2021-09-26 23:03:32 字數 3062 閱讀 3709

if (表示式)

語句

else if (表示式)

語句

else

語句

#include int main(void)

#include int main(void)

#include int main(void)

== 運算子

a == b

如果a和b的值相等則為1,不等則為0(結果的型別是int)

!= 運算子

a != b

如果a和b的值不相等則為1,相等則為0(結果的型別是int)

if (n1 == n2)

puts("它們相等。"); /*n1與n2相等時執行。*/

else

puts("它們不相等。"); /*n1與n2不相等時執行。*/

if (n1 != n2)

puts("它們不相等。"); /*n1與n2不相等時執行。*/

else

puts("它們相等。"); /*n1與n2相等時執行。*/

#include int main(void)

< 運算子

a < b

a小於b時結果為1,反之為0(結果的型別是int)

> 運算子

a > b

a大於b時結果為1,反之為0(結果的型別是int)

<= 運算子

a <= b

a小於等於b時結果為1,反之為0(結果的型別是int)

>= 運算子

a >= b

a大於等於b時結果為1,反之為0(結果的型別是int)

注意:將<=運算子和》=運算子中的等號放在左側(=< 和 =>),或者在《與=之間有空格都是不對的。
if (n == 0)						

puts("該整數為0。"); /*n等於0時執行。*/

else if(n > 0)

puts("該整數為正數。"); /*n大於0時執行。*/

else

puts("該整數為負數。"); /*n小於0時執行。*/

if (n > 0)					/*n大於0時執行。*/

else

表示式(極少部分特殊情況除外)都有值。程式執行時會對表示式的值進行檢測,這就稱為判斷。
#include int main(void)

程式中printf函式被呼叫了兩次,所以我們進行**優化。

#include int main(void)

#include int main(void)

條件運算子

a ? b : c

如果a不為0,則結果是b的值,否則結果為c的值

#include int main(void)

#include int main(void)

#include int main(void)

else

printf("較大的數是%d。\n", max);

printf("較小的數是%d。\n", min);

return 0;

}

像這樣的在大括號內併排書寫的語句稱為復合語句或者程式塊。其中不僅可以包含語句,也可以包含宣告(但是一定要把宣告放在最開始的位置)。

{}											{}

復合語句在結構上會被看作是單一的語句。

在需要單一語句的位置,如果一定要使用多個語句,可以把它們組合成復合語句(程式塊)來實現。

邏輯與運算子

a && b

如果a和b都不為0,則表示式的結果為1,否則結果為0(結果的型別為int)

邏輯或運算子

a ll b

如果a和b有乙個不為0,則表示式的結果為1,否則結果為0(結果的型別為int)

#include int main(void)

&&運算子在左運算元的判斷結果為0時不對右運算元進行判斷。

||運算子在左運算元的判斷結果為0時不對右運算元進行判斷。

像這樣,在僅根據左運算元的判斷結果就可知邏輯表示式的判斷結果的情況下,不會對右運算元進行判斷,這就稱為短路求值。
switch(條件)

case 0 :

語句break;

case 1 :

語句break;

case 2 :

語句break;

default :

語句break;

switch語句的語法結構如上所示,括號內的控制表示式必須是整數型別。

#include int main(void)

return 0;

}

如果n%3的值為1,則程式會轉向case 1 :

像case 1:這樣用來表示程式跳轉的標識稱為標籤。

標籤的值必須為常量,不可以為變數。另外,不允許多個標籤同為乙個值。

break有"打破"、"脫離"之意。執行break語句之後,程式就會跳出將它圍起來的switch語句。

#include int main(void)

return 0;

}

當控制表示式的判斷結果與任何乙個case都不一致的時候,程式就會跳轉到default繼續執行。

在沒有break語句的時候,程式會落到下一條語句上。

if語句和switch語句都是用來實現程式流程的選擇性分支的,因此統稱為選擇語句。

C語言 分支結構

邏輯與 邏輯或 的短路現象 一假即假 左邊為假,不執行右邊 一真即真 左邊為真,不執行右邊 列舉一組有符號名稱的整形常量 羅列出所有狀態和所有可能的結果。列舉屬構造型別 enum 列舉名 美劇值列表 if 條件表示式1 else if 條件表示式2 else 條件表示式的返回值為bool型別 swi...

C語言 分支結構

c語言的分支結構 if else switch case x break default break 1.if 語句 1 if 表示式 命令語句 表示式 進行選擇的條件 規定 任意c語言裡面合法的表示式,只要是乙個合法的表示式,它就有乙個值。只需要判斷這個值是否 非0 語句指令 必須是在上面的表示式...

C語言 分支結構程式

一.關係運算子和表示式 在程式中經常需要比較兩個量的大小關係,以決定程式下一步的工作。比較兩個量的運算子稱為關係運算子。1 關係運算子及優先次序 在 語言中有以下關係運算子 1.小於 2.小於或等於 3.大於 4.大於或等於 5.等於 6.不等於 在六個關係運算子中,的優先順序相同,高於 和 和 的...