全國(guó)計(jì)算機(jī)二級(jí)考試必看.ppt
《全國(guó)計(jì)算機(jī)二級(jí)考試必看.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《全國(guó)計(jì)算機(jī)二級(jí)考試必看.ppt(15頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)教程 C語(yǔ)言程序設(shè)計(jì) 王艷群E mail wangyanqun 第一章程序設(shè)計(jì)基本概念 1 1程序和程序設(shè)計(jì)1 1 1C程序?qū)⑿枰?jì)算機(jī)做的工作寫成一定形式的指令 并把它們存儲(chǔ)在計(jì)算機(jī)內(nèi)部的存儲(chǔ)器中 當(dāng)我們給出命令之后 它就按指令順序自動(dòng)進(jìn)行操作 我們把這種可以連續(xù)執(zhí)行的指令集合叫做 程序 所以說(shuō) 程序就是人與機(jī)器 溝通 的語(yǔ)言 也就是我們常說(shuō)的 程序設(shè)計(jì)語(yǔ)言 程序設(shè)計(jì)語(yǔ)言的種類很多 用什么樣的語(yǔ)言寫的程序指令就叫什么程序 比如說(shuō)用VB C Java等語(yǔ)言寫的程序就相應(yīng)叫VB程序 C 程序 Java程序 當(dāng)然用C語(yǔ)言寫的程序就叫C程序 計(jì)算機(jī)本身是不能直接識(shí)別由上面所說(shuō)的高級(jí)語(yǔ)言編寫的程序的 它只能接受和處理由0和1的代碼構(gòu)成的二進(jìn)制指令或數(shù)據(jù) 這種形式的指令是面向機(jī)器的 因此叫它 機(jī)器語(yǔ)言 那么由高級(jí)語(yǔ)言寫出來(lái)的程序相對(duì)于機(jī)器執(zhí)行的機(jī)器語(yǔ)言來(lái)說(shuō)叫 源程序 把由二進(jìn)制代碼表示的程序稱為 目標(biāo)程序 因此 在編寫完源程序以后 若想在機(jī)器上執(zhí)行該程序 就要有一種被叫做 編譯程序 的軟件把源程序翻譯成 目標(biāo)程序 每種高級(jí)語(yǔ)言都有與它對(duì)應(yīng)的編譯程序 如C語(yǔ)言的編譯程序TurboC C語(yǔ)言源程序 C語(yǔ)言編譯程序 二進(jìn)制機(jī)器指令 C源程序經(jīng)過(guò)C編譯程序編譯之后生成一個(gè)后綴為 OBJ的二進(jìn)制文件 稱為目標(biāo)文件 然后由自然保護(hù)區(qū)為 連接程序 Link 的軟件 把 OBJ文件與C語(yǔ)言提供的各種庫(kù)函數(shù)連接起來(lái)生成一個(gè)后綴為 EXE的可執(zhí)行文件 可通過(guò)點(diǎn)擊或者輸入該文件的名字就可以執(zhí)行這個(gè)文件了 1 1 2程序設(shè)計(jì)簡(jiǎn)單程序設(shè)計(jì)一般包含以下幾個(gè)部分 1 確定數(shù)據(jù)結(jié)構(gòu) 2 確定算法 3 編碼 4 在計(jì)算機(jī)上調(diào)試程序 5 整理并寫出文檔資料 1 2算法學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)的目的就是在用語(yǔ)言作為工具 設(shè)計(jì)出可供計(jì)算機(jī)運(yùn)行的程序 那么 如何對(duì)一個(gè)已知的問題進(jìn)行有效的求解呢 怎樣才能編寫出程序呢 一般來(lái)說(shuō) 除了待定合理的數(shù)據(jù)結(jié)構(gòu)外 關(guān)鍵的一步是設(shè)計(jì)算法 有了一個(gè)好的算法 就可以用任何一種計(jì)算機(jī)高級(jí)語(yǔ)言把算法轉(zhuǎn)換為程序 編寫程序 算法 為解決某個(gè)特定的問題而采取的確定且有限的步驟 算法的五個(gè)特性 1 有窮性 2 確定性 3 可行性 4 有0個(gè)或多個(gè)輸入 5 有1個(gè)或多人輸出 算法的描述方法 偽代碼和流程圖 1 3結(jié)構(gòu)化程序設(shè)計(jì)和模塊化結(jié)構(gòu)1 3 1結(jié)構(gòu)化程序結(jié)構(gòu)化程序由三種基本結(jié)構(gòu)組成 1 順序結(jié)構(gòu) 2 選擇結(jié)構(gòu) 3 循環(huán)結(jié)構(gòu) 順序結(jié)構(gòu) 二分支選擇結(jié)構(gòu) 選擇結(jié)構(gòu) 多分支選擇結(jié)構(gòu) 循環(huán)結(jié)構(gòu) 當(dāng)型循環(huán)結(jié)構(gòu) 直到型循環(huán)結(jié)構(gòu) 注 A B A1 An可以是一個(gè)簡(jiǎn)單語(yǔ)句 也可以是一個(gè)基本結(jié)構(gòu) 已經(jīng)證明 由三種基本結(jié)構(gòu)所絡(luò)組成的算法可以解決任何復(fù)雜的問題 由三種基本結(jié)構(gòu)所構(gòu)成的算法稱為結(jié)構(gòu)化算法 由三種基本結(jié)構(gòu)所構(gòu)成的程序稱為結(jié)構(gòu)化程序 例1 1先后輸入若干個(gè)整數(shù) 要求打印出其中最大的數(shù) 當(dāng)輸入的數(shù)小于0時(shí)結(jié)束 用N S流程圖表示算法 解題思路 先輸入一個(gè)數(shù) 在沒有其他數(shù)參加比較之前 它顯然是當(dāng)前最大的數(shù) 把它放到變量max中 讓max始終存放當(dāng)前已比較過(guò)的數(shù)中上最大值 然后輸入第二個(gè)數(shù) 并與max比較 如果第二個(gè)數(shù)大于max 則用第二個(gè)數(shù)替換max中原來(lái)的值 如果第二個(gè)數(shù)小于max 則max中原來(lái)的值保持不變 如此循環(huán)下去 直到輸入的數(shù)小于0時(shí)程序結(jié)束 最后max中的值就是所有輸入數(shù)中的最大值 根據(jù)上面的思路 畫出N S流程圖 變量x用來(lái)控制循環(huán)的次數(shù) 當(dāng)x 0時(shí) 執(zhí)行循環(huán)體 在循環(huán)體內(nèi)進(jìn)行兩個(gè)數(shù)的比較和和輸入新的x值 讀入一個(gè)數(shù)給x max x 當(dāng)x 0時(shí) 輸出max x max max x 是 否 讀入一個(gè)新數(shù)給x 例1 1程序的N S流程圖 1 3 2模塊化結(jié)構(gòu) 當(dāng)計(jì)算機(jī)在處理比較復(fù)雜的任務(wù)時(shí) 所編寫的程序經(jīng)常會(huì)很長(zhǎng) 而且通常情況下是由多人來(lái)完成的 這時(shí)就需要要處理的復(fù)雜問題分解成若干個(gè)子問題 如果這些子問題仍然很大 可以再劃分更小的子問題 直到劃分的子問題比較容易求解 而這個(gè)容易求解的小問題我們可以叫做一個(gè)模塊 通常我們稱這樣的程序設(shè)計(jì)方法為 模塊化 的方法 由一個(gè)個(gè)功能模塊構(gòu)成的程序結(jié)構(gòu)為模塊化結(jié)構(gòu) C語(yǔ)言是一種結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言 提供了定義 函數(shù) 的功能 沒有子程序的概念 它提供的函數(shù)可程序的所有功能 C語(yǔ)言允許對(duì)函數(shù)單獨(dú)進(jìn)行編譯 從而可以實(shí)現(xiàn)模塊化 C語(yǔ)言32個(gè)關(guān)鍵字 由系統(tǒng)定義 不能重作其它定義 autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunsignedunionvoidvolatilewhile- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 全國(guó)計(jì)算機(jī) 二級(jí) 考試
鏈接地址:http://m.kudomayuko.com/p-5210461.html