試論C中的結(jié)構(gòu)化程序設(shè)計(jì)_第1頁
試論C中的結(jié)構(gòu)化程序設(shè)計(jì)_第2頁
試論C中的結(jié)構(gòu)化程序設(shè)計(jì)_第3頁
試論C中的結(jié)構(gòu)化程序設(shè)計(jì)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、試論C中的結(jié)構(gòu)化程序設(shè)計(jì)摘要:C語言是一種專門好的結(jié)構(gòu)化程序設(shè)計(jì)語言;結(jié)構(gòu)化程序設(shè)計(jì)方式能夠歸納為自頂向下、慢慢求精、模塊化、限制利用goto語句,將原先較為復(fù)雜的問題化簡為一系列簡單模塊的設(shè)計(jì);一個程序的任何邏輯問題都可用順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)這3種大體結(jié)構(gòu)來描述。關(guān)鍵詞:結(jié)構(gòu)化程序設(shè)計(jì);順序結(jié)構(gòu);選擇結(jié)構(gòu);循環(huán)結(jié)構(gòu);算法當(dāng)前,運(yùn)算機(jī)技術(shù)飛速進(jìn)展,程序設(shè)計(jì)技術(shù)己從結(jié)構(gòu)化程序設(shè)計(jì)技術(shù)向面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)過渡,對一個規(guī)模較大的應(yīng)用程序,整體框架是由面向?qū)ο蟪绦蛟O(shè)計(jì)構(gòu)搭而成,而在局部實(shí)現(xiàn)時仍需采納結(jié)構(gòu)化程序設(shè)計(jì)技術(shù)。C語言是一種專門好的結(jié)構(gòu)化程序設(shè)計(jì)語言,因此,筆者論述了C中的的結(jié)構(gòu)化程序

2、設(shè)計(jì)的方式。結(jié)構(gòu)化程序設(shè)計(jì)(STRUCTUREDPROGRAMING,簡稱SP)的概念是由荷蘭學(xué)者E-等人在20世紀(jì)60年代后期提出的,是以模塊化設(shè)計(jì)為中心,將原先較為復(fù)雜的問題化簡為一系列簡單模塊的設(shè)計(jì),也確實(shí)是將一個大的計(jì)算任務(wù)劃分為一個個比較小的任務(wù),這些小任務(wù)均由函數(shù)來完成。而函數(shù)既能夠是C的標(biāo)準(zhǔn)庫函數(shù)。也能夠是自概念函數(shù)。在C中,一個具有必然規(guī)模的C程序往往是由多個函數(shù)組成,其中必有一個名為main的主函數(shù),由main來挪用其他函數(shù),必要的話,其他函數(shù)還能夠挪用另外的函數(shù)。同一函數(shù)能夠被一個或多個函數(shù)挪用一次或多次。模塊的獨(dú)立性還為擴(kuò)充己有的系統(tǒng)、成立新系統(tǒng)帶來了很多的方便,因?yàn)樵蹅?/p>

3、能夠充分利用現(xiàn)有的模塊作積木式的擴(kuò)展。結(jié)構(gòu)化程序設(shè)計(jì)的思想是一個程序的任何邏輯問題,都可用順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)這3種大體結(jié)構(gòu)來描述。順序結(jié)構(gòu)的程序流程是按語句的書寫順序依次執(zhí)行;選擇結(jié)構(gòu)是對給定條件進(jìn)行判定,依照判定結(jié)果決定執(zhí)行兩分支中的一個分支或多分支中的一個分支;循環(huán)結(jié)構(gòu)是在給定條件成立的情形下,反復(fù)執(zhí)行某個程序段。實(shí)現(xiàn)這些程序流程的語句都是流程操縱語句。流程操縱語句在程序設(shè)計(jì)中起著重要的作用,通過3種大體操縱結(jié)構(gòu)使結(jié)構(gòu)化程序具有唯一的人口和出口,沒有死循環(huán),而且程序的靜態(tài)形式與動態(tài)執(zhí)行形式之間具有良好的對應(yīng)關(guān)系。在C語言中,有4種語句是順序執(zhí)行的:空語句,光有一個分號“;”作為語

