第5章 計算機程序設(shè)計_第1頁
第5章 計算機程序設(shè)計_第2頁
第5章 計算機程序設(shè)計_第3頁
第5章 計算機程序設(shè)計_第4頁
第5章 計算機程序設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第5章計算機程序設(shè)計本章導(dǎo)讀:

本章主要介紹程序設(shè)計基礎(chǔ)知識、程序設(shè)計的一般過程和程序設(shè)計語言,重點介紹了面向過程程序設(shè)計、面向?qū)ο蟪绦蛟O(shè)計和可視化程序設(shè)計的特點,并結(jié)合C、C++、Java、VB等語言介紹這些程序設(shè)計方法的具體應(yīng)用。本章主要知識點:

程序設(shè)計基礎(chǔ)知識面向過程程序設(shè)計的特點及其應(yīng)用

面向?qū)ο蟪绦蛟O(shè)計的特點及其應(yīng)用可視化程序設(shè)計的特點及其應(yīng)用

第5章計算機程序設(shè)計5.1概述

5.2面向過程程序設(shè)計5.3面向?qū)ο蟪绦蛟O(shè)計5.4可視化程序設(shè)計5.1概述返回本章目錄5.1.1程序設(shè)計基礎(chǔ)5.1.2程序設(shè)計的一般過程5.1.3程序設(shè)計語言5.1.4程序設(shè)計發(fā)展概況5.1.1程序設(shè)計基礎(chǔ)

計算機之所以能自動連續(xù)地進行工作,最根本的原因就在于“存儲程序”和“程序控制”。“存儲程序”——就是把計算機處理問題的步驟用計算機能夠識別的指令編寫出來,并送入計算機內(nèi)部的存儲器存儲起來?!俺绦蚩刂啤薄褪前咽孪却鎯玫某绦驈拇鎯ζ魅〕鰜?,送入CPU執(zhí)行,計算機才能按照人的意圖自動完成指定的工作。因此,程序就是為解決某一問題而編寫的語句集合,是將一個實際問題的具體操作用某種程序設(shè)計語言描述出來的指令序列。編寫程序的過程就是程序設(shè)計。程序設(shè)計語言就是計算機能夠理解和執(zhí)行的特殊語言。

返回本節(jié)目錄5.1.2程序設(shè)計的一般過程返回本節(jié)目錄程序設(shè)計就是分析問題、編寫程序、調(diào)試程序的過程。用計算機解決實際問題的基本過程如下圖所示。程序設(shè)計步驟如下:(1)分析要解決的問題,明確任務(wù)(2)分析問題,建立數(shù)學(xué)模型,并選擇合適的解決方案(3)確定數(shù)據(jù)結(jié)構(gòu)和算法:數(shù)據(jù)結(jié)構(gòu)+算法=程序(4)編寫程序(5)調(diào)試程序(6)整理資料,交付使用分析問題確定解決方案確定具體算法編寫程序調(diào)試程序整理文檔5.1.3程序設(shè)計語言程序設(shè)計語言可分成機器語言、匯編語言和高級語言。前兩類依賴于計算機硬件,因機器而異又稱為低級語言,而高級語言與計算機硬件基本無關(guān),是目前使用非常廣泛的程序設(shè)計語言。

1.機器語言機器語言是一種用二進制數(shù)“0”和“1”表示計算機各種操作的程序設(shè)計語言。一條機器指令能夠控制計算機執(zhí)行一種操作。計算機能夠直接理解和執(zhí)行使用機器語言編寫的程序,執(zhí)行速度快,占用內(nèi)存少;但難于記憶,編程困難,可讀性差,容易出錯。機器語言是面向機器的語言,可移植性極差。5.1.3程序設(shè)計語言

2.匯編語言

匯編語言是一種用助記符來表示各個基本操作的程序設(shè)計語言。如用ADD表示加法操作,SUB表示減法操作等。匯編語言的出現(xiàn),大大減少了程序編寫、閱讀、修改、維護等方面的工作量,但匯編語言也是一種面向機器的語言,計算機不能直接執(zhí)行,通用性和可移植性差,必須經(jīng)過匯編程序翻譯成機器語言程序后才能在計算機上執(zhí)行,需要程序員對計算機內(nèi)部結(jié)構(gòu)非常了解。

xor

ah,ah ;(ah)=0

int13h ;13H中斷調(diào)用

movah,80h

jmp0000:7c00 ;跳轉(zhuǎn)5.1.3程序設(shè)計語言返回本節(jié)目錄

3.高級語言高級語言是一種用接近自然語言和數(shù)學(xué)語言的語法、符號描述基本操作的程序設(shè)計語言。高級語言編寫的程序不依賴于具體的機器,程序員編程時無需關(guān)心計算機內(nèi)部的細節(jié),從而大大提高了編程效率。計算機不能直接執(zhí)行使用高級語言編寫的程序,需用專門的翻譯程序?qū)⑵滢D(zhuǎn)換成機器語言程序后才能執(zhí)行。目前,使用較廣泛的高級語言有C、C++、VisualBasic、VisualC++、PowerBuilder、Java、Delphi、ASP、JSP、PHP、VisualFoxpro等。5.2面向過程程序設(shè)計返回本章目錄5.2.1概述5.2.2基于C語言的面向過程程序設(shè)計

