數(shù)據(jù)結(jié)構(gòu)中的算法怎樣轉(zhuǎn)化為可執(zhí)行的c語(yǔ)言程序啊?
1.如果算法描述透徹,只需補(bǔ)充變量定義等語(yǔ)言細(xì)節(jié),將算法描述轉(zhuǎn)化為各種編程語(yǔ)言即可。
如果它s只是一般,把算法轉(zhuǎn)換成偽代碼描述,或者流程圖,然后用C語(yǔ)言實(shí)現(xiàn)。
2.算法只是數(shù)據(jù)處理的一種思路(通常用偽代碼表示)。理解了這個(gè)想法之后,就可以用計(jì)算機(jī)語(yǔ)言來(lái)表達(dá)了。如果C語(yǔ)言語(yǔ)法不夠,很難完成編程,所以C語(yǔ)言本身要認(rèn)真學(xué)習(xí)。
C語(yǔ)言中屬于結(jié)構(gòu)化程序的方法有?
C語(yǔ)言中結(jié)構(gòu)化編程使用的三種基本結(jié)構(gòu)是:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。序列結(jié)構(gòu)s的程序設(shè)計(jì)是最簡(jiǎn)單的,只要按照解題的順序?qū)懗鱿鄳?yīng)的語(yǔ)句,它的執(zhí)行順序是自上而下。
C語(yǔ)言中結(jié)構(gòu)化編程使用的三種基本結(jié)構(gòu)是:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。
相關(guān)介紹:
一、序列結(jié)構(gòu)
序列結(jié)構(gòu)s的程序設(shè)計(jì)是最簡(jiǎn)單的,只要按照解題的順序?qū)懗鱿鄳?yīng)的語(yǔ)句,它的執(zhí)行順序是自上而下。
比如:a3,b5,現(xiàn)在交換a和b的值,這個(gè)問(wèn)題就像兩個(gè)杯子換水,當(dāng)然需要第三個(gè)杯子。如果第三個(gè)杯子是C,那么正確的程序是:Ca;;ab;bc;執(zhí)行結(jié)果是a5,bc3。
如果順序改了,就寫成:ab;;ca;bc;那么執(zhí)行結(jié)果就會(huì)變成abc5,無(wú)法達(dá)到預(yù)期目的。
第二,選擇結(jié)構(gòu)
雖然序列結(jié)構(gòu)和程序可以解決計(jì)算和輸出問(wèn)題,它可以選擇之前不要被評(píng)判。對(duì)于需要判斷后再選擇的問(wèn)題,要用選擇結(jié)構(gòu)。
選擇結(jié)構(gòu)的執(zhí)行是按照一定的條件選擇執(zhí)行路徑,而不是嚴(yán)格按照語(yǔ)句出現(xiàn)的物理順序。選擇結(jié)構(gòu)的程序設(shè)計(jì)方法的關(guān)鍵在于構(gòu)造合適的分支條件和分析程序流程,并根據(jù)不同的程序流程選擇合適的選擇語(yǔ)句。
選擇結(jié)構(gòu)適用于邏輯或關(guān)系比較等有條件判斷的計(jì)算。設(shè)計(jì)這類程序時(shí),往往需要先畫出程序流程圖,再根據(jù)程序流程編寫源程序,將程序設(shè)計(jì)分析從語(yǔ)言中分離出來(lái),使問(wèn)題簡(jiǎn)單易懂。
第三,流通結(jié)構(gòu)
循環(huán)結(jié)構(gòu)可以減少源程序重復(fù)編寫的工作量,可以用來(lái)描述某個(gè)算法重復(fù)執(zhí)行的問(wèn)題。這是能充分發(fā)揮計(jì)算機(jī)功能的程序結(jié)構(gòu)。;這是我在編程方面的專長(zhǎng)。c語(yǔ)言提供了四個(gè)循環(huán),分別是goto循環(huán)、while循環(huán)、dowhile循環(huán)和for循環(huán)。
四種循環(huán)可以用來(lái)處理同一個(gè)問(wèn)題。一般來(lái)說(shuō),它們可以互相替換,但一般不建議使用goto循環(huán),因?yàn)閺?qiáng)行改變程序的順序往往會(huì)給程序的運(yùn)行帶來(lái)不可預(yù)知的錯(cuò)誤。