第4節課分支和循環if else switch for while

學了c語言一周多了感覺自己對語法了解很多,還有點膨脹,做到編程題才知道自己思路很少,是很難把自己想的寫出來,總感覺差點什么,現在給我整的有點害怕做編程題了。

下面正片開始:

1.if else語句:可以構成多重判斷。

if 可以嵌套if else 反之 else 也能嵌套if else格式這里要寫成else if。

if后面的表達式,不能有分號,加上分號就不能控制下面一條語句,如果想控制多條語句使用大括號。

2.懸空else問題:如果有多個if else,可以記住一條的規則,else總是跟最接近的if匹配。

if判斷后面為假,后面不運行。

3.關系操作符:用于2個操作數比較大?。恢荒苡?表示假,1表示真,不能非0表示真,這里是特殊的。

3.條件操作符:也叫三目操作符,是C語言為一個三目操作符。用于簡單的編程

形式如下:exp1?exp2:exp3//3個操作數,?和:組成

解釋:如果表達式1為真,就等于表達式2,如果表達式為假,就等于表達式3的值

4.邏輯取反操作符

!:邏輯取反運算符(改變單個表達式的真假)。

&&:與運算符,就是并且的意思(兩邊表達式都為真,則為真,否者為假)。

|| :或運算符,就是或者的意思(兩邊至少有一個表達式為真,則為真,否者為假)。

例題:

4.1邏輯取反運算符

int a = 0;

if (!a)//為真打印

printf("fufu")

4.2; 與運算符

練習:如果我們說月份是3月到5月是春天

int month = 0;

scanf("%d", &a);

if (month >= 3 && month >= 5)

printf("春天");

4.3或運算符

練習:我們說一年月份是12月或者1月或者2月是冬天

int a = 0;

scanf("%d", &a);

if (a == 12 || a == 1 || a == 2)

printf("冬天");

4.4練習閏年的判斷

輸入一個年份year,判斷year是否是閏年

閏年判斷的規則:

1.能被4整除并且不能被100整除是閏年

2.能被400整除是閏年

int year = 0;

scanf("%d", &year);

if (year % 4 == 0 && year % 100 != 0)//if (year % 4 == 0 && year % 100 != 0) ||(year % 400 == 0)

? printf("是閏年\n")

? ? ? if (year % 400 == 0)

? ? ? printf("是閏年\n");


4.5短路:很重要

c語言邏輯運算符還有一個特點,它總是先對左側的表達式求值,再對右側求值,這個順序是保證的。

如果左邊表達式滿足邏輯運算的條件,就不再對右邊的表達式求職,這種叫短路

? 總結短路運算:

? a && b, 右邊不再計算.

? a || b, a為真,右邊不在計算.


5.switch

switch語句是一種特殊形式的if...else結構,用于判斷條件有多個結果的情況.它吧多重else i發改成更易用,可讀性更好形式。

? 1.swit后面(必須是整形表達式expression)

? 2.case后的值,必須是整形常量表達式

? 3.case后的值,必須是整形常量表達式

? 4.default:

? 根據上面代碼中,根據表達式expression的值,執行相應case分支,如果找不到對應的值,就執行default分支;

switch:表達式

int a =0;

//int m = 4;

scanf("%d", &a);

switch (a % 3)

{

case 1://決定入口

printf("余數是1\n")

break//決定出口

case m/2://m這里不行,必須是整形常量表達式

printf("余數是2\n")

case 0://可以常量加常量

printf("余數是0\n")

switch語句中的bareak:想要完成分支寫法必須有break,因為case決定程序入口,bareak決定程序的出口;沒用順序要求,只要滿足實際要求就可以。

選擇結構:一條路走到黑

選擇結構:if switch

循環結構:while for do while


6.while循環

while語句的語法結構和if語句非常相似。

while(表達式)如果為真就執行,直到為假不在執行,循環體想包換多條語句,可以加上大括號。

while語句包含3個部分:初始化部分,判斷部分,調整部;這3個部分在while循環里面是分開的。


7.for循環

7.1語法形式

//for循環是三種循環使用中最多的,for循環語法形式如下:

1:for(表達式1;表達式2:表達式3)

2:語句//如果循環體想包含更多的語句,可以加上大口號

表達式1:用于循環表變量初始化

表達式2:循環結束條件判斷

表達式3:用于循環變量調整

for循環是把這3個表達式放在一起。跟while循環區別

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容