4、句終止符,它表示什么也不做。表達(dá)式語句,表達(dá)式后面加一個分號,表達(dá)式語句要緊有賦值語句、自加減運(yùn)算符組成的語句和逗號表達(dá)式語句。函數(shù)挪用語句,它是由一個函數(shù)挪用加上一個分號組成的。復(fù)合語句,由和“”把一些變量說明和語句組合放在一路,又稱為語句塊。選擇語句有if語句和switch語句。循環(huán)語句有for,while和do-while語句和一些輔助流程轉(zhuǎn)向語句如continue,break,goto等。順序結(jié)構(gòu),選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)一起作為各類復(fù)雜程序的大體構(gòu)造單元,由這3種結(jié)構(gòu)通過反復(fù)嵌套組成的程序稱為結(jié)構(gòu)化程序,也確實(shí)是說,結(jié)構(gòu)化程序是由上述3種大體結(jié)構(gòu)組成的。但如果是在編程進(jìn)程中無窮制地利用轉(zhuǎn)移

5、語句(goto),會使程序的操縱流程強(qiáng)制性地向前或向后跳轉(zhuǎn)而致使程序的流程無序可循,結(jié)構(gòu)雜亂無章。結(jié)構(gòu)化構(gòu)造減少了程序的復(fù)雜性,提高了靠得住性、可測試性和可保護(hù)性,利用少數(shù)的大體結(jié)構(gòu),就可使程序邏輯結(jié)構(gòu)清楚,易讀易懂,而且容易驗(yàn)證程序的正確性。對一個初學(xué)運(yùn)算機(jī)語言的人來講。最重要的確實(shí)是要有正確的程序流程概念,不僅要知道而且要靈活應(yīng)用。由此可見,用結(jié)構(gòu)化方式設(shè)計(jì)的結(jié)構(gòu)是清楚的,有利于編寫出結(jié)構(gòu)良好的程序。因此。結(jié)構(gòu)化程序設(shè)計(jì)方式的要緊原那么能夠歸納為自頂向下,慢慢求精,模塊化,限制利用goto語句。將程序設(shè)計(jì)針對的問題進(jìn)行分解,直到分解到對應(yīng)于一個個功能更簡單,又獨(dú)立的模塊,每一個模塊再分解到

6、上述3種大體程序結(jié)構(gòu)。實(shí)質(zhì)上,結(jié)構(gòu)化程序設(shè)計(jì)要緊強(qiáng)調(diào)的是程序。程序二算法+數(shù)據(jù)結(jié)構(gòu)+程序設(shè)計(jì)方式+語言工具和環(huán)境,其中算法是靈魂。是解決“做什么”和“怎么做”的問題;數(shù)據(jù)結(jié)構(gòu)是加工對象;語言是工具;編程需要采納適合的方式。具體解決問題包括的步驟:分析問題,找出解決問題的模型;依照模型設(shè)計(jì)出適合運(yùn)算機(jī)特點(diǎn)的處置方式即算法;進(jìn)行編程程序,以實(shí)現(xiàn)算法;上機(jī)編輯(.c)、編譯(.obj)、連接(.exe)、運(yùn)行所編制的程序,直到得出正確結(jié)果;對結(jié)果進(jìn)行分析,整理出文字材料。此刻人們已經(jīng)熟悉到,程序設(shè)計(jì)的任務(wù)不只是編寫出一個能取得正確結(jié)果的程序,還應(yīng)考慮程序的質(zhì)量。不然將會使程序質(zhì)量低下、靠得住性差、開發(fā)周期長、保護(hù)費(fèi)用高,這也確實(shí)是咱們平常說的“軟件危機(jī)”,它會嚴(yán)峻阻礙運(yùn)算機(jī)應(yīng)用的進(jìn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論