01_第01章C語言概述_第1頁
01_第01章C語言概述_第2頁
01_第01章C語言概述_第3頁
01_第01章C語言概述_第4頁
01_第01章C語言概述_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 1.1 C語言概述語言概述 1.2 C語言特點(diǎn)語言特點(diǎn) 1.3 C程序簡介程序簡介 1.4 C語言上機(jī)步驟語言上機(jī)步驟 第一章第一章 C語言概述語言概述 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 熟悉熟悉C程序的組成程序的組成 熟悉熟悉C程序的上機(jī)步驟程序的上機(jī)步驟 第一章第一章 C語言概述語言概述 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第

2、第第第第 一一一一一一 章章章章章章 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 Ada ALGOL60ALGOL68 Pascal Modula-2 CPLBCPL BC C+ Java LISP PROLOG COBOL FORTRAN77 FORTRAN PL/1 Simula 67 BASICANSI-BASICQBASIC VB FORTRAN90 ALGOL 60是是60年代由國際計(jì)算機(jī)委員會(huì)設(shè)計(jì)年代由國際計(jì)算機(jī)委員會(huì)設(shè)計(jì) 的一種面向問題的高級語言。的一種面向問題的高級語言。 特點(diǎn):結(jié)構(gòu)化

3、程序設(shè)計(jì)語言,可讀性好,可移特點(diǎn):結(jié)構(gòu)化程序設(shè)計(jì)語言,可讀性好,可移 植性強(qiáng),但不能直接對硬件進(jìn)行操作。植性強(qiáng),但不能直接對硬件進(jìn)行操作。 1963年,劍橋大學(xué)將年,劍橋大學(xué)將ALGOL 60改為改為CPL 語言語言 (Combined Programming Language) 特點(diǎn):比較接近硬件,但規(guī)模大,難以實(shí)現(xiàn)。特點(diǎn):比較接近硬件,但規(guī)模大,難以實(shí)現(xiàn)。 1967年,劍橋大學(xué)年,劍橋大學(xué)Martin Richards將將 CPL BCPL(Basic CPL) BCPL比比 CPL大為簡化。大為簡化。 特點(diǎn):具有結(jié)構(gòu)化程序設(shè)計(jì)語言優(yōu)點(diǎn),能直特點(diǎn):具有結(jié)構(gòu)化程序設(shè)計(jì)語言優(yōu)點(diǎn),能直 接處理與

4、硬件相關(guān)的數(shù)據(jù),被用作系統(tǒng)程序接處理與硬件相關(guān)的數(shù)據(jù),被用作系統(tǒng)程序 的描述語言。的描述語言。 1970年,貝爾實(shí)驗(yàn)室年,貝爾實(shí)驗(yàn)室 Ken Thompson 將將 BCPL 改為改為B 語言語言。并用并用 B 語言記述和開發(fā)了語言記述和開發(fā)了 第一個(gè)高級語言第一個(gè)高級語言 UNIX 操作系統(tǒng),操作系統(tǒng),在在 DEC 公司公司 的的 PDP7 小型機(jī)上實(shí)現(xiàn)。小型機(jī)上實(shí)現(xiàn)。 1972年,年,Ken Thompson 與與 Densnis M.Ritchic 將將 B 語言改為語言改為C語言語言( 取取BCPL 的第二的第二 個(gè)字母個(gè)字母 )。克服了??朔薆語言過于簡單,數(shù)據(jù)無類型等語言過于簡單

5、,數(shù)據(jù)無類型等 缺點(diǎn)。最初的缺點(diǎn)。最初的C語言只是為描述和實(shí)現(xiàn)語言只是為描述和實(shí)現(xiàn)UNIX 操作操作 系統(tǒng)而設(shè)計(jì),后經(jīng)不斷改進(jìn)成為標(biāo)準(zhǔn)系統(tǒng)而設(shè)計(jì),后經(jīng)不斷改進(jìn)成為標(biāo)準(zhǔn) C。 1983年,美國國家標(biāo)準(zhǔn)化協(xié)會(huì)年,美國國家標(biāo)準(zhǔn)化協(xié)會(huì)制定了制定了ANSI C 。 1987年,該協(xié)會(huì)又公布了新標(biāo)準(zhǔn)即年,該協(xié)會(huì)又公布了新標(biāo)準(zhǔn)即87ANSI C 。 1990年國際標(biāo)準(zhǔn)化組織年國際標(biāo)準(zhǔn)化組織ISO接受接受87 ANSI C為為ISO C的標(biāo)準(zhǔn)的標(biāo)準(zhǔn)( ISO9899 1990) 1.1 C 語言出現(xiàn)的歷史背景語言出現(xiàn)的歷史背景 ALGOL60 CPLBCPL BC 語語語語語語 言言言言言言 程程程程程程 序

