




已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第八章 程序設(shè)計(jì)語言,計(jì)算機(jī)學(xué)院 趙曉南,本章內(nèi)容,8.1 程序設(shè)計(jì)語言的發(fā)展史 斷代劃分,高級(jí)程序設(shè)計(jì)語言的分類 8.2 高級(jí)程序設(shè)計(jì)語言的基本要素 變量,數(shù)據(jù)類型,賦值語句,分支語句,循環(huán)語句,過程(函數(shù)),注釋語句 8.3 高級(jí)程序設(shè)計(jì)語言的編譯 編譯的基本概念,編譯過程,軟件的運(yùn)行,程序設(shè)計(jì)語言概述,程序設(shè)計(jì)語言是實(shí)現(xiàn)人機(jī)交換信息(對(duì)話)的最基本工具。 計(jì)算機(jī)程序設(shè)計(jì)語言的發(fā)展,經(jīng)歷了從機(jī)器語言、匯編語言到高級(jí)語言的歷程。,8.1 程序設(shè)計(jì)語言斷代的劃分,機(jī)器語言:由機(jī)器指令組成。即一串串由“0”和“1”組成的指令序列集。 用機(jī)器語言所編寫的程序機(jī)器能直接識(shí)別和執(zhí)行,所以又稱它為目標(biāo)程序。,缺點(diǎn): 與自然語言差距大,指令難記憶 調(diào)試、排錯(cuò)比較困難,優(yōu)點(diǎn): 使用針對(duì)特定型號(hào)計(jì)算機(jī)的語言,故而運(yùn)行效率是所有語言中最高的。,8.1 程序設(shè)計(jì)語言斷代的劃分,匯編語言:采用有一定含義的符號(hào)即指令助記符來表示指令。 匯編語言比機(jī)器語言易讀、易維護(hù)。但計(jì)算機(jī)并不認(rèn)識(shí)這些符號(hào),因此就需要一個(gè)專門的程序負(fù)責(zé)將這些符號(hào)翻譯成二進(jìn)制數(shù)的機(jī)器語言,這種翻譯程序被稱為匯編程序。,一般都采用某些有關(guān)的英文單詞的縮寫,基本與機(jī)器指令一一對(duì)應(yīng),8.1 程序設(shè)計(jì)語言斷代的劃分,高級(jí)程序設(shè)計(jì)語言:一種接近于數(shù)學(xué)語言或自然語言,同時(shí)又不依賴于計(jì)算機(jī)硬件,編寫的程序能在所有機(jī)器上通用。,1957年,第一個(gè)完全脫離機(jī)器硬件的高級(jí)語言- FORTRAN問世了。此后,40多年來,共有幾百種高級(jí)語言出現(xiàn)。,1969年,提出了結(jié)構(gòu)化程序設(shè)計(jì)方法;1970年,第一個(gè)結(jié)構(gòu)化程序設(shè)計(jì)語言Pascal出現(xiàn),標(biāo)志著結(jié)構(gòu)化程序設(shè)計(jì)時(shí)期的開始。,80年代初開始,在軟件設(shè)計(jì)思想上,又產(chǎn)生了一次革命,其成果就是面向?qū)ο蟮某绦蛟O(shè)計(jì)。,下一個(gè)發(fā)展目標(biāo)是“面向應(yīng)用”,就是說:只要告訴程序要干什么,程序就能自動(dòng)生成算法進(jìn)行處理。 即:非過程化程序語言。,高級(jí)程序設(shè)計(jì)語言的分類,按設(shè)計(jì)要求分(過程,非過程):過程式語言的主要特征是,用戶可以指明一系列可順序執(zhí)行的運(yùn)算,以表示相應(yīng)的計(jì)算過程,如Fortran,Cobol,Pascal等。 按應(yīng)用范圍分(通用,專用):如Fortran、Cobol、Pascal、C都是通用語言。目標(biāo)單一的語言稱為專用語言,如APT等。 按描述問題的方式分(命令型,函數(shù)型,描述型,面向?qū)ο笮停﹨⒁奝132 表8-3,8.2程序設(shè)計(jì)語言的基本元素,變量 數(shù)據(jù)類型 賦值語句 分支語句 循環(huán)語句 過程(函數(shù)) 注釋語句,8.2 基本元素,8.2.1 變量和常量(variable, constant) 變量:在程序運(yùn)行過程中,其值可以被改變的量稱為變量。變量的兩個(gè)要素:1)變量名。每個(gè)變量都必須有一個(gè)名字變量名,遵循標(biāo)識(shí)符命名規(guī)則。2)變量值。在程序運(yùn)行過程中,變量值存儲(chǔ)在內(nèi)存中。程序通過變量名來引用變量的值。 常量:在程序運(yùn)行過程中,其值不能被改變的量稱為常量。常量可分為整型常量,實(shí)型常量,字符常量,符號(hào)常量。,變量在使用前,在內(nèi)存中會(huì)給每個(gè)變量申請一定大小的空間。,8.2.2 數(shù)據(jù)類型,基本數(shù)據(jù)類型(data type) 整型: short int(短整型) integer(整型) long int(長整型) 實(shí)型: real(基本實(shí)型) single(單精度) double(雙精度)等 字符型:一個(gè)單字符。 布爾型:布爾型變量的值只有false和true。,字符型變量,大小寫不等價(jià)!,注意:整型/實(shí)型變量的長度,與具體的機(jī)型有關(guān)。,注意:整型/實(shí)型變量的長度,與具體的機(jī)型有關(guān)。,8.2.2 數(shù)據(jù)類型,構(gòu)造數(shù)據(jù)類型 數(shù)組(array): 相同類型數(shù)據(jù)的集合。 數(shù)組中的各個(gè)元素,存放在連續(xù)的內(nèi)存單元中 加標(biāo)號(hào)引用其中的各個(gè)變量 結(jié)構(gòu)體(struct): 不同類型數(shù)據(jù)的集合 結(jié)構(gòu)體中的各個(gè)變量,存放在連續(xù)的內(nèi)存單元中 引用時(shí),變量名和分量之間加點(diǎn)表示,如: 1. int V10; 其中的數(shù)組元素分別表示為:V0,V1V9。 2. Struct student char name8; char class8; float score; 引用時(shí): 比如s為Struct student型的變量,則 =“wang” s.class =10010903 s.score=89.9,8.2.3 賦值語句,賦值操作的意義就是把一個(gè)確定的數(shù)值放到某個(gè)變量代表的那個(gè)內(nèi)存單元中去。 賦值號(hào): “=”表示賦值操作 左值:等待被賦予值的變量 右值:將要被賦予的“值”,8.2.4 分支語句,分支語句 根據(jù)指定的條件(即產(chǎn)生真假/值的表達(dá)式),從兩條、或者多條路徑中選擇一條執(zhí)行。 又例如switch語句,既是多路選擇。,8.2.5 循環(huán)語句,for(表達(dá)式1;表達(dá)式2;表達(dá)式3) 循環(huán)體語句A For語句的循環(huán)體執(zhí)行0次或多次。,執(zhí)行循環(huán)的次數(shù)一般情況下是一個(gè)指定的值。一般在表達(dá)式2中給出。,8.2.5 循環(huán)語句,do-while語句的循環(huán)體執(zhí)行1次或多次 do 循環(huán)體語句A; while(表達(dá)式p);,8.2.6 函數(shù),一個(gè)程序一般分為若干個(gè)模塊,每個(gè)模塊用來實(shí)現(xiàn)一個(gè)特定的功能。 函數(shù)就是實(shí)現(xiàn)一個(gè)特定功能的一個(gè)語句序列。通過使用函數(shù),可以使程序更短、更清晰。 函數(shù)定義的格式,類型標(biāo)識(shí)符 函數(shù)名(形式參數(shù)表) 聲明部分; 語句部分; ,8.2.6 過程(函數(shù)),函數(shù)調(diào)用的基本格式: 用途:構(gòu)造通用的算法模塊;把一個(gè)大的、復(fù)雜的算法分解成若干個(gè)小的、簡單的算法合成。,函數(shù)名(參數(shù)表),主程序運(yùn)行過程中,遇到調(diào)用過程,暫停在那,轉(zhuǎn)去執(zhí)行被調(diào)用的過程,待其結(jié)束后返回,繼續(xù)向下執(zhí)行。,過程的參數(shù)傳遞,值傳遞: 把主程序的具體數(shù)值,復(fù)制給被調(diào)用的過程的參數(shù),進(jìn)行操作。 地址傳遞: 主程序操作對(duì)象(變量)的地址和被調(diào)用的過程的參數(shù)(虛參)一致,即:二者共享同一個(gè)內(nèi)存地址。,實(shí)參:主程序中的待操作對(duì)象。虛參:被調(diào)用過程的參數(shù),8.2.7 注釋語句,目的:注釋是對(duì)程序的解釋說明。使程序更加易讀,易維護(hù)。,是輔助內(nèi)容,不包含在真正運(yùn)行的程序中(即不需要編譯),但是卻是必不可少的。好的程序都有很出色的注釋。,編譯的基本概念,編譯程序:這是一種將高級(jí)語言源程序作為輸入,進(jìn)行翻譯轉(zhuǎn)換,產(chǎn)生出機(jī)器語言的目標(biāo)程序,然后再讓計(jì)算機(jī)執(zhí)行這個(gè)目標(biāo)程序,得到計(jì)算結(jié)果。 解釋程序:這是一種高級(jí)語言翻譯程序的一種,它將源語言編寫的源程序作為輸入,解釋一句后就提交計(jì)算機(jī)執(zhí)行一句,并不形成目標(biāo)程序。,編譯程序的兩種方式,編譯過程,編譯程序工作時(shí),先分析,后綜合,從而得到目標(biāo)程序。所謂
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 強(qiáng)制免疫經(jīng)費(fèi)管理辦法
- 車間工人考核管理辦法
- 移動(dòng)終端支付管理辦法
- 肩脫位的護(hù)理課件
- 自主游戲教師培訓(xùn)課件
- 高職經(jīng)濟(jì)數(shù)學(xué)試卷
- 風(fēng)華書院招生數(shù)學(xué)試卷
- 高三三二零數(shù)學(xué)試卷
- 肛腸病護(hù)理課件
- 2025至2030橙產(chǎn)品行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報(bào)告
- GB/T 27772-2025病媒生物密度控制水平蠅類
- 【MOOC】《算法設(shè)計(jì)與分析》(東北大學(xué)) 中國大學(xué)慕課答案
- 2025年部門預(yù)算支出經(jīng)濟(jì)分類科目說明表
- 《陸上風(fēng)電場工程概算定額》NBT 31010-2019
- 診所備案申請表格(衛(wèi)健委備案)
- 行百里者半九十期末沖刺主題班會(huì).ppt課件
- 建筑施工新入職員工安全教育培訓(xùn)
- 基于T68鏜床電氣控制系統(tǒng)的PLC改造設(shè)計(jì)[1]
- 膨脹機(jī)培訓(xùn)資料-cryostar[1]資料
- 醫(yī)院標(biāo)識(shí)牌設(shè)計(jì)方案 2
- C7000服務(wù)器維護(hù)文檔
評(píng)論
0/150
提交評(píng)論