c語(yǔ)言教程第一章.ppt_第1頁(yè)
c語(yǔ)言教程第一章.ppt_第2頁(yè)
c語(yǔ)言教程第一章.ppt_第3頁(yè)
c語(yǔ)言教程第一章.ppt_第4頁(yè)
c語(yǔ)言教程第一章.ppt_第5頁(yè)
已閱讀5頁(yè),還剩43頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

C 程序設(shè)計(jì) (第三版),新世紀(jì)計(jì)算機(jī)基礎(chǔ)教育叢書 主編 譚浩強(qiáng),山東大學(xué)CAD省重點(diǎn)實(shí)驗(yàn)室 劉剛,總 目 錄,第1章 C語(yǔ)言概述 第2章 程序的靈魂算法 第3章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式 第4章 最簡(jiǎn)單的C程序設(shè)計(jì)順序程序設(shè)計(jì) 第5章 選擇結(jié)構(gòu)程序設(shè)計(jì) 第6章 循環(huán)控制 第7章 數(shù)組 第8章 函數(shù),第9章 預(yù)處理命令 第10章 指針 第11章 結(jié)構(gòu)體與共用體 第12章 位運(yùn)算 第13章 文件 第14章 常見(jiàn)錯(cuò)誤和程序調(diào)試,第一章,C語(yǔ)言概述,本章要點(diǎn),C語(yǔ)言的特點(diǎn) C程序的結(jié)構(gòu) 在計(jì)算機(jī)上運(yùn)行C程序的方法,第1章 C語(yǔ)言概述,1.1 C語(yǔ)言出現(xiàn)的歷史背景 1.2 C語(yǔ)言的特點(diǎn) 1.3 簡(jiǎn)單的C程序介紹 1.4 C程序的上機(jī)步驟 1.5 習(xí)題,1.1 C語(yǔ)言出現(xiàn)的歷史背景,機(jī)器語(yǔ)言,匯編語(yǔ)言,高級(jí)語(yǔ)言,面向過(guò)程,面向?qū)ο?C語(yǔ)言是國(guó)際上廣泛流行的計(jì)算機(jī)高級(jí)語(yǔ)言,既可用來(lái)寫系統(tǒng)軟件,也可用來(lái)寫應(yīng)用軟件。 C語(yǔ)言是在B語(yǔ)言的基礎(chǔ)上發(fā)展起來(lái)的,它的根源可以追溯到ALGOL 60。 1960年出現(xiàn)的ALGOL 60 1963年英國(guó)的劍橋大學(xué)推出了CPL (combined programming language)語(yǔ)言。 1967年英國(guó)劍橋大學(xué)的推出了BCPL (basic combined programming language) 語(yǔ)言。 1970年美國(guó)貝爾實(shí)驗(yàn)室的設(shè)計(jì)出了很簡(jiǎn)單的而且很接近硬件的B語(yǔ)言 (取BCPL的第一個(gè)字母), 并用B語(yǔ)言寫了第一個(gè)UNIX操作系統(tǒng),在PDP7上實(shí)現(xiàn)。,1972年至1973年間,貝爾實(shí)驗(yàn)室的D.M.Ritchie 在B語(yǔ)言的基礎(chǔ)上設(shè)計(jì)出了C語(yǔ)言(取BCPL的第二個(gè)字母)。C語(yǔ)言既保持了BCPL和B語(yǔ)言的優(yōu)點(diǎn)(精練,接近硬件),又克服了它們的缺點(diǎn)(過(guò)于簡(jiǎn)單,數(shù)據(jù)無(wú)類型等)。 1973年,K.Thompson和D.M.Ritchie兩人合作把UNIX的90%以上用C改寫,即UNIX第5版。原來(lái)的UNIX 操作系統(tǒng)是1969年由美國(guó)的貝爾實(shí)驗(yàn)室的K.Thompson和D.M.Ritchie開(kāi)發(fā)成功的,是用匯編語(yǔ)言寫的。,Brian W.Kernighan和Dennis M.Ritchie (合稱K&R)合著了影響深遠(yuǎn)的名著The C Programming Language,這本書中介紹的C語(yǔ)言成為后來(lái)廣泛使用的C語(yǔ)言版本的基礎(chǔ),它被稱為標(biāo)準(zhǔn)C。 1983年,美國(guó)國(guó)家標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI)根據(jù)C語(yǔ)言問(wèn)世以來(lái)各種版本對(duì)C的發(fā)展和擴(kuò)充,制定了新的標(biāo)準(zhǔn),稱為ANSI C。 ANSI C比原來(lái)的標(biāo)準(zhǔn)C有了很大的發(fā)展。K & R在1988年修改了他們的經(jīng)典著作The C Programming Language,按照 ANSI C 標(biāo)準(zhǔn)重新寫了該書。 1987年,ANSI又公布了新標(biāo)準(zhǔn)87 ANSI C。,1990年,國(guó)際標(biāo)準(zhǔn)化組織ISO(International Standard Organization) 接受87 ANSI C為ISO C 的標(biāo)準(zhǔn)(ISO 98991990)。目前流行的C編譯系統(tǒng)都是以它為基礎(chǔ)的。 常用的Microsoft C、 Turbo C、 Quick C、BORLAND C等,,說(shuō)明: 不同版本的C編譯系統(tǒng)所實(shí)現(xiàn)的語(yǔ)言功能和語(yǔ)法規(guī)則又略有差別,因此讀者應(yīng)了解所用的C語(yǔ)言編譯系統(tǒng)的特點(diǎn)(可以參閱有關(guān)手冊(cè))。本書的敘述基本上以ANSI C 為基礎(chǔ)。,1.2 C語(yǔ)言的特點(diǎn),(1) 語(yǔ)言簡(jiǎn)潔、緊湊,使用方便、靈活。 C語(yǔ)言一共只有32個(gè)關(guān)鍵字,9種控制語(yǔ)句,程序書寫形式自由,主要用小寫字母表示,壓縮了一切不必要的成分。C與PASCAL語(yǔ)言做一比較。 (2) 運(yùn)算符豐富。 C的運(yùn)算符包含的范圍很廣泛,共有34種運(yùn)算符。 (3) 數(shù)據(jù)結(jié)構(gòu)豐富,具有現(xiàn)代化語(yǔ)言的各種數(shù)據(jù)結(jié)構(gòu)。,(4) 具有結(jié)構(gòu)化的控制語(yǔ)句 (5) 語(yǔ)法限制不太嚴(yán)格,程序設(shè)計(jì)自由度大 (6) C語(yǔ)言能進(jìn)行位(bit)操作,能實(shí)現(xiàn)匯編語(yǔ)言的大部分功能,可以直接對(duì)硬件進(jìn)行操作。 因此C既具有高級(jí)語(yǔ)言的功能,又具有低級(jí)語(yǔ)言的許多功能,可用來(lái)寫系統(tǒng)軟件 (7)生成目標(biāo)代碼質(zhì)量高,程序執(zhí)行效率高 只比匯編語(yǔ)言低10%-20% (8)C語(yǔ)言程序可移植性好(與匯編語(yǔ)言比較),解釋1:C+是由于開(kāi)發(fā)大型應(yīng)用軟件的需要而產(chǎn)生的,并不是所有的人都要去編寫大型軟件; 解釋2:面向?qū)ο蟮幕A(chǔ)是面向過(guò)程。C+是面向?qū)ο蟮恼Z(yǔ)言,C是面向過(guò)程的,學(xué)起來(lái)比C語(yǔ)言困難得多,所以不太適合程序設(shè)計(jì)的初學(xué)者。,問(wèn)題:既然有了面向?qū)ο蟮腃+語(yǔ)言,為什么還要學(xué)習(xí)C語(yǔ)言?,1.3 簡(jiǎn)單的C程序介紹,說(shuō)明: main-主函數(shù)名, void-函數(shù)類型 每個(gè)C程序必須有一個(gè)主函數(shù)main 是函數(shù)開(kāi)始和結(jié)束的標(biāo)志,不可省 每個(gè)C語(yǔ)句以分號(hào)結(jié)束 使用標(biāo)準(zhǔn)庫(kù)函數(shù)時(shí)應(yīng)在程序開(kāi)頭一行寫: #include ,例1.2 main ( )/*求兩數(shù)之和*/ int a,b,sum; /*這是定義變量*/ a=123; b=456; /* 以下3行為C語(yǔ)句 */ sum=a+b; printf (“sum is %d/n“, sum); ,說(shuō)明: 輸出一行信息:sum is 579,說(shuō)明: /*/表示注釋。注釋只是給人看的,對(duì)編譯和運(yùn)行不起作用。所以可以用漢字或英文字符表示,可以出現(xiàn)在一行中的最右側(cè),也可以單獨(dú)成為一行。,例1.3 求2個(gè)數(shù)中較大者。 #include void main( ) /* 主函數(shù)*/ int max(int x,int y); / 對(duì)被調(diào)用函數(shù)max的聲明 */ int a, b, c; /*定義變量a、b、c */ scanf(d,d, /*輸出c的值*/ ,程序運(yùn)行情況如下: 8,5 (輸入8和5賦給a和b) max=8 (輸出c的值),int max(int x, int y) int z; if (xy) z=x; else z=y; return (z); ,max(int x,int y);,說(shuō)明:本程序包括main和被調(diào)用函數(shù)max兩個(gè)函數(shù)。max函數(shù)的作用是將x和y中較大者的值賦給變量z。return語(yǔ)句將z的值返回給主調(diào)函數(shù)main。,例1.4,C程序: (1) C程序是由函數(shù)構(gòu)成的。 這使得程序容易實(shí)現(xiàn)模塊化。 (2) 一個(gè)函數(shù)由兩部分組成: 函數(shù)的首部:例1.3中的max函數(shù)首部 int max(int x,int y ) 函數(shù)體:花括號(hào)內(nèi)的部分。若一個(gè)函數(shù)有多個(gè)花括號(hào),則最外層的一對(duì)花括號(hào)為函數(shù)體的范圍。 函數(shù)體包括兩部分 : 聲明部分:int a,b,c; 可缺省 執(zhí)行部分:由若干個(gè)語(yǔ)句組成??扇笔?注意: 函數(shù)的聲明部分和執(zhí)行部分都可缺省,例如: void dump ( ) 這是一個(gè)空函數(shù),什么也不做,但是合法的函數(shù)。,1.4 C程序的上機(jī)步驟,1-4 運(yùn)行程序的步驟和方法,一、運(yùn)行程序的步驟 上機(jī)輸入與編輯源程序 對(duì)源程序進(jìn)行編譯 與庫(kù)函數(shù)連接 運(yùn)行目標(biāo)程序,1-4 運(yùn)行程序的步驟和方法,二、上機(jī)運(yùn)行程序的方法 目前使用的大多數(shù)C編譯系統(tǒng)都是集成環(huán)境(IDE)的??梢杂貌煌木幾g系統(tǒng)對(duì)C程序進(jìn)行操作 常用的有Turbo C 2.0、Turbo C+ 3.0、Visual C+等 Turbo C+ 3.0:是一個(gè)集成環(huán)境,它具有方便、直觀和易用的界面,雖然它也是DOS環(huán)境下的集成環(huán)境,但是可以把啟動(dòng)Turbo C+ 3.0 集成環(huán)境的DOS執(zhí)行文件tc.exe生成快捷方式,也可以用鼠標(biāo)操作。 Visual C+:也可以用Visual C+對(duì)C程序進(jìn)行編譯。,例:Turbo C+ 3.0的使用 將Turbo C+ 3.0編譯程序裝入磁盤某一目錄下,例如: 放在C盤根目錄下一級(jí)TC3.0子目錄下。 進(jìn)入Turbo C+ 3.0集成環(huán)境 在DOS環(huán)境下 C:TC3.0tc , 在Windows環(huán)境下 找到可執(zhí)行文件tc.exe,執(zhí)行該文件。,主菜單:11個(gè)菜單項(xiàng): File Edit Search Run Compile Debug Project Options Window Help,(2) 編輯源文件 新建:?jiǎn)螕簟癋ile”菜單下 的“New”,修改:選擇“File”“Open”(即單擊“File” 的下拉菜單中的“Open”項(xiàng),修改已有的源程序。 在編輯(EDIT) 狀態(tài)下光標(biāo)表示當(dāng)前進(jìn)行編輯的位置,在此位 置可以進(jìn)行插入、刪除或修改,直到自已滿意為止。,在編輯(EDIT) 狀態(tài)下光標(biāo)表示當(dāng)前進(jìn)行編輯的位置,在此位 置可以進(jìn)行插入、刪除或修改,直到自已滿意為止。,保存:在編輯(EDIT) 狀態(tài)下光標(biāo)表示當(dāng)前進(jìn)行編輯的位置,在此位置可以進(jìn)行插入、刪除或修改,直到自已滿意為止。,(3) 對(duì)源程序進(jìn)行編譯 選擇“Compile”(或“Alt+F9”)對(duì)源程序進(jìn)行編譯。,c1.cpp源程序,出現(xiàn)1個(gè)錯(cuò)誤(error) ,0個(gè)警告(warming)。,(4) 將目標(biāo)程序進(jìn)行連接,選擇菜單“Compile” “Link” ,如果不出現(xiàn)錯(cuò)誤,會(huì)得到一個(gè)后綴為.exe的可執(zhí)行文件。,(5) 執(zhí)行程序。 選菜單“Run” “Run”( 或按“Ctrl+F9” 鍵)。 (6) 退出Turbo C+ 3.0環(huán)境 選擇“File”“Quit” 。,討論,集成開(kāi)發(fā)環(huán)境: 集成學(xué)習(xí)環(huán)境(C語(yǔ)言) ,找破解版,選擇一個(gè)好用的,共享 作業(yè): QQ群? 同學(xué)們自己交流;交作業(yè)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論