1.1 程序設(shè)計和程序設(shè)計語言 1.程序 從最一般的意義來說,程序是對解決某個計算問題的方法(算法)步驟的一種描述;而從計算機(jī)來說,計算機(jī)程序是用某種計算機(jī)能理解并執(zhí)行的計算機(jī)語言作為描述語言,對解決問題的方法步驟的描述。計算機(jī)執(zhí)行按程序所描述的方法步驟,能完成指定的功能。所以,程序就是供計算機(jī)執(zhí)行后能完成特定功能的指令序列。 一個計算機(jī)程序主要描述兩部分內(nèi)容:描述問題的每個對象和對象之間的關(guān)系,以及描述對這些對象作處理的處理規(guī)則。其中關(guān)于對象及對象之間的關(guān)系是數(shù)據(jù)結(jié)構(gòu)的內(nèi)容,而處理規(guī)則是求解的算法。針對問題所涉及的對象和要完成的處理,設(shè)計合理的數(shù)據(jù)結(jié)構(gòu)�?捎行У睾喕惴ǎ瑪�(shù)據(jù)結(jié)構(gòu)和算法是程序最主要的兩個方面。 2.程序設(shè)計的任條和主要步驟 程序設(shè)計的任務(wù)就是分析解決問題的方法步驟(算法),并將解決問題算法的方法步驟用計算機(jī)語言記錄下來。程序設(shè)計的主要步驟包括:認(rèn)識問題、設(shè)計解決問題的算法、按算法編寫程序、調(diào)試和測試程序。在程序開發(fā)過程中,上述步驟可能有反復(fù),如發(fā)現(xiàn)程序有錯,嚴(yán)重情況可能會要求重新認(rèn)識問題和重新設(shè)計算法等。 3.機(jī)器語言和匯編語言 計算機(jī)能直接識別和執(zhí)行的二進(jìn)制代碼稱為計算機(jī)的機(jī)器語言。用有助于記憶的符號來代表二進(jìn)制代碼,稱為匯編語言。匯編語言與機(jī)器語言幾乎有一對一的關(guān)系。用匯編語言編寫的程序稱為“匯編源程序”,匯編源程序不能在計算機(jī)上直接執(zhí)行,需要用匯編程序?qū)R編源程序翻譯成機(jī)器語言程序,然后執(zhí)行由匯編程序翻譯出來的機(jī)器語言程序。機(jī)器語言和匯編語言是與具體計算機(jī)緊密相關(guān)的,稱它們是面向機(jī)器的語言。 4.高級語言 與機(jī)器語言和匯編語言相比較,高級語言與具體計算機(jī)無關(guān),是一種能方便描述算法過程的計算機(jī)程序設(shè)計語言。高級語言種類千差萬別,但一般包含有以下四種成分:數(shù)據(jù)成分用來描述程序所涉及的數(shù)據(jù);運算成分用來描述運算;控制成分用來表達(dá)程序的控制構(gòu)造;傳輸成分用來表達(dá)數(shù)據(jù)的傳輸。由于高級語言程序主要是描述計算機(jī)的解題過程,即描述復(fù)雜的加工處理過程,所以也稱這種高級語言為面向過程語言。 用高級語言編寫的程序稱為“源程序”。計算機(jī)不能直接技源程序的語句運行,通常有解釋方式和編譯方式兩種方法在計算機(jī)上執(zhí)行源程序。 解釋方式,即讓計算機(jī)運行解釋程序,解釋程序逐句取出源程序中的語句,對它作解釋執(zhí)行,輸入數(shù)據(jù),產(chǎn)生結(jié)果。 編譯方式,即先運行編譯程序,從源程序一次翻譯產(chǎn)生計算機(jī)可直接執(zhí)行的二進(jìn)制程序(稱為目標(biāo)程序);然后讓計算機(jī)執(zhí)行目標(biāo)程序,輸入數(shù)據(jù),產(chǎn)生結(jié)果。 解釋方式的主要優(yōu)點是計算機(jī)與人的交互性好,調(diào)試程序時,能一邊執(zhí)行一邊直接改錯,能較快得到一個正確的程序。缺點是逐句解釋執(zhí)行,運行速度慢。 編譯方式的主要優(yōu)點是計算機(jī)運行目標(biāo)程序快,缺點是修改源程序后必須重新編譯以產(chǎn)生新的目標(biāo)程序。 現(xiàn)在也有將上述兩種方式結(jié)合起來的,即先編譯源程序,產(chǎn)生計算機(jī)還是不能直接執(zhí)行的中間代碼,然后讓解釋程序解釋執(zhí)行中間代碼。這樣做的好處首先是比直接解釋執(zhí)行快;更大的好處是中間代碼獨立于計算機(jī),只要有相應(yīng)的解釋程序,就可在任何計算機(jī)上運行。 5.面向問題語言 面向問題語言是為了易于描述和求解某類特定領(lǐng)域的問題而專門設(shè)計的一種非過程語言。用面向問題語言解題時,不僅擺脫計算機(jī)的內(nèi)部邏輯,也不必關(guān)心問題的求解算法和求解的過程,只需指出問題是做什么,數(shù)據(jù)的輸入和輸出形式,就能由相應(yīng)的計算機(jī)系統(tǒng)得到所需結(jié)果。如報表語言、SOL(Structured Query Language)語言等。SQL語言是數(shù)據(jù)庫查詢和操縱語言,能直接使用數(shù)據(jù)庫管理系統(tǒng)。由于使用面向問題語言來解題只要告訴計算機(jī)做什么,不必告訴計算機(jī)如何做,能方便用戶的使用和提高程序的開發(fā)速度。但實現(xiàn)面向問題語言的系統(tǒng)從最一般的意義下實現(xiàn)問題如何求解,通常實現(xiàn)的效率較低。另外,面向問題語言要求問題已有通用的求解方法,目前其應(yīng)用范圍還比較狹窄。 1.2 C語言基礎(chǔ) 1.C語言的發(fā)展史 目的是為編寫系統(tǒng)程序研制一種高級程序語言。1963年,參照ALGOL60語言,增添了能描述計算機(jī)硬件特性的能力,稱為CPL語言。1967年,作進(jìn)一步的簡化,改稱BCPL語言。1970年,再進(jìn)一步簡化,并突出了硬件處理能力,稱為B語言,并用于編寫UNIX操作系統(tǒng)。1972年,進(jìn)一步擴(kuò)充數(shù)據(jù)類型和恢復(fù)通用性,稱為C語言,并用C語言重寫了UNIX操作系統(tǒng)。以后 C語言開始流行,為統(tǒng)一版本,ANSI于 1987年制定了 C語言的標(biāo)準(zhǔn),稱為 ANSIC. 2.C語言的特點 C語言主要有以下特點: �。�1)與其它高級語言比較,更接近硬件,與機(jī)器語言比較,又更接近算法。C程序易編寫、易讀、易查錯和易修改。 �。�2)數(shù)據(jù)類型與運算符豐富,描述算法更簡單方便。 �。�3)C程序的結(jié)構(gòu)簡單,語言包含的語句類別少。 �。�4)是一種結(jié)構(gòu)化語言,提供完善的結(jié)構(gòu)化程序控制結(jié)構(gòu),適宜采用結(jié)構(gòu)化程序設(shè)計方法開發(fā)程序。 (5)也是一種模塊化程序設(shè)計語言,適宜大型程序的研制和開發(fā)。 (6)通常C系統(tǒng)都提供大量的庫函數(shù)供程序開發(fā)人員選用,能簡化程序開發(fā)。 3.C程序的基本結(jié)構(gòu) 通常一個C程序包括一個或多個函數(shù),其中必有一個main函數(shù),稱為主函數(shù)。C函數(shù)的定義主要分兩部分:函數(shù)說明部分和函數(shù)體。其中函數(shù)體由C語言的語句序列組成,實現(xiàn)函數(shù)的功能。C程序總是從主函數(shù)開始執(zhí)行。 4.C語言的基本語句 C語言的語句主要分以下幾種: �。╨)數(shù)據(jù)定義語句——用來定義程序中使用的各種數(shù)據(jù),及能存放數(shù)據(jù)的對象的名稱和特性。 (2)表達(dá)式語句——任何在有意義的表達(dá)式之后接上分號(;)構(gòu)成的語句。最常見的有賦值表達(dá)式和函數(shù)調(diào)用表達(dá)式后加分號構(gòu)成的表達(dá)式語句,分別稱為賦值語句和函數(shù)調(diào)用語句。 �。�3)流程控制語句——用來控制程序執(zhí)行過程的語句。它們有選擇控制語句、循環(huán)控制語句、break語句。continue語句、return語句和goto語句等。 (4)復(fù)合語句——用花括號括住一個語句序列,即構(gòu)成復(fù)合語句。復(fù)合語句用來表示其中的語句序列是一個整體,在邏輯上是單個語句,并且強(qiáng)調(diào)其中的語句按順序逐一執(zhí)行。 �。�5)空語句——只有單個分號(;)構(gòu)成的語句�?照Z句表示沒有任何操作,用于選擇控制或循環(huán)控制沒有特別被控制的成分語句,或在復(fù)合語句的末尾放置語句標(biāo)號等。 �。�6)其它語句——如類型定義語句等 5.注釋 為了便于閱讀和理解程序,可以在程序的任何地方插入注釋,以說明程序、函數(shù)、程序段。語句的功能或采用的算法。C語言的注釋是用/*“和”*/“括住的任意字符列。程序編譯時,注釋不參與編譯,也不會出現(xiàn)在目標(biāo)程序中。 6.C語言的字符集 C語言的基本字符集有: �。╨)數(shù)字10個(0~9)。 �。�2)英文字母大、小寫各26個(A~Z,a~z)。 �。�3)鍵盤符號33個,用于構(gòu)成特殊符號,其中下線字符“起一個英文字母的作用,以構(gòu)成標(biāo)識符等語法成分。 �。�4)轉(zhuǎn)義字符,轉(zhuǎn)義字符是由字符(\)開始后跟單個字符或若干字符組成,通常用于表示控制代碼或特殊符號。 7.C程序的基本詞匯 C語言的基本詞匯有: �。�1)字面形式常量。如 100、15.0、‘A’、“ABC”。 �。�2)特殊符號。主要是運算符。 (3)保留字。在程序或語句中是用來表示特定語法含義的英文單詞。 (4)標(biāo)識符。用于命名程序?qū)ο螅缱兞�、常量、函�?shù)、標(biāo)號等。在C語言中,一個合理的標(biāo)識符由英文字母或下線符開頭,后跟或不跟由字母、下線符、數(shù)字符組成的字符列�!阋韵戮符開頭的標(biāo)識符作為系統(tǒng)內(nèi)部使用。 利用基本詞匯,按照給定的C語言的句法規(guī)則就可命名程序?qū)ο螅枋霰磉_(dá)式計算、構(gòu)造語句、函數(shù),直至整個程序。 |
熱門資料下載: |
< |
自考最新熱貼: |
【責(zé)任編輯:育路編輯 糾錯】 |
|
閱讀上一篇:09年自考“高級語言程序設(shè)計”串講 |
|
閱讀下一篇:高級語言程序設(shè)計知識點總結(jié)三 |
【育路網(wǎng)版權(quán)與免責(zé)聲明】 | |
① 凡本網(wǎng)注明稿件來源為"原創(chuàng)"的所有文字、圖片和音視頻稿件,版權(quán)均屬本網(wǎng)所有。任何媒體、網(wǎng)站或個人轉(zhuǎn)載、鏈接、轉(zhuǎn)貼或以其他方式復(fù)制發(fā)表時必須注明"稿件來源:育路網(wǎng)",違者本網(wǎng)將依法追究責(zé)任; | |
② 本網(wǎng)部分稿件來源于網(wǎng)絡(luò),任何單位或個人認(rèn)為育路網(wǎng)發(fā)布的內(nèi)容可能涉嫌侵犯其合法權(quán)益,應(yīng)該及時向育路網(wǎng)書面反饋,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)情況證明,育路網(wǎng)在收到上述法律文件后,將會盡快移除被控侵權(quán)內(nèi)容。 |
熱點專題 |
·重慶:2011年自考各專業(yè)課程考試安排表 |
·浙江:7月7.41萬人參加自學(xué)考試 |
·廣州:2010年10月自考報名通知 |
·同濟(jì)大學(xué):2010年上半年自考畢業(yè)證發(fā)放 |
·陜西:2011年自學(xué)考試共開考96個專業(yè) |
·山東:64所院校將進(jìn)行自考實踐課程試點 |
·萬州區(qū):2010年10月自考報名時間通知 |
·北京:2010年建成自考標(biāo)準(zhǔn)化考點試點 |
·江蘇(南京)2010年7月自考成績查詢 |
·湖北:2010年7月自考成績查詢 |
誠聘英才 | 廣告招商 | 關(guān)于網(wǎng)站 | 聯(lián)系我們 | 地方加盟 | 商務(wù)合作 | 投訴建議 | 老師加盟 | 客服中心 | 網(wǎng)站地圖 | 學(xué)校中心 |
學(xué)員報名服務(wù)中心: 北京北三環(huán)西路32號恒潤中心18層1803室(交通位置圖) |
咨詢電話:北京- 010-51268840/41 傳真:010-51418040 上海- 021-51567016/17 |
本站法律顧問:邱清榮律師 |
1999-2010 育路教育版權(quán)所有| 京ICP證100429號 |