6、序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 微機(jī)上使用的有:微機(jī)上使用的有: Turbo C、 MS C、 Quick C ; Turbo C+ 、 Borland C+ ( Builder )、 MS Visual C+ 、 MS C# ( C Sharp ) MS C; Turbo C; Quick C 在語法上兼容,在在語法上兼容,在 庫函數(shù)的種類、命名、使用格式等方面有區(qū)別。采庫函數(shù)的種類、命名、使用格式等方面有區(qū)別。采 用采用用采用面向過程面向過程的編程方法,即按照算法的實(shí)現(xiàn)過的編程方法,即按照算法的實(shí)現(xiàn)過 程逐條編寫,通知計(jì)算機(jī)一步一步該怎樣做

7、。程逐條編寫,通知計(jì)算機(jī)一步一步該怎樣做。 C+ C+ 是標(biāo)準(zhǔn)是標(biāo)準(zhǔn) C C 的超集,采用的超集,采用面向?qū)ο竺嫦驅(qū)ο蟮木幊痰木幊?方法,將數(shù)據(jù)和數(shù)據(jù)操作的方法封裝在對象中,通方法,將數(shù)據(jù)和數(shù)據(jù)操作的方法封裝在對象中,通 過對象表現(xiàn)現(xiàn)實(shí)世界。過對象表現(xiàn)現(xiàn)實(shí)世界。 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 C語言的創(chuàng)始人語言的創(chuàng)始人:Dennis M. Ritchie 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 Ritchie和和T

8、hompson在開發(fā)在開發(fā)UNIX 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 和和Unix的設(shè)計(jì)者的設(shè)計(jì)者Ken Thompson接受接受 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 1.2 C 語言特點(diǎn)語言特點(diǎn) 1C 語言是一種語言是一種編譯型編譯型程序語言,處于匯編語言和程序語言,處于匯編語言和 高級語言之間高級語言之間。 硬件硬件 系統(tǒng)系統(tǒng) 用戶用戶 軟件軟件 匯編匯編 C Basic Fortran COBOLPascal

9、 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 main ( ) int r , h ; float v ; scanf(“%d%d ”, v = 3.14159*r*r*h ; printf(“v =%fn”,v); 2. C C語言簡潔緊奏,書寫格式自由度高。語言簡潔緊奏,書寫格式自由度高。 main ( ) int r , h ; float v ; scanf(“%d %d ”, v = 3.14159 * r * r * h ; printf (“v=%fn”, v ) ; 語語語語語語 言言言言言言 程

10、程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 3. .運(yùn)算符豐富,能實(shí)現(xiàn)其它語言難以實(shí)現(xiàn)的運(yùn)算。運(yùn)算符豐富,能實(shí)現(xiàn)其它語言難以實(shí)現(xiàn)的運(yùn)算。 4. 數(shù)據(jù)結(jié)構(gòu)豐富,能實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)豐富,能實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。 如如: : 鏈表、樹、棧鏈表、樹、棧 等。等。 5. 程序模塊化,是結(jié)構(gòu)化的理想語言。程序模塊化,是結(jié)構(gòu)化的理想語言。 6. 放松了語法限制,程序設(shè)計(jì)自由度高。放松了語法限制,程序設(shè)計(jì)自由度高。 如對數(shù)組的下標(biāo)是否越界不作檢查等。如對數(shù)組的下標(biāo)是否越界不作檢查等。 7. 目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高。目標(biāo)代碼質(zhì)量高,程

11、序執(zhí)行效率高。 8. 可移植性好??梢浦残院谩?9. 圖形功能強(qiáng)。在龐大的圖形庫支持下,可進(jìn)行圖形功能強(qiáng)。在龐大的圖形庫支持下,可進(jìn)行 二維、三維圖形以及動(dòng)畫的設(shè)計(jì),也可以用于二維、三維圖形以及動(dòng)畫的設(shè)計(jì),也可以用于 計(jì)算機(jī)輔助設(shè)計(jì)等。計(jì)算機(jī)輔助設(shè)計(jì)等。 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 1.3 簡單的程序介紹簡單的程序介紹 例例 1.1 main ( ) printf ( “ This is a book. n ” ) ; 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)

