a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 初學C語言程序設計的基本方法和技巧

初學C語言程序設計的基本方法和技巧

作者: 時間:2014-01-17 來源:網絡 收藏

是對于初學者來說最難的一部分,也就是把我們剛才分析過程轉換成語句。

這需要學好的三種程序結構。(1)順序結構;順序結構的是最簡單的,只要按照解決問題的順序寫出相應的語句就行,它的執行順序是自上而下,依次執行。順序結構可以獨立使用構成一個簡單的完整程序,不過大多數情況下順序結構都是作為程序的一部分,與其它結構一起構成一個復雜的程序,例如分支結構中的復合語句、循環結構中的循環體等。(2)選擇結構;對于要先做判斷再選擇的問題就要使用分支結構。選擇結構的執行是依據一定的條件選擇執行路徑,而不是嚴格按照語句出現的物理順序。選擇結構的方法的關鍵在于構造合適的分支條件和分析程序流程,根據條件的結果選擇對應的分支語句。選擇結構適合于帶有邏輯或關系比較等條件判斷的

計算,設計這類程序時往往都要先繪制其程序流程圖,然后根據程序流程寫出源程序,這樣做把分析與語言分開,使得問題簡單化,易于理解。程序流程圖是根據解題分析所繪制的程序執行流程圖。

例如上例中,把我們頭腦中很快閃過的這些判斷過程畫成流程圖,根據流程圖再寫出對應的語句就比較容易了。如下所示:

min=a;

if(min>b)min=b;

if(min>c)min=c;

學習分支結構不要被分支嵌套所迷惑,只要正確繪制出流程圖,弄清各分支所要執行的部分,嵌套結構也就不難了。嵌套只不過是分支中又包括分支語句而已,不是新知識,只要對雙分支的理解清楚,分支嵌套是不難的。下面我介紹幾種基本的分支結構。

①if(條件)

{分支體

}

這種分支結構中的分支體可以是一條語句,此時“{}”可以省略,也可以是多條語句即復合語句。它有兩條分支路徑可選,一是當條件為真,執行分支體,否則跳過分支體,這時分支體就不會執行。如:要計算x的絕對值,根據絕對值定義,我們知道,當x>=0時,其絕對值不變,而x0時其絕對值是為x的反號,因此程序段為:if(x0)x=-x;

②if(條件)

{分支1}

else

{分支2}

這是典型的分支結構,如果條件成立,執行分支1,否則執行分支2,分支1和分支2都可以是1條或若干條語句構成。如:求某年的年號是否是閏年。分析:因為當某年號能被4整除 但不能被100整除,則這一年是閏年;或者這一年號能被4 0 0整除也是閏年。即year%4==0year%100!=0||year%400==0其程序段如下:

i f(y e a r%4==0y e a r%1 0 0!=0||year%400==0)

printf“(%d is leap year!”,year);

else

printf“(%d is not leap year!”,year);}

③嵌套分支語句:其語句格式為:

if(條件1){分支1};

else if(條件2){分支2}

else if(條件3){分支3}

……

else if(條件n){分支n}

else{分支n+1}

嵌套分支語句雖可解決多個入口和出口的問題,但超過3重嵌套后,語句結構變得非常復雜,對于程序的閱讀和理解都極為不便,建議嵌套在3重以內,超過3重可以用switch語句。

④switch開關語句:該語句也是多分支選擇語句,到底執行哪一塊,取決于開關設置,也就是表達式的值與常量表達式相匹配的那一路,它不同if…else語句,它的所有分支都是并列的,程序執行時,由第一分支開始查找,如果相匹配,執行其后的塊,接著執行第2分支,第3分支……的塊,直到遇到break語句;如果不匹配,查找下一個分支是否匹配。這個語句在應用時要特別注意開關條件的合理設置以及break語句的合理應用。

(3)循環結構

循環結構可以減少源程序重復書寫的工作量,用來描述重復執行某段算法的問題,這是程序設計中最能發揮計算機特長的程序結構,中提供三種循環,即while循環、dowhile循環和for循環。三種循環可以用來處理同一問題,一般情況下它們可以互相代替換,另外還有一種goto循環語句,因為強制改變程序的順序經常會給程序的運行帶來不可預料的錯誤,所以不提倡使用。

常用的三種循環結構學習的重點在于弄清它們相同與不同之處,以便在不同場合下使用,這就要清楚三種循環的格式和執行順序,將每種循環的流程圖理解透徹后就會明白如何替換使用,就能更好地理解它們的作用。在分析循環結構的語句時要開清楚,什么時候開始循環(即循環的初始值);什么時候結束循環(即循環的終止條件);循環的時候都做哪些操作(即循環體的執行部分);特別要注意在循環體內應包含趨于結束的語句(即循環變量值的改變),否則就可能成了一個死循環,這是初學者的一個常見錯誤。

在學完這三個循環后,應明確它們的異同點:用while和do…while循環時,循環變量的初始化的操作應在循環體之前,而for循環一般在語句1中進行的;while循環和for循環都是先判斷表達式,后執行循環體,而d o…while循環是先執行循環體后判斷表達式,也就是說do…while的循環體最少被執行一次,而while循環和for就可能一次都不執行。

c語言相關文章:c語言教程



上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