5.2.1概述面向過程程序設(shè)計有三種基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),又稱“結(jié)構(gòu)化程序設(shè)計”。程序一般由一個主程序(或主函數(shù))和若干個子程序(或函數(shù))組成。它把數(shù)據(jù)和過程分離成兩個相互獨立的實體,程序員必須時刻注意所處理的數(shù)據(jù),對不同數(shù)據(jù)作相同處理或?qū)ο嗤瑪?shù)據(jù)作不同處理,都要重新編程,程序的可重用性不好。面向過程程序設(shè)計中過程的實現(xiàn)取決于數(shù)據(jù)結(jié)構(gòu)。如果一個數(shù)據(jù)結(jié)構(gòu)發(fā)生變化,將導(dǎo)致許多函數(shù)和過程重寫。有時幾個關(guān)鍵的數(shù)據(jù)結(jié)構(gòu)發(fā)生變化,將導(dǎo)致整個軟件系統(tǒng)的結(jié)構(gòu)崩潰。5.2.2基于C語言的面向過程程序設(shè)計

C語言是國際上廣泛流行的程序設(shè)計語言,適合作為系統(tǒng)描述語言,既可用來寫系統(tǒng)軟件,也可用來寫應(yīng)用軟件。特點如下:(1)是一種高級語言,但它又提供了低級語言的功能。(2)提供豐富的數(shù)據(jù)類型,可以實現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)。(3)提供了豐富的運算符,表達式類型多樣化。(4)是結(jié)構(gòu)化的程序設(shè)計語言。(5)生成的目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。(6)可移植性好,可以用于各種類型的計算機和操作系統(tǒng)中。(7)有預(yù)處理功能,提高了程序的可讀性和可移植性。(8)語法限制不太嚴(yán)格,程序設(shè)計自由度大。

返回本節(jié)目錄5.3面向?qū)ο蟪绦蛟O(shè)計返回本章目錄5.3.1概述5.3.2基于C++的面向?qū)ο蟪绦蛟O(shè)計5.3.3基于Java的面向?qū)ο蟪绦蛟O(shè)計5.3.1概述傳統(tǒng)程序設(shè)計方法的程序缺乏可交換性,程序效率低,可靠性差,程序維護困難。面向?qū)ο蟪绦蛟O(shè)計是一種通過模仿人類思維方式(包括概括、分類、抽象、歸納等)來建立現(xiàn)實世界模型的方法,是嶄新的程序設(shè)計思想體系。它通過數(shù)據(jù)抽象,將許多對象中共性的數(shù)據(jù)和操作這些數(shù)據(jù)所需要的算法抽取出來。它將數(shù)據(jù)及數(shù)據(jù)的操作封裝在一起,作為一個相互依存、不可分割的整體來處理,并采用信息隱藏技術(shù),將對象及對象的操作抽象成一種新的數(shù)據(jù)類型——“類”,并考慮不同對象之間的聯(lián)系和類的重用性。在面向?qū)ο蟪绦蛟O(shè)計中,首要的任務(wù)就是確定所需要的類,每個類應(yīng)設(shè)置足夠的操作,并利用繼承機制共享其相同的特性。面向?qū)ο蟪绦蛟O(shè)計的最大優(yōu)點是允許“繼承”,即在某個類的基礎(chǔ)上可以派生出新類。5.3.2基于C++的面向?qū)ο蟪绦蛟O(shè)計

C++繼承了C語言的全部內(nèi)容,并在C語言的基礎(chǔ)上增加了面向?qū)ο蟪绦蛟O(shè)計的內(nèi)容。C++既支持傳統(tǒng)的面向過程程序設(shè)計,又支持新型的面向?qū)ο蟪绦蛟O(shè)計。因此,C++成為面向?qū)ο蟪绦蛟O(shè)計的主流語言。

5.3.3基于Java的面向?qū)ο蟪绦蛟O(shè)計返回本節(jié)目錄

Java是一種廣泛使用的網(wǎng)絡(luò)編程語言,簡單,面向?qū)ο?,解釋?zhí)行不依賴于機器的結(jié)構(gòu),具有可移植性、安全性,并且提供了并發(fā)機制,是多線程的。Java語言的特性使它可以最大限度地利用網(wǎng)絡(luò),Java的小應(yīng)用程序(Applet)是動態(tài)、安全、跨平臺的網(wǎng)絡(luò)應(yīng)用程序,可在網(wǎng)絡(luò)上傳輸而不受CPU和環(huán)境的限制。JavaApplet嵌入HTML語言,通過主頁發(fā)布到Internet。

5.4可視化程序設(shè)計5.4.1概述5.4.2基于VisualBasic的可視化程序設(shè)計

返回本章目錄5.4.1概述可視化程序設(shè)計簡單說就是“所見即所得”,即在設(shè)計時,根據(jù)頭腦中所想象的應(yīng)用程序界面,通過鼠標(biāo)以“手繪”的方式在屏幕上“畫”出程序界面,而不是編制大量的代碼然后再編譯生成界面,底層的一些程序代碼可以由開發(fā)平臺自動生成??梢暬绦蛟O(shè)計一般為用戶提供大量的界面元素或稱為控件對象。用戶只要利用鼠標(biāo)把這些控件對象拖動到適當(dāng)位置,然后設(shè)置它們的大小、形狀、屬性等,就可以設(shè)計出自己所想要的應(yīng)用程序界面。5.4.2基于VisualBasic的可視化程序設(shè)計

VisualBasic是由微軟公司于1991年推出的可視化程序設(shè)計語言。“VisualBasic”的意思就是“可視化的BASIC語言”,它是對BASIC語言的擴充,既保留了BASIC語言易學(xué)易用的優(yōu)點,又充分利用Windows提供的圖形環(huán)境,提供了一套嶄新的可視化設(shè)計工具,采用面向?qū)ο蟮氖录?qū)動編程機制,大大簡化了Windows程序

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論