結(jié)構(gòu)化程序設(shè)計(jì)思想--流程控制
一、是什么?
荷蘭學(xué)者Dijkstra 出了"結(jié)構(gòu)化程序設(shè)計(jì)"的思想,它規(guī)定了一套方法,使程序具有合理的結(jié) 構(gòu),以保證和驗(yàn)證程序的正確性.這種方法要求程序設(shè)計(jì)者不能隨心所欲地編寫程序,而要按照一定 的結(jié)構(gòu)形式來設(shè)計(jì)和編寫程序.它的一個重要目的是使程序具有良好的結(jié)構(gòu),使程序易于設(shè)計(jì),易于 理解,易于調(diào)試修改,以 高設(shè)計(jì)和維護(hù)程序工作的效率.
程序的設(shè)計(jì)結(jié)構(gòu)分為3類:順序結(jié)構(gòu),選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu)
選擇結(jié)構(gòu)if語句
一禽捆、是什么?
是指編程中用來判斷所給條件是否滿足,根據(jù)判斷的結(jié)果(真或假)決定執(zhí)行兩種操作中的一種.
二、有什么用?
可以根據(jù)條件,來執(zhí)行不同的操作
三防症、怎么用?
1. if(){} ?2. if(){}else{} ?3 .if(){}else if(){} 4. if(){}else if(){}else{} ?5.if() ;
四、什么時候用?
需要根據(jù)條件執(zhí)行不同的操作
五柔纵、有什么特點(diǎn)?
1.一次if語句只能執(zhí)行給出的所有操作中的一個.
2.if();這種用法時 if語句只有緊跟著后面的一句有效,讀到下一個;號結(jié)束,且不能定義變量
3.除了if();這種用法,所有的if()與{}之間不能有;號
4.if(條件判斷){},里面的條件判斷如果是與常量的等于等于判斷,則常量寫在前面(規(guī)范)!!!
switch開關(guān)語句用法
一笆载、是什么?
是指編程中用來判定所給定的條件是否滿足,根據(jù)判定的結(jié)果(int值)決定執(zhí)行給出的具體操作
二唆缴、有什么用?
可以根據(jù)不同的int值匹配執(zhí)行不同的操作.
三、怎么用?
switch(表達(dá)式){case 常量表達(dá)式1:語句1;break;....case...;default:語句n};
四黍翎、什么時候用?
五面徽、有什么特點(diǎn)?
1.條件結(jié)果只能是整數(shù),而且case只能是整型常量.注意:case:'a'.
2.break可有可無.有則執(zhí)行完跳出,沒有則繼續(xù)執(zhí)行(case穿透),直到遇到下一個break 或者執(zhí)行結(jié)束.
3.default可有可無,有則如果條件都不滿足,會執(zhí)行default后面的語句.如果沒有則以上條件都不滿足,執(zhí)行結(jié)束.
4.case下面定義變量必須加{},原因是:作用域不能區(qū)分是屬于case的作用于還是switch的.且case后面的常量值不能重復(fù)
5.switch語句可以全部用if語句代替,但if語句不能全部被switch代替
if分支和switch分支的選擇:
1)分支比較多且無法窮盡或進(jìn)行大量列舉 時最好用if
2)如果分支數(shù)量不是很多,但是使用if代碼代碼量比較大的時候,可以選用switch 可以簡化代碼