官术网_书友最值得收藏!

1.6 實(shí)現(xiàn)問(wèn)題求解的過(guò)程

本節(jié)通過(guò)一個(gè)具體的案例,詳細(xì)說(shuō)明實(shí)現(xiàn)問(wèn)題求解的過(guò)程。

【例1-3】統(tǒng)計(jì)1~100范圍內(nèi)3的倍數(shù)的整數(shù)個(gè)數(shù)。

1.6.1 問(wèn)題分析與算法設(shè)計(jì)

本案例是一個(gè)求一定范圍內(nèi)(1~100)、滿足一定條件(3的倍數(shù))的若干整數(shù)的個(gè)數(shù),是一個(gè)求計(jì)數(shù)的問(wèn)題。這類問(wèn)題的基本求解方法是:設(shè)置一個(gè)計(jì)數(shù)變量(如count),將其初值置為0,再在指定的范圍(1~100)內(nèi)尋找滿足條件(3的倍數(shù))的整數(shù),將它們逐個(gè)計(jì)數(shù)到count中。這里的一次計(jì)數(shù)需要用計(jì)數(shù)器語(yǔ)句:

該語(yǔ)句表示把count加1后重新賦給count。為了處理方便,假設(shè)尋找整數(shù)也用一個(gè)變量(如i)表示,計(jì)數(shù)過(guò)程需要從i等于1開(kāi)始變化到100反復(fù)做。程序設(shè)計(jì)時(shí)需要使用循環(huán)結(jié)構(gòu)來(lái)實(shí)現(xiàn)。

基于上述解題思路,就可以明確解決問(wèn)題的步驟,進(jìn)而確定解決問(wèn)題的算法。

算法設(shè)計(jì)

第一步:置初值:計(jì)數(shù)器count置0

第二步:讓i在[1,100]范圍內(nèi)按遞增1變化,重復(fù)執(zhí)行下面操作。

● 計(jì)數(shù):若i是3的倍數(shù),則count加1。

第三步:輸出結(jié)果:顯示count的值。

1.6.2 編輯程序

當(dāng)確定好解決問(wèn)題的算法后,就可以開(kāi)始編寫(xiě)程序。一般是在編程環(huán)境中,應(yīng)用其中的編輯功能直接來(lái)編輯程序,生成源程序文件(對(duì)C語(yǔ)言來(lái)說(shuō),一般源程序文件的擴(kuò)展名為.c)。

程序清單:

說(shuō)明:

①定義兩個(gè)整型變量i和count,設(shè)置count初值為0。

②循環(huán)語(yǔ)句:表示i從1開(kāi)始循環(huán),每次循環(huán)執(zhí)行的工作就是for之后的if語(yǔ)句(即條件計(jì)數(shù)),每循環(huán)一次i加1,直到i超出100為止。

③條件計(jì)數(shù):i%3==0表示“3的倍數(shù)”條件。若滿足if后的條件,則計(jì)數(shù)器count加1。

④輸出結(jié)果:即輸出計(jì)數(shù)變量count的值。

1.6.3 編譯連接

當(dāng)編輯好程序后,下一步工作就是對(duì)源程序進(jìn)行編譯、連接操作。一般在編程環(huán)境中,利用“編譯”功能完成對(duì)源程序的編譯工作,生成目標(biāo)程序(文件擴(kuò)展名為.obj);再利用“連接”功能完成對(duì)目標(biāo)程序的連接工作,生成可執(zhí)行程序文件(文件擴(kuò)展名為.exe)。

在編譯、連接過(guò)程中,可能出現(xiàn)編譯或連接錯(cuò)誤,需要逐一改正,直到生成.exe程序?yàn)橹埂jP(guān)于程序的編譯、連接和運(yùn)行調(diào)試的具體操作,在配套書(shū)《C語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn)教程與水平考試指導(dǎo)》中有詳細(xì)介紹,在此不再贅述。

1.6.4 運(yùn)行與調(diào)試

當(dāng)程序通過(guò)了編譯和連接,并生成了可執(zhí)行程序后,就可以在編程環(huán)境或操作系統(tǒng)環(huán)境中運(yùn)行該程序(.exe程序)。

程序運(yùn)行結(jié)果可能不是想要的正確結(jié)果,也就是說(shuō)程序中存在運(yùn)行錯(cuò)誤(也稱邏輯錯(cuò)誤或語(yǔ)義錯(cuò)誤),這就需要對(duì)程序進(jìn)行調(diào)試。調(diào)試就是在程序中查找錯(cuò)誤并修改錯(cuò)誤的過(guò)程,其中找出錯(cuò)誤是最主要的工作。一般程序的編程環(huán)境都提供相應(yīng)的調(diào)試手段。調(diào)試最主要的方法包括單步調(diào)試、斷點(diǎn)調(diào)試、觀察變量等。

主站蜘蛛池模板: 青岛市| 苗栗县| 濮阳县| 金门县| 双牌县| 沭阳县| 衡水市| 宾川县| 嘉鱼县| 荔浦县| 白山市| 钟山县| 江安县| 西藏| 华容县| 丽水市| 调兵山市| 彰武县| 乳源| 盐津县| 司法| 共和县| 沈阳市| 金昌市| 台山市| 民丰县| 平潭县| 收藏| 五华县| 吉木乃县| 德昌县| 玉龙| 抚顺市| 铜梁县| 张家口市| 客服| 湘乡市| 德令哈市| 龙岩市| 临武县| 贡觉县|