c語言入門(三)分支結構

2021-06-22 18:21:24 字數 3097 閱讀 2464

一:bool布林型別

★二:關係運算子 ★

三:邏輯運算子 ★

四:if語句 ★

五:switch語句

一:bool資料型別:

表示非真即假的資料型別,布林型別的變數只有yes和no兩個值

在c語言中,認為非0即為真,如果為0為假.

二:關係運算子

算數運算子(+ - * / % ++ -- )

位運算:

按位&(同時為真(1)才為真—計算機中的清零 )/

按位|(只要有一位為真就為真)   (按位或)

按位~(按位取反)/

按位異或^/

託字元^(按位異或)相同為0,異或為1

左移<<(左移一位相當於乘2),末尾以0補齊,高位的被丟棄

右移》(右移一位相當於除2);

關係運算子(> ,>=, <, <=,==,!= );

主要用於比較運算,返回的結果只有真假兩種情況(yes/no),結果值用bool型別變數儲存;

注意:判斷兩個數是否相等,用==(雙等號).

三:邏輯運算子

&&(邏輯與):運算子兩邊表示式同時為真的時候,整個邏輯表示式的結果為真;a>0&&a<5;

||(邏輯或):運算子兩邊表示式同時為假的時候,整個邏輯表示式的結果為假.

!(邏輯非):將表示式的結果取反.

注意事項: //

邏輯與的短路現象

bool

result7=a>b&&++b;

//第乙個為真

,結果取決為第二個,二真

,printf

("result7=%d,b=%d\n"

,result7,b);

//邏輯或的短路現象

(兩個表示式同為假

,結果才為假

)bool

result8=a

printf

("result8=%d,b=%d\n"

,result8,b);

//對於邏輯與運算

,如果第乙個表示式的結果為真

,則第二個表示式的結果決定了整個邏輯與運算的表示式結果

//對於邏輯或運算

,如果第乙個表示式的結果為假

,則第二個表示式的結果決定了整個邏輯或運算的表示式結果

程式的執行順序

★順序執行語句; ★

通過進行乙個判斷在兩個可選的語句序列之間選擇執行(分支); ★

在滿足某個條件的時候反覆執行乙個語句序列(迴圈);

四:if語句

用if語句可以構成分支結構,他根據給的條件進行判斷

if(條件表示式)

當條件表示式為真,執行語句1,否則,跳過語句1,繼續執行下面的語句.

注意條件表示式後不要加」;」

如果有多個if語句:

多個if是所有的if都會進行判斷

比如a = 2;

if(a==1) c=1;

if(a==2) c=2;

if(a%2==0) c=3;

最終結果c=3

if語句第二種形式

if(條件表示式)

else

if語句第三種形式

語法形式(級聯式)

if(條件表示式1)

else if(條件表示式2)

else if(條件表示式3)

注意:最後乙個可以是else,else if可以根據條件寫多個

當某個語句執行完後,下一句即使為真,也不執行,直接結束.

if else if是只要有滿足條件的,就不再對之後的else if進行判斷
a=2;

if(a==1) c=1;

else if(a==2) c=2;

else if(a%2==0) c=3;

最終結果c=2

五:switch語句

case情況

多分支語句,通過判斷整型表示式的值,來決定執行那個分支.

switch—開關,case-情況

語法:switch(整型表示式)

case 值2:

default:

break; }

break用在switch…case中用於結束某個case,然後執行switch之外的語句片段.也就是跳出switch語句.

//switch

的條件是整型表示式,同時

switch

語句內部的每乙個

case

都要對應乙個關鍵字

.如果某個

case

忘記使用

break

來跳出整個

switch語句,

那麼程式會順序向下執行

,直到遇到下乙個

break

才能結束

switch語句.

注意事項:

開關決定發生的情況;

case後邊的標籤只能是整型常量或者整型常量表示式(表示式有返回值

),不能用變數作為case的標籤.

default 後面的break可以捨掉

整個default語句都可以捨掉

多個case可以使用同乙個語句塊.(當case沒有**段時,就會順序執行到下乙個case

case中定義變數要加{}

六:條件運算子

語法:條件表示式?真結果表示式:假結果表示式;

作業:

分支語句,比較大小不同;

兩邊之和大於第三遍

簡單行李託運**;

printf("

請輸入小孩的性別(男孩輸入

m,女孩輸入f)

:");

getchar

();scanf(

"%c"

,&***);

誰能解釋一下為什麼中間需要加

gerchar()

這個是為了將緩衝流中的回車字元消除掉

getchar()是c語言中的乙個函式,

可以用它來賦乙個字元的值.

例如:char a;

a=getchar();

當你在鍵盤上輸入乙個字元後按回車;(輸入u)

那麼字元變數a的值就是'u'了.

git 三 分支管理

git branch git checkout 也可以將建立分支 切換分支合併到乙個命令,使用如下 git checkout b 首先需要檢出到其它分支上,站在當前分支上,當然不能合併當前分支,然後才能合併目標分支,使用以下命令 git merge git branch d git branch m...

C語言程式設計2 分支結構

第一題 1.輸入乙個整數,判斷奇偶,並輸出 某某是奇數 或者 某某是偶數 import int main int argc,const char argv 2.輸入乙個數,判斷符號。如果大於0,輸出 正數 如果小於0,輸出 負數 如果等於0,輸出 0 import int main int argc...

C語言3 分支結構和迴圈結構

分支結構 分支語句就是從幾組無關的語句中選擇一組來執行。1.if語句 if語句就是根據乙個邏輯表示式的記結果來決定一組語句是否執行 語法 if 邏輯表示式 如果有多組相關的if語句,可以用else將這些if語句連線起來 if else if else 如果希望以上的if語句至少執行一組,可以省略最後...