三種基本控制結(jié)構(gòu):
順序結(jié)構(gòu)、選擇(分支)結(jié)構(gòu)偏友、循環(huán)結(jié)構(gòu)
順序結(jié)構(gòu):
你的人生有沒有順序:
出生
上學(xué)
工作
結(jié)婚
生子
退休
掛掉
事情的發(fā)展總有一定的順序弟晚,你也來舉個(gè)按順序發(fā)展的例子
選擇結(jié)構(gòu):
選擇語句:
if
if-else
if-else if
switch-case
有選擇的執(zhí)行代碼塊
選擇語句可以多層嵌套
if 特性:
1.當(dāng)條件為真時(shí),語句塊會(huì)執(zhí)行嚎朽,否則跳過不執(zhí)行
2.可以嵌套任意層以構(gòu)成更復(fù)雜的判斷選擇結(jié)構(gòu)
注意:{}來限定選擇執(zhí)行的語句塊的范圍
if-else?
if-else語句適配雙分支語句
無論如何铺纽,必然會(huì)有一個(gè)分支執(zhí)行
if-else if
如果分支大于兩個(gè),可以使用多個(gè)if或者if-else嵌套火鼻,也可以使用if-else if語句
switch-case
選擇分支語句:
功能類似if else if else
只是等值比對分支
語法格式:
switch(表達(dá)式/變量)
{
??????case 值1:?
????????????語句塊1;
???????????break;
??????case 值2:?
????????????語句塊2;
??????? ???break;
????????...
????? case 值n:
???????????語句塊n;
?????????? break;
??????default:
????????????語句塊;
?????????? break;
}
執(zhí)行過程 :
1.首先計(jì)算表達(dá)式室囊,得到結(jié)果
2.用結(jié)果比對case后面的值
? 如果有匹配項(xiàng),則執(zhí)行匹配項(xiàng)后面的語句,
? 直到break(return)語句跳出switch-case
3.如果所有的case值都不匹配魁索,則執(zhí)行default后面的語句
4.如果沒有default融撞,則跳出switch-case
注意事項(xiàng):
1.表達(dá)式/變量的值只能是整型、char粗蔚、布爾尝偎、string、枚舉
2.不允許兩個(gè)case擁有相同的值
3.case必須對應(yīng)常量
if-else if 與 switch的選擇:
if-else if:處理范圍
switch:等值比對
循環(huán)結(jié)構(gòu):
while
while:先判斷鹏控,后執(zhí)行致扯,循環(huán)執(zhí)行0-n次
do-while
do-while:先執(zhí)行,后判斷当辐,循環(huán)至少執(zhí)行1次
當(dāng)循環(huán)條件為true時(shí)執(zhí)行語句繼續(xù)循環(huán)抖僵,否則退出循環(huán)。
for:用控制變量控制循環(huán)次數(shù)
中斷循環(huán)
break: 退出當(dāng)前循環(huán)
continue:立即執(zhí)行下一次循環(huán)
break:
在循環(huán)或分支語句中缘揪,遇到break會(huì)立即退出并結(jié)束當(dāng)前循環(huán)\分支
continue:
在循環(huán)中耍群,遇到continue會(huì)立即執(zhí)行下一次循環(huán),后續(xù)語句會(huì)被忽略
小結(jié):
選擇語句是為了有條件的執(zhí)行代碼找筝,循環(huán)語句是為了重復(fù)執(zhí)行相同的代碼蹈垢。
switch-case語句。
當(dāng)預(yù)先知道循環(huán)次數(shù)是選擇for袖裕;當(dāng)預(yù)先不知道循環(huán)次數(shù)但至少要執(zhí)行1次選擇do-while曹抬,否則選擇while。
break和continue的作用急鳄。
多層循環(huán)的使用技巧谤民。