12、計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 1.3 簡單的程序介紹簡單的程序介紹 例例 1.2 main ( ) int a, b, sum ; a =123 ; b =456 ; sum = a + b ; printf ( “ sum is %d n”, sum ) ; 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 例例 1.3 int max ( int x , int y ) /* 被調(diào)函數(shù)被調(diào)函數(shù) */ int z ; if ( x y ) z = x ; else z = y ; return (

13、z ) ; main ( ) /* 主函數(shù)主函數(shù) */ int a , b , c ; scanf (“%d ,%d” , c = max (a , b ) ; printf ( “max = %d” , c ) ; 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 C 程序的組成特點(diǎn):程序的組成特點(diǎn): 1. 1. 一個(gè)完整的一個(gè)完整的C C語言程序是由語言程序是由一個(gè)一個(gè)或或多個(gè)多個(gè)具有相具有相 對獨(dú)立功能的程序模塊組合而成,這樣的程序模對獨(dú)立功能的程序模塊組合而成,這樣的程序模 塊叫塊叫函數(shù)函數(shù)。因此,。因此, C

14、 C 程序是由函數(shù)構(gòu)成程序是由函數(shù)構(gòu)成的,的,這一這一 特點(diǎn)使特點(diǎn)使C C 很容易實(shí)現(xiàn)程序的模塊化。很容易實(shí)現(xiàn)程序的模塊化。 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 2. C 的函數(shù)由的函數(shù)由函數(shù)說明部分函數(shù)說明部分 + 函數(shù)體函數(shù)體部分構(gòu)成。部分構(gòu)成。 函數(shù)類型函數(shù)類型 函數(shù)名函數(shù)名 ( ( 參數(shù)及參數(shù)說明參數(shù)及參數(shù)說明 ) ) 數(shù)據(jù)說明部分?jǐn)?shù)據(jù)說明部分 ; ; 執(zhí)行語句部分執(zhí)行語句部分 ; ; C 程序的組成特點(diǎn):程序的組成特點(diǎn): 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)

15、計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 int max ( int x , int y ) int z ; if ( x y ) z = x ; else z = y ; return ( z ) ; 參數(shù)名參數(shù)名 函數(shù)類型函數(shù)類型函數(shù)名函數(shù)名 函數(shù)類型函數(shù)類型 函數(shù)名函數(shù)名 ( ( 參數(shù)及參數(shù)說明參數(shù)及參數(shù)說明 ) ) 數(shù)據(jù)說明部分?jǐn)?shù)據(jù)說明部分 ; ; 執(zhí)行語句部分執(zhí)行語句部分 ; ; 參數(shù)類型參數(shù)類型 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 3. 一個(gè)一個(gè) C 的源程序至少包含一個(gè)的源程序至少

16、包含一個(gè) main ( ) 函數(shù)函數(shù) 或是或是一個(gè)一個(gè) main ( ) 函數(shù)函數(shù)和和其它若干個(gè)函數(shù)其它若干個(gè)函數(shù), 程序程序 總是從總是從 main ( ) 函數(shù)開始執(zhí)行,函數(shù)開始執(zhí)行, 不管不管 main ( ) 函數(shù)的位置如何。函數(shù)的位置如何。 4. 分號分號是是 C 語句的一部分。語句的一部分。 C 程序的組成特點(diǎn):程序的組成特點(diǎn): 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 5. 書寫格式自由,一行可寫一條或多條語句,書寫格式自由,一行可寫一條或多條語句, 且語句中的且語句中的空格空格和和回車回車符均可

17、忽略不計(jì)。符均可忽略不計(jì)。 如如: printf ( “ Hello!n ” ) ; 可寫成可寫成: printf 或或 (“Hello! n ” ); printf( “ Hello!n”); 6. 可以有注釋可以有注釋. 注釋只能包括在注釋只能包括在 /* */之間,之間, 且且 / 和和 * 號之間不容許有空格。號之間不容許有空格。 7. 輸入輸出輸入輸出 “函數(shù)化函數(shù)化”,無輸入輸出語句,輸入,無輸入輸出語句,輸入 輸輸 出均由出均由函數(shù)函數(shù)來完成。來完成。 C 程序的組成特點(diǎn):程序的組成特點(diǎn): 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第

18、第第第 一一一一一一 章章章章章章 1. 操作步驟操作步驟 1.4 C程序的上機(jī)步驟程序的上機(jī)步驟 開始開始 編輯編輯 源程序源程序 f.c 編譯編譯 目標(biāo)程序目標(biāo)程序 f.obj 有錯(cuò)?有錯(cuò)? 連接連接 庫函數(shù)庫函數(shù) 和其它目和其它目 標(biāo)程序標(biāo)程序 可執(zhí)行可執(zhí)行 目標(biāo)程序目標(biāo)程序 f.exe 執(zhí)行執(zhí)行 正確?正確? 不正確不正確 正確正確 結(jié)束結(jié)束 有有無無 語語語語語語 言言言言言言 程程程程程程 序序序序序序 設(shè)設(shè)設(shè)設(shè)設(shè)設(shè) 計(jì)計(jì)計(jì)計(jì)計(jì)計(jì) 第第第第第第 一一一一一一 章章章章章章 2用用Turbo C 運(yùn)行運(yùn)行 C 程序程序 在在MS-DOS提示符下鍵入如下命令:提示符下鍵入如下命令: C: TC ( 啟動(dòng)啟動(dòng)Turbo C系統(tǒng)系統(tǒng) ) 屏幕頂行出現(xiàn)屏幕頂行出現(xiàn)“命令命

溫馨提示

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

最新文檔

評論

0/150

提交評論