資源描述:
《補(bǔ)充C程序控制結(jié)構(gòu):順序,選擇與循環(huán)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、1C程序結(jié)構(gòu)及控制語句2學(xué)習(xí)內(nèi)容C程序編程風(fēng)格及N-S流程圖順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)應(yīng)用舉例3C程序語句及編程風(fēng)格——語句控制語句。控制語句用于控制程序的流程,以實(shí)現(xiàn)程序的各種結(jié)構(gòu)方式。包括:if()…else…(條件語句)switch(多分支選擇語句)for()…(循環(huán)語句)do…while()(循環(huán)語句)while()…(循環(huán)語句)break(終止執(zhí)行switch或循環(huán)語句)continue(結(jié)束本次循環(huán)語句)goto(無條件轉(zhuǎn)向語句)return(從函數(shù)返回語句)4C程序語句及編程風(fēng)格——編程風(fēng)格編寫規(guī)范的程序代碼,使自己的程序結(jié)構(gòu)清晰、規(guī)范易讀是一個(gè)程序員必備的基本素質(zhì)。一般而言,
2、一個(gè)優(yōu)秀的程序代碼應(yīng)該滿足:正確性:指程序代碼要實(shí)現(xiàn)軟件設(shè)計(jì)所要求的功能??煽啃裕褐赋绦虼a最后編譯的程序要能夠穩(wěn)定、可靠、安全的運(yùn)行。規(guī)范化:指程序代碼書寫的風(fēng)格、命名規(guī)則等符合規(guī)范??勺x性:指程序代碼要便于查看和理解。靈活性:指程序代碼的設(shè)計(jì)和編寫應(yīng)該易于維護(hù)和改動(dòng)。5C程序語句及編程風(fēng)格——編程風(fēng)格1.代碼行一行代碼只包含一條語句。if、for、while、do等語句獨(dú)自占一行,執(zhí)行語句不要緊跟其后。代碼行不易過長,一般在70-80個(gè)字符以內(nèi)。如果代碼行過長,使用如下規(guī)則分開:逗號(hào)后面分開;低優(yōu)先級(jí)操作符后面分開。拆分后的新行應(yīng)適當(dāng)縮進(jìn)。6C程序語句及編程風(fēng)格——編程風(fēng)格2.注釋邊寫
3、代碼邊加注釋。注釋應(yīng)當(dāng)用于說明代碼做什么,而不是怎么做。注釋應(yīng)與被描述的代碼相鄰,可以在代碼的上方、右方。7C程序語句及編程風(fēng)格——編程風(fēng)格3.對(duì)齊“{}”之內(nèi)的代碼塊在“{”右邊數(shù)格處左對(duì)齊,即采用縮進(jìn)格式。8C程序語句及編程風(fēng)格——編程風(fēng)格4.命名系統(tǒng)標(biāo)識(shí)符應(yīng)當(dāng)直觀且可以拼讀,可以望文知意。盡量避免在名字中出現(xiàn)數(shù)字編號(hào)。算法及算法描述算法是為解決某一特定問題而進(jìn)行一步一步操作過程的精確描述,是有限步、可執(zhí)行、有確定結(jié)果的操作序列。算法是動(dòng)態(tài)的、受限制的、可操作的,要受計(jì)算工具的制約算法特征:可行性;確定性;有窮性;有效性;輸入與輸出特性。算法的控制結(jié)構(gòu):順序、選擇、循環(huán)結(jié)構(gòu)N-S流程圖
4、N-S流程圖是結(jié)構(gòu)化程序設(shè)計(jì)方法中用于表示算法的圖形工具之一。兩位美國學(xué)者Nassi和Shneiderman于1973年就提出了一種新的流程圖形式,這就是N-S流程圖,它是以兩位創(chuàng)作者姓名的首字母取名,也稱為Nassi(納西)Shneiderman(施奈德曼)圖。結(jié)構(gòu)化程序設(shè)計(jì)設(shè)計(jì)思想是“自頂向上,逐步求精”?;咎攸c(diǎn):只有一個(gè)入口,只有一個(gè)出口,對(duì)每一個(gè)框都有一條從入口到出口的路徑通過,不包含死循環(huán)。13順序結(jié)構(gòu)——概念通常,程序中的語句是按照編寫時(shí)的順序自上而下,一條接一條地執(zhí)行的,這一過程稱為順序執(zhí)行。順序結(jié)構(gòu)可以獨(dú)立使用構(gòu)成一個(gè)簡單的完整程序,常見的輸入、計(jì)算、輸出三步曲的程序就是
5、順序結(jié)構(gòu)。而大多數(shù)情況下順序結(jié)構(gòu)都是作為程序的一部分,與其它結(jié)構(gòu)一起構(gòu)成一個(gè)復(fù)雜程序。14順序結(jié)構(gòu)——英文字母大小寫轉(zhuǎn)換要求:編寫大小寫字母轉(zhuǎn)換程序,分別輸入1個(gè)大寫字母和一個(gè)小寫字母,將大寫轉(zhuǎn)換為小寫,將小寫轉(zhuǎn)換為大寫,并將轉(zhuǎn)換結(jié)果輸出。#includevoidmain(){chara,b;scanf("%c,%c,",&a,&b);putchar(a+32);putchar(b-32);}15順序結(jié)構(gòu)——交換變量的值交換數(shù)據(jù)。對(duì)輸入的兩個(gè)變量a、b,交換它們的值并輸出。請(qǐng)思考一個(gè)問題:現(xiàn)有兩個(gè)500ML的瓶子,一個(gè)里面裝著醋,一個(gè)里面裝著醬油,請(qǐng)問如何交換兩個(gè)瓶子的液
6、體?引入第三個(gè)瓶子!兩個(gè)變量的交換亦是如此!16順序結(jié)構(gòu)——交換變量的值方法一:引入臨時(shí)變量t,用臨時(shí)變量t暫存第1個(gè)變量的值,再將第2個(gè)變量的值賦值給第1個(gè)變量,替換了第1個(gè)變量的值,將臨時(shí)變量t的值賦給第2個(gè)變量。#includevoidmain(){inta,b,t;printf("Pleaseinputtwointegers:");scanf("%d%d",&a,&b);printf("Beforeswapa=%d,b=%d",a,b);t=a;a=b;b=t;printf("Afterswapa=%d,b=%d",a,b);}17順序結(jié)構(gòu)——交換變量的值
7、方法二:用復(fù)合賦值語句的計(jì)算實(shí)現(xiàn)兩個(gè)變量的交換。#includevoidmain(){inta,b;printf("Pleaseinputtwointegers:");scanf("%d%d",&a,&b);printf("Beforeswapa=%db=%d",a,b);a+=b;b=a-b;a-=b;printf("Afterswapa=%db=%d",a,b);}18順序結(jié)構(gòu)——交換變量的