




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第六講 程序設(shè)計與算法計算機(jī)概論九講1 導(dǎo)引問答題與關(guān)鍵字 程序設(shè)計語言 什么是算法 如何編制計算機(jī)程序 程序設(shè)計方法 程序設(shè)計語言發(fā)展 第六講 程序設(shè)計與算法2導(dǎo)引問答題 1、用高級程序設(shè)計語言編寫的程序稱為_。 A)目標(biāo)程序 B)可執(zhí)行程序 C)源程序 D)偽代碼程序 3導(dǎo)引問答題 2、一臺計算機(jī)可能會有多種多樣的指令,這些指令的集合就是_。 A)指令系統(tǒng) B)指令集合 C)指令群 D)指令包4導(dǎo)引問答題 3、能把匯編語言源程序翻譯成目標(biāo)程序的程序稱為_。A)編譯程序B)解釋程序C)編輯程序D)匯編程序 5導(dǎo)引問答題 4、計算機(jī)無法直接執(zhí)行_。 A)機(jī)器語言 B)高級語言源程序 C)編譯連
2、接后的高級語言 D)匯編后的匯編語言6導(dǎo)引問答題 5、高級語言編寫的程序翻譯成機(jī)器語言程序,采用的兩種翻譯方式是_。 A)編譯和解釋 B)編譯和匯編 C)編譯和鏈接 D)解釋和匯編 7導(dǎo)引問答題 6、結(jié)構(gòu)化程序設(shè)計的控制結(jié)構(gòu)不包括_。A)順序結(jié)構(gòu)B)選擇結(jié)構(gòu)C)循環(huán)結(jié)構(gòu)D)跳轉(zhuǎn)結(jié)構(gòu)8導(dǎo)引問答題 7、C+是_。 A)面向?qū)ο蟮某绦蛟O(shè)計語言 B)面向過程的程序設(shè)計語言 C)超文本符號標(biāo)記語言 D)匯編語言9導(dǎo)引問答題 8、通過編譯連接形成的可執(zhí)行程序的運(yùn)行速度比解釋執(zhí)行的程序要_。 A)快 B)慢 C)一樣 D)沒有可比性10導(dǎo)引問答題 9、匯編語言屬于_。 A)高級語言 B)低級語言 C)解釋編
3、譯程序 D)機(jī)器語言11導(dǎo)引問答題 10、所有計算機(jī)高級語言的語言處理程序是_。 A)通用的 B)不通用 C)同類計算機(jī)上通用 D)微型計算機(jī)上通用12導(dǎo)引關(guān)鍵字 軟件、程序指令、指令系統(tǒng)機(jī)器語言、匯編語言、高級語言語言處理程序、解釋、編譯源程序、目標(biāo)程序、可執(zhí)行程序結(jié)構(gòu)化程序設(shè)計、控制結(jié)構(gòu)面向?qū)ο蟪绦蛟O(shè)計面向過程程序設(shè)計13 導(dǎo)引問答題與關(guān)鍵字 程序設(shè)計語言 什么是算法 如何編制計算機(jī)程序 程序設(shè)計方法 程序設(shè)計語言發(fā)展 第六講 程序設(shè)計與算法14程序設(shè)計語言概述計算機(jī)程序計算機(jī)程序就是按照實際工作步驟而事先編制好的、具有特殊功能的指令序列。程序設(shè)計語言程序設(shè)計語言是用來編寫計算機(jī)程序的語言
4、,是用戶與計算機(jī)交流信息的工具。程序設(shè)計語言概述計算機(jī)程序主要涉及兩部分內(nèi)容:數(shù)據(jù)的描述各種變量的定義,也稱數(shù)據(jù)結(jié)構(gòu)描述;數(shù)據(jù)的處理對變量的操作,這些操作按解決問題的要求有一定的先后順序和規(guī)則,也稱為求解算法。 算法+數(shù)據(jù)結(jié)構(gòu)=程序算法是程序的核心,它在程序編制、軟件開發(fā)及整個計算機(jī)科學(xué)中占據(jù)重要地位;數(shù)據(jù)結(jié)構(gòu)是算法加工的對象,一個程序要進(jìn)行計算或處理總是以某些數(shù)據(jù)為對象的,要設(shè)計一個好的程序就需要將這些數(shù)據(jù)按要求組成一定的數(shù)據(jù)結(jié)構(gòu)。程序設(shè)計語言發(fā)展 程序設(shè)計語言的發(fā)展過程是伴隨整個計算機(jī)技術(shù)的發(fā)展而進(jìn)行,從最初的機(jī)器語言到匯編語言,再到各種結(jié)構(gòu)化的高級語言,最后到支持面向?qū)ο蠹夹g(shù)的面向?qū)ο笳Z
5、言。 這個發(fā)展過程,使程序設(shè)計者更容易學(xué)習(xí)掌握語言,能以更接近問題本質(zhì)的方式去思考和描述問題。 程序設(shè)計語言發(fā)展機(jī)器語言機(jī)器語言是由0和1二進(jìn)制代碼按一定規(guī)則組成的、能被計算機(jī)直接理解和執(zhí)行的指令序列,也稱為二進(jìn)制語言或手編語言;機(jī)器可直接識別 ,運(yùn)行效率較高,但是其面向機(jī)器;表示指令難以記憶,編寫機(jī)器語言程序很煩瑣,容易出錯;不同的計算機(jī)系列有不同的機(jī)器語言,通用性及可移植性差,屬低級語言。程序設(shè)計語言發(fā)展匯編語言采用易于記憶的“指令符號”代替冗長的機(jī)器指令代碼,又稱符號化語言。機(jī)器不可直接識別,需通過匯編程序翻譯成機(jī)器語言。匯編語言的指令與機(jī)器語言的指令一一對應(yīng),不同計算機(jī)系列具有不同的匯
6、編語言,通用性仍較差。仍屬于低級語言。與機(jī)器語言相比,記憶指令助記符較記憶二進(jìn)制代碼要容易,但仍很煩瑣。宏匯編的意思就是用一條宏指令代替若干條匯編指令。 程序設(shè)計語言發(fā)展高級語言高級語言是由表達(dá)各種意義的日常文字和數(shù)學(xué)符號及表達(dá)式按照一定的規(guī)則組合而成,和人類的語言及數(shù)學(xué)公式很相似,這就是所謂“高級”的含義。使用高級語言編程,編程人員可以不了解計算機(jī)的硬件,不知道機(jī)器的指令系統(tǒng)。 自然語言的語句(指令),又稱算法語言或過程語言。機(jī)器不可直接識別,需通過語言處理程序翻譯成機(jī)器語言程序。不同的高級語言提供有自己的語言處理程序,即編譯程序或解釋程序。高級語言程序運(yùn)行速度和效率一般比不上機(jī)器語言和匯編
7、語言。其面向應(yīng)用,通用性及可移植性好。程序設(shè)計語言語言處理程序解釋程序?qū)⒏呒壵Z言寫的源程序作為輸入,采用邊解釋邊執(zhí)行的方法。解釋一條語句,就提交計算機(jī)執(zhí)行一條語句,并不生成目標(biāo)程序。如出現(xiàn)源程序語法錯誤,解釋程序就立即停止運(yùn)行,程序執(zhí)行也隨之終止。解釋并執(zhí)行運(yùn)行結(jié)果高級語言源程序輸入數(shù)據(jù)程序設(shè)計語言語言處理程序編譯程序?qū)⒏呒壵Z言寫的源程序作為輸入,先把源程序編譯成中間代碼,然后再與相關(guān)的標(biāo)準(zhǔn)函數(shù)庫連接裝配成完整的可在計算機(jī)上執(zhí)行的目標(biāo)程序。在調(diào)試和運(yùn)行方面編譯程序方法要比解釋程序方法更具有效率。運(yùn)行結(jié)果執(zhí)行目標(biāo)程序編譯高級語言源程序輸入數(shù)據(jù)目標(biāo)程序程序設(shè)計語言術(shù)語術(shù)語軟件:是計算機(jī)程序加上這些
8、程序的文檔資料。指令:指揮計算機(jī)進(jìn)行一個基本操作的命令。一條指令包括操作碼和操作數(shù)兩部分內(nèi)容。指令系統(tǒng):是一臺計算機(jī)所能執(zhí)行的所有指令的總稱。指令系統(tǒng)標(biāo)志著計算機(jī)功能的強(qiáng)弱。程序:是為了解決某些問題而編制的一系列工作步驟,是完成一定處理功能的指令集合。源程序:用匯編語言或高級語言編寫的程序。目標(biāo)程序:源程序經(jīng)語言處理程序翻譯后生成的由機(jī)器代碼表示的程序。運(yùn)行程序:目標(biāo)程序經(jīng)過連接后產(chǎn)生的程序。程序設(shè)計語言開發(fā)程序開發(fā)應(yīng)用程序的過程大致有下列幾個步驟:選定一個高級程序設(shè)計語言(如:C、VB、C+等);安裝好選定語言的運(yùn)行環(huán)境(語言處理程序);啟動并進(jìn)入程序編制狀態(tài);編制程序產(chǎn)生源程序文件;編譯源
9、程序文件產(chǎn)生目標(biāo)代碼文件;最后經(jīng)調(diào)試連接生成可執(zhí)行文件(.exe)即應(yīng)用程序。程序設(shè)計語言組成程序設(shè)計語言的組成一般包括:數(shù)據(jù)類型語言元素控制結(jié)構(gòu)程序模塊程序設(shè)計語言組成數(shù)據(jù)類型決定了該類型數(shù)據(jù)在計算機(jī)中的存儲與表示方式;決定了該類型數(shù)據(jù)的取值范圍;決定了該類型數(shù)據(jù)所能執(zhí)行的操作;不同程序設(shè)計語言所提供的數(shù)據(jù)類型的種類是不盡相同的。 程序設(shè)計語言組成語言元素高級程序設(shè)計語言使用我們的日常文字、數(shù)學(xué)符號和表達(dá)式來書寫程序,包括字母符號、數(shù)字符號、變量、常量、表達(dá)式、運(yùn)算符、特殊字符和標(biāo)準(zhǔn)函數(shù)等。 不同的程序設(shè)計語言所使用的語言元素是不盡相同的,但基本一致。 程序設(shè)計語言組成控制結(jié)構(gòu)一般結(jié)構(gòu)化的程
10、序設(shè)計包括了順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)三類,它構(gòu)成了程序的主體。程序設(shè)計語言,一般都具有這三種結(jié)構(gòu),但它們的表示形式有所不同。 程序設(shè)計語言組成程序模塊把某一段程序語句作為一個整體,設(shè)計為一個子程序即程序模塊??梢园岩粋€復(fù)雜的程序,設(shè)計成為一個主程序模塊和若干個子程序模塊。在主程序模塊中調(diào)用子程序模塊,來完成程序的功能。這種程序設(shè)計的方法,稱為模塊化的程序設(shè)計。高級程序設(shè)計語言都提供設(shè)計子程序模塊的功能,一般在高級程序設(shè)計語言中把這種子程序模塊稱為:過程或函數(shù)。過程和函數(shù)的主要區(qū)別是過程沒有返回值,函數(shù)可帶回返回值。過程和函數(shù)需要先定義設(shè)計好后,才能被主程序使用。 導(dǎo)引問答題與關(guān)鍵字 程序設(shè)
11、計語言 什么是算法 如何編制計算機(jī)程序 程序設(shè)計方法 程序設(shè)計語言發(fā)展 第六講 程序設(shè)計與算法30什么是算法概述 程序設(shè)計就是通過分析問題、確定算法、編程求解等步驟來解決問題的過程,其中,算法具有重要的作用,它能夠提供一種思考問題的方向和方法。 在計算機(jī)中,把解決具體問題的過程準(zhǔn)確完整地描述出來就形成解決該問題的算法。 什么是算法要素 一個算法是由操作與控制結(jié)構(gòu)兩個要素組成。操作計算機(jī)最基本的操作有:算術(shù)運(yùn)算關(guān)系運(yùn)算邏輯運(yùn)算數(shù)據(jù)傳送控制結(jié)構(gòu)各操作之間的執(zhí)行順序為算法的控制結(jié)構(gòu)順序結(jié)構(gòu)選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)什么是算法性質(zhì) 算法的性質(zhì)一般歸納為下列五點(diǎn):輸入 要求若干個信息的輸入;有窮性 任意一個算法在
12、執(zhí)行有限個計算步驟后必須終止;可行性 有限個步驟應(yīng)該在一個合理的范圍內(nèi)進(jìn)行;確定性 每一個計算步驟,必須是精確地定義、無二義性;輸出 有若干個輸出信息即處理結(jié)果.什么是算法描述方法 為了描述算法,可以使用多種方法。自然語言用自然語言表達(dá)算法,就是把算法的各個步驟,依次用人們所熟悉的自然語言表示出來。 流程圖流程圖是用一些圖框、線條以及文字說明來形象地、直觀地描述算法。 偽代碼用一些介于自然語言與高級語言之間的符號語言表達(dá)算法,依次用人們所熟悉的并簡潔的方式表示出來。計算機(jī)語言計算機(jī)無法識別和執(zhí)行自然語言、流程圖、偽代碼。這些方法只是為了幫助人們描述、理解算法,要用計算機(jī)解決問題,就要用計算機(jī)程
13、序設(shè)計語言來描述算法。 輸入第1個數(shù)到變量max開始輸完否?yesnomax=a輸入下一個數(shù)到變量aamax ?yesno輸出max結(jié)束.畫出流程圖:從鍵盤上輸入n個數(shù),求最大值。 35什么是算法算法語句 用計算機(jī)處理實際問題的過程也就是程序設(shè)計的過程,一是必須掌握一門程序設(shè)計語言;二是必須掌握程序設(shè)計語言中的基本算法和編程思想。算法語句,是計算機(jī)處理問題時的最基本核心語句:c=c+1(稱其為計數(shù)器)s=s+x(稱其為累加器)p=p*x(稱其為累積器)x=x/n(稱其為累除器)、t=-t(稱其為正負(fù)號變換器)t=a,a=b,b=t(a,b變量值交換)f=1,f=0(稱其為標(biāo)記器)p=I(稱其為
14、跟蹤器)什么是算法編程思想 用計算機(jī)處理實際問題的過程也就是程序設(shè)計的過程,一是必須掌握一門程序設(shè)計語言;二是必須掌握程序設(shè)計語言中的基本算法和編程思想。 使用程序設(shè)計語言編制程序去解決實際問題,要經(jīng)過問題的分析、算法的描述和程序設(shè)計等。 在程序設(shè)計中,我們要考慮數(shù)據(jù)的類型、變量的定義,要用到算法語句,要考慮使用順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)來控制程序等等,最終將一個具體的實際問題用程序設(shè)計語言表示出來并由計算機(jī)去執(zhí)行完成。 什么是算法編程思想 在整個程序設(shè)計過程中,我們使用的是計算機(jī)的方法、計算機(jī)的思想。 計算機(jī)解決問題的方法思想與我們解決問題的傳統(tǒng)習(xí)慣及想法是不一樣的、這就要我們在學(xué)習(xí)程序設(shè)
15、計時,去學(xué)會、去思考計算機(jī)的想法,逐步適應(yīng)計算機(jī)的編程思想,即所謂的計算思維。 導(dǎo)引問答題與關(guān)鍵字 程序設(shè)計語言 什么是算法 如何編制計算機(jī)程序 程序設(shè)計方法 程序設(shè)計語言發(fā)展 第六講 程序設(shè)計與算法39如何編制計算機(jī)程序步驟程序設(shè)計過程一般包括5個步驟分析問題算法描述和程序設(shè)計編輯程序代碼并編譯和連接調(diào)試檢測程序編寫程序文檔 導(dǎo)引問答題與關(guān)鍵字 程序設(shè)計語言 什么是算法 如何編制計算機(jī)程序 程序設(shè)計方法 程序設(shè)計語言發(fā)展 第六講 程序設(shè)計與算法41程序設(shè)計方法語言類型高級語言的類型面向過程的語言面向?qū)ο蟮恼Z言面向問題的語言程序設(shè)計方法語言類型面向過程的語言面向過程語言是以過程或函數(shù)為基礎(chǔ)的,
16、用計算機(jī)能夠理解的邏輯來描述需要解決的問題、具體的實現(xiàn)方法、和步驟。用面向過程的語言編寫的程序需要詳細(xì)描述解題的過程和細(xì)節(jié)。具有很強(qiáng)的邏輯思路和編程思想。面向過程的高級語言是我們學(xué)習(xí)編程的基礎(chǔ)。程序設(shè)計方法語言類型面向?qū)ο蟮恼Z言面向?qū)ο笳Z言將客觀事物看做具有屬性和行為的對象,通過抽象找出同一類對象的共同屬性和行為,形成類。面向?qū)ο笳Z言能更直接地描述客觀世界中存在的事物(即對象)以及它們之間的關(guān)系。它提高了程序的重復(fù)使用能力,簡化了編寫的復(fù)雜性和提高了程序開發(fā)的效率。面向?qū)ο笳Z言中對象、屬性、方法,類和繼承等基本概念是學(xué)習(xí)的關(guān)鍵。 程序設(shè)計方法語言類型面向問題的語言面向問題的語言在解決問題時,不
17、必關(guān)心問題的求解算法和求解的過程,不用“編程”的方式就可以實現(xiàn)應(yīng)用系統(tǒng)的設(shè)計和開發(fā)。例如,利用在顯示屏上和用戶交互的方式,通過操作屏幕上的窗口、按鈕、圖標(biāo)、用戶填表等實現(xiàn)所需的應(yīng)用系統(tǒng)。面向問題的語言看起來不像計算機(jī)程序設(shè)計語言。它是一種快速高效開發(fā)應(yīng)用軟件的工具,面向問題的語言往往和數(shù)據(jù)庫系統(tǒng)緊密相聯(lián),可以直接高效地處理數(shù)據(jù)庫。這種新一代的軟件開發(fā)工具也可稱為第四代語言。程序設(shè)計方法方法程序設(shè)計方法結(jié)構(gòu)化程序設(shè)計面向?qū)ο蟪绦蛟O(shè)計程序設(shè)計方法方法結(jié)構(gòu)化程序設(shè)計結(jié)構(gòu)化程序設(shè)計是一種程序設(shè)計的原則和方法。用幾種標(biāo)準(zhǔn)的控制結(jié)構(gòu)(順序、分支和循環(huán))通過重復(fù)和嵌套來表示。結(jié)構(gòu)化程序設(shè)計思想采用“自頂向下
18、、逐步求精”的方法。按結(jié)構(gòu)化程序設(shè)計的要求設(shè)計出的高級程序設(shè)計語言稱為結(jié)構(gòu)化程序設(shè)計語言。利用結(jié)構(gòu)化程序設(shè)計語言,或者說按結(jié)構(gòu)化程序設(shè)計思想編寫出來的程序稱為結(jié)構(gòu)化程序。結(jié)構(gòu)化程序具有結(jié)構(gòu)清晰、容易理解、容易修改、容易驗證等特點(diǎn)。缺點(diǎn):代碼的可重用性差;可維護(hù)性差;穩(wěn)定性差;難以實現(xiàn)。程序設(shè)計方法方法面向?qū)ο蟪绦蛟O(shè)計面向?qū)ο笳Z言(Object-Oriented Language)是一類以對象作為基本程序結(jié)構(gòu)單位的程序設(shè)計語言;用于描述的設(shè)計是以對象為核心,而對象是程序運(yùn)行時刻的基本成分。語言中提供了類、繼承等成分。面向?qū)ο笳Z言刻畫客觀系統(tǒng)較為自然,便于軟件擴(kuò)充與復(fù)用。主要特點(diǎn):識認(rèn)性,系統(tǒng)中的基本構(gòu)件可識認(rèn)為一組可識別的離散對象;類別性,系統(tǒng)具有相同數(shù)據(jù)結(jié)構(gòu)與行為的所有對象可組成一類;多態(tài)性,對象具有惟一的靜態(tài)類型和多個可能的動態(tài)類型;繼承性,在基本層次關(guān)系的不同類中共享數(shù)據(jù)和操作。 導(dǎo)引問答題與關(guān)鍵字 程序設(shè)計語言 什么是算法 如何編制計算機(jī)程序 程序設(shè)計方法 程序設(shè)計語言發(fā)展
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- (2025年標(biāo)準(zhǔn))永久整地協(xié)議書
- (2025年標(biāo)準(zhǔn))無償倉儲協(xié)議書
- 城市綠化養(yǎng)護(hù)服務(wù)標(biāo)準(zhǔn)及項目要求
- 期中考試動員大會主持詞模板
- 中學(xué)英語聽力訓(xùn)練課件制作指南
- 企業(yè)運(yùn)營管理考核指標(biāo)設(shè)置與實施操作手冊
- 初中語法與寫作銜接教學(xué)計劃
- 《二次函數(shù)的性質(zhì)與應(yīng)用高中數(shù)學(xué)教學(xué)教案》
- 初中英語疑問句結(jié)構(gòu)與情景對話練習(xí)
- 邊境電子圍欄2025年智能監(jiān)控與中小企業(yè)邊境安全報告
- 施工現(xiàn)場危險源管理制度
- 新版煤礦安全投入保障制度
- 跨境運(yùn)輸問題應(yīng)急預(yù)案
- 預(yù)包裝食品采購合同樣本6篇
- 《上市公司再融資》課件
- 2025年八省聯(lián)考數(shù)學(xué)試題(原卷版)
- 天津市部分區(qū)2024-2025學(xué)年九年級(上)期末物理試卷(含答案)
- 文化創(chuàng)意產(chǎn)業(yè)IP開發(fā)與授權(quán)經(jīng)營策略規(guī)劃方案
- 在線式激光氧氣分析儀檢驗規(guī)范
- 中醫(yī)療法在患者康復(fù)中的應(yīng)用
- 腦血管介入手術(shù)
評論
0/150
提交評論