目錄
什么是語句?
分支語句:
if語句
switch語句
總結1
循環語句
for循環語句
while循環語句
do...whille循環語句
總結2
循環跳出語句
break
continue
goto
總結3
循環和分支的嵌套
是在最后
什么是語句?
C語言的語句分5類:
1.表達式語句::表達式+分號
2.函數調用語句:函數+分號
3.控制語句:實現各種結構,結構分為3種順序,選擇,循環。計算機語言里面只要支持這3種結構就能做想做的事情。
4.復合語句:復合語句大括號里面的表達式或者多條語句
5.空語句 :分號;就是個空語句
他們由特定的語句定義符組成,c語言 九種 控制語句。
分支語句
分支語句主要由if和switch2種。
單分支格式
1.f(表達式)//這里是判斷條件{
2.語句(執行語句);
}
//如果表達式為真語句執行;如果為假執行else
3.else {
4語句(執行語句);
}
多分支格式
1.if else語句:可以構成多重判斷。
if 可以嵌套if else
反之 else 也能嵌套if else格式這里要寫成else if。
總結
1.if后面的表達式,不能有分號,加上分號就不能控制下面一條語句,如果想控制多條語句使用大括號。
2.程序員寫代碼的時候要規劃到底那條語句控制的是那一條語句,一定要由明確思路!
3.if else 默認只能控制下面一條語句,控制多條語句要用大括號括起來。
4.非0為真,等于0為假。這個很重要,很多人寫代碼只判斷某個條件是不是為真,沒有想過表達式里面的值等于0還執不執行。說的就是我自己。
5.布爾類型數據的true和false的值為1和0。
6.區分賦值和等于;==這是等于,= 這是賦值。
7..懸空else問題:如果有多個if else,可以記住一條的規則,else總是跟最接近的if匹配。
if判斷后面為假,后面不運行。
switch語句是一種特殊形式的if...else結構,用于判斷條件有多個結果的情況.它把多重else if發改成更易用,可讀性更好形式。
? 1.swit后面(必須是整形表達式expression)
? 2.case后的值,必須是整形常量表達式
? 3.case后的值,必須是整形常量表達式
? 4.default:
? 根據上面代碼中,根據表達式expression的值,執行相應case分支,如果找不到對應的值,就執行default分支;
格式:
總結:
1.執行每個case后面必須都要加個break,跳出程序,不然會一直打印所有case分支。
2.使用case和default ;沒用順序要求,只要滿足實際需求就可以。
3.可以看出if語句適合判斷相應較少的分支,swirch語句適合判斷較多的分支。
循環語句
循環分為3種:for循環,while循環,do{...}while循環.
while語句的語法結構和if語句非常相似.
while(表達式)如果為真就執行,直到為假不在執行,循環體想包換多條語句,可以加上大括號
表達式1
int main()
{
? while (1)
printf("hehe\n");//死循環打印hehe
return 0;
}
表達式2
總結:
1.while有3個部分,初始化部分,判斷部分,調整部分。這3個部分是分開,這是跟for的區別。
2.hile后面只能跟一條語句,多條語句使用大括號。
3.這3個部分很重要不要隨便省略。
4.為真一直循環,為假跳出,也可以使用break提前跳出。
1:for(表達式1;表達式2:表達式3)
2.
總結
1.for循環是三種循環使用中最多的
2.語句如果循環體想包含更多的語句,可以加上大口號
3.for循環是把這3個表達式放在一起。
4.如果想提前結束循環使用break。
5.不能隨便省略這3個部分.
6.3個部分里面的分號不能省略掉(;;)分號
表達式1:
1.1語法形式
1).do
2).語句;
3)while(表達式);
表達式2:
特點:先循環語句,再判斷,循環體至少循環一次;對比for,while循環判斷成立才循環
總結:
1.想包含多條語句循環要使用大括號。
2.調整部分會影響打印結果.
3.1.do - while循環,是這3個循環用的最少的.
循環跳出語句
break 和 continue 語句
特點:作用就是跳出循環,不管循環后期還有多少次,重要break被執行,就直接停止。
參考下面代碼
總結:
break在3種循環作用的都是一樣的,目的就是跳出循環,讓這個循環就此打住。
特點
1.continue在while循環的特點:如果把循環的調整語句放在continue后面可能造成死循環!continue跳過后面代碼不會調整。
2.for循環中continue的作用是跳過本次循環中continue后的代碼,直接去到循環的調整部分。
3.而while循環里面跳過后面調整部分可能死循環,for循環不會。
4.移動調整部分也可能會影響打印的結果。
總結
1.continue:在 do while 和 while循環基本一致,在for循環稍有點差異。
2.所以不要隨意調動程序調整部分。
3.break語句是永久跳出循環,continue語句是跳出本次循環后面的代碼,執行下次循環。
再次總結
!
單不僅僅只嵌套循環也可以在循環里面嵌套if這些等!
還是得再次提醒:控制多條語句一定要使用大括號;要明確自己寫的代碼被那條代碼控制.寫完代碼要是想優化加入語句,該怎么加入,受那條語句控制要明確清楚!
作用是:goto語句可以實現在(同一個函數內)跳轉到設置好的標號處。
使用格式
特點
1.goto語句如果使用的不當,就會導致在函數內部隨意亂轉,打亂程序流程,所以建議是能不用盡量不去使用。
2.用法:但是goto語句也不是一無是處,在多層循環的代碼中,如果想快熟跳出使用goto就非常方便。
3.goto 語句也可以把標簽放在goto語句前面;也可以實現循環。
總結
對于剛寫程序小白可能很難掌握,但有些小白也喜歡用,用起來方便。但用著用著自己都不知道代碼跳到那里去了。
相比break一次一次跳出程序方便很多.;
再次強調一下循環的3個部分不要隨便省略;
代碼量不是越少越好,追求代碼的可讀性,性能更好。
制作不已點個贊吧