C語言程序設(shè)計(jì)_第1頁(yè)
C語言程序設(shè)計(jì)_第2頁(yè)
C語言程序設(shè)計(jì)_第3頁(yè)
C語言程序設(shè)計(jì)_第4頁(yè)
C語言程序設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1C+語言程序設(shè)計(jì)2教學(xué)要求l學(xué)學(xué) 分分: 5 分分l總學(xué)時(shí)總學(xué)時(shí):90l實(shí)實(shí) 驗(yàn)驗(yàn):363C+語言程序設(shè)計(jì)4第 一 章第 一 章 C + +語 言 概 述語 言 概 述學(xué)習(xí)目標(biāo): 了解C+語言的特點(diǎn)及C+簡(jiǎn)單程序的構(gòu)成 掌握C+語言程序的編輯、編譯、鏈接和運(yùn)行的過程 本教材的重點(diǎn)仍然是結(jié)構(gòu)化程序設(shè)計(jì),對(duì)面向?qū)ο蟮某绦蛟O(shè)計(jì),只做初步的介紹。5本章內(nèi)容lC+C+語言的的簡(jiǎn)史與特點(diǎn)語言的的簡(jiǎn)史與特點(diǎn)l一個(gè)簡(jiǎn)單的一個(gè)簡(jiǎn)單的C+C+程序程序l程序的編輯、編譯、鏈接和運(yùn)行程序的編輯、編譯、鏈接和運(yùn)行6 語言的特點(diǎn):1. 具有高級(jí)語言的特點(diǎn),表達(dá)力豐富,可移植性好;2. 具有低級(jí)語言的一些特點(diǎn),能夠很方便

2、地實(shí)現(xiàn)匯編級(jí)的操作,目標(biāo)程序效率較高 C+語言與C比較的特點(diǎn):保留原有精華的基礎(chǔ)上提供全面的面向?qū)ο蟮木幊讨С?,使得程序的結(jié)構(gòu)更加清晰、更容易維護(hù)和擴(kuò)充,同時(shí)又不喪失其高效性2. 對(duì)作了大量的擴(kuò)充3. 最常見的C+集成化編譯系統(tǒng):Microsoft公司的Visual C+ 6.0(VC6.0)Inprise(Borland)公司的C+ Builder4.0(CB4.0)l1.1 C+語言的簡(jiǎn)史與特點(diǎn)7C+C+語言的特點(diǎn)語言的特點(diǎn)C+具有面向?qū)ο蟪绦蛟O(shè)計(jì)語言的特點(diǎn),主要表現(xiàn)在以下幾個(gè)方面:(1)C+支持?jǐn)?shù)據(jù)封裝在C+中,類是支持?jǐn)?shù)據(jù)封裝的工具,對(duì)象則是數(shù)據(jù)封裝的實(shí)現(xiàn)。在面象對(duì)象的程序設(shè)計(jì)中,將數(shù)

3、據(jù)和對(duì)該數(shù)據(jù)進(jìn)行合法操作的函數(shù)封裝在一起,作為一個(gè)類來定義。另個(gè),封裝還提供一種對(duì)數(shù)據(jù)訪問嚴(yán)格控制的機(jī)制。數(shù)據(jù)將被隱藏在封裝體中,該封裝體通過操作接口與外界交換信息。C+中的類是數(shù)據(jù)和操作函數(shù)的封裝體。類=數(shù)據(jù)+操作函數(shù)8(2 2)C+C+類中包含有私有成員、類中包含有私有成員、公有成員和保護(hù)成員公有成員和保護(hù)成員私有成員私有成員:只有在類中說明的函數(shù)才能訪問該類:只有在類中說明的函數(shù)才能訪問該類的成員,稱為私有成員。的成員,稱為私有成員。公有成員公有成員:類外的函數(shù)可以訪問的類內(nèi)成員稱為:類外的函數(shù)可以訪問的類內(nèi)成員稱為公有成員。公有成員成為該類與外部的接口。公有成員。公有成員成為該類與外部

4、的接口。保護(hù)成員保護(hù)成員:這類成員只能被該類的成員函數(shù)和友:這類成員只能被該類的成員函數(shù)和友元函數(shù)以及由該類派生類的成員函數(shù)和友元函元函數(shù)以及由該類派生類的成員函數(shù)和友元函數(shù)所訪問。數(shù)所訪問。9(3)C+3)C+通過函數(shù)調(diào)用來處理對(duì)象通過函數(shù)調(diào)用來處理對(duì)象C+是通過面向?qū)ο蟀l(fā)送消息來處理對(duì)象是通過面向?qū)ο蟀l(fā)送消息來處理對(duì)象的,每個(gè)對(duì)象根據(jù)這所接收到的消息的的,每個(gè)對(duì)象根據(jù)這所接收到的消息的性質(zhì)來決定需要采取的行動(dòng),以響應(yīng)這性質(zhì)來決定需要采取的行動(dòng),以響應(yīng)這個(gè)消息。送到一個(gè)對(duì)象的所有可能的消個(gè)消息。送到一個(gè)對(duì)象的所有可能的消息在對(duì)象的類的描述中都需要定義,即息在對(duì)象的類的描述中都需要定義,即對(duì)每

5、個(gè)可能的消息給出一個(gè)相應(yīng)的方法。對(duì)每個(gè)可能的消息給出一個(gè)相應(yīng)的方法。方法是在類定中使用函數(shù)來定義的,使方法是在類定中使用函數(shù)來定義的,使用一種類似于函數(shù)調(diào)用的機(jī)制,把消息用一種類似于函數(shù)調(diào)用的機(jī)制,把消息發(fā)送到一個(gè)對(duì)象上。發(fā)送到一個(gè)對(duì)象上。10(4 4)C+C+中允許友元破壞封裝性中允許友元破壞封裝性類中的私有成員一般是不允許類外任何函數(shù)訪問的,類中的私有成員一般是不允許類外任何函數(shù)訪問的,但友元可以訪問類的私有成員。友元可以是在類但友元可以訪問類的私有成員。友元可以是在類外定義的函數(shù)(友元函數(shù)),也可以是在類外定外定義的函數(shù)(友元函數(shù)),也可以是在類外定義的整個(gè)類(友元類)。友元打破了類的封

6、裝性,義的整個(gè)類(友元類)。友元打破了類的封裝性,它是它是C+面向?qū)ο蟮挠忠粋€(gè)重要特征。面向?qū)ο蟮挠忠粋€(gè)重要特征。(5 5)C+C+支持繼承性支持繼承性C+中允許單繼承和多繼承。一個(gè)類可以根據(jù)需要中允許單繼承和多繼承。一個(gè)類可以根據(jù)需要生成派生類。派生類繼承了基類的所有方法,另生成派生類。派生類繼承了基類的所有方法,另外派生類自身還可以定義所需要的不包含在父類外派生類自身還可以定義所需要的不包含在父類中的新方法。一個(gè)子類的每個(gè)對(duì)象包含有從父類中的新方法。一個(gè)子類的每個(gè)對(duì)象包含有從父類那里繼承來的數(shù)據(jù)成員以及自己所特有的數(shù)據(jù)成那里繼承來的數(shù)據(jù)成員以及自己所特有的數(shù)據(jù)成員。員。11(6 6)C+C

7、+支持多態(tài)性支持多態(tài)性C+支持多態(tài)性,即以同樣的表示方式,可以處支持多態(tài)性,即以同樣的表示方式,可以處理多種不同類型的數(shù)據(jù)。例如:命名相同的函理多種不同類型的數(shù)據(jù)。例如:命名相同的函數(shù),其實(shí)現(xiàn)的功能卻不同,數(shù),其實(shí)現(xiàn)的功能卻不同,C+會(huì)依據(jù)所給予會(huì)依據(jù)所給予的函數(shù)變?cè)獊磉x擇合適功能的函數(shù)變?cè)獊磉x擇合適功能 的函數(shù)。的函數(shù)。C+的多態(tài)性還有靜態(tài)和動(dòng)態(tài)之分。的多態(tài)性還有靜態(tài)和動(dòng)態(tài)之分。靜態(tài)多態(tài)性是在編譯階段由編譯程序根據(jù)操作數(shù)靜態(tài)多態(tài)性是在編譯階段由編譯程序根據(jù)操作數(shù)從多個(gè)同名函數(shù)中選擇相應(yīng)的調(diào)用;從多個(gè)同名函數(shù)中選擇相應(yīng)的調(diào)用;動(dòng)態(tài)多態(tài)性是在執(zhí)行階段才處理目標(biāo)的實(shí)際差別,動(dòng)態(tài)多態(tài)性是在執(zhí)行階段才

8、處理目標(biāo)的實(shí)際差別,而調(diào)用不同函數(shù)對(duì)不同類執(zhí)行不同的處理方式。而調(diào)用不同函數(shù)對(duì)不同類執(zhí)行不同的處理方式。C+的上述特點(diǎn),有待于隨著教與學(xué)的深入,加的上述特點(diǎn),有待于隨著教與學(xué)的深入,加深理解。深理解。1213(2) 2)基本構(gòu)成基本構(gòu)成預(yù)處理命令預(yù)處理命令主函數(shù)主函數(shù)變量定義語句;變量定義語句;數(shù)據(jù)輸入操作語句;數(shù)據(jù)輸入操作語句;運(yùn)算、處理語句;運(yùn)算、處理語句;函數(shù)調(diào)用語句;函數(shù)調(diào)用語句;數(shù)據(jù)輸出操作語句;數(shù)據(jù)輸出操作語句;函數(shù)定義;函數(shù)定義;一個(gè)一個(gè)C+語言程序基本由以下幾個(gè)部分構(gòu)成:語言程序基本由以下幾個(gè)部分構(gòu)成:主函數(shù)體,函數(shù)整體內(nèi)各語句的語句條數(shù)和執(zhí)行順序由程序設(shè)計(jì)的需要來決定。141

9、51617 注意注意單引號(hào)內(nèi)為一個(gè)空格符,單引號(hào)與雙引號(hào)之間的差別例1.3P5#includevoidhello(char*s)/這是函數(shù)hello的定義coutendl/*從下一行行首開始顯示*/s”,你們好!”;voidmain()hello(“同學(xué)們”);hello(“朋友們”);18程序的注釋形式a / (在行尾注釋,當(dāng)行有效) 形式b /* */ (任何位置,多行有效)函數(shù)的調(diào)用一般格式:函數(shù)名(實(shí)在參數(shù)表)實(shí)在參數(shù)與形式參數(shù)19例1.4P6#include#definePI3.1416doubleArea(doubler)returnPI*r*r;voidmain()doubler

10、adius,area;coutendlradius;area=Area(radius);coutendl”圓的面積:”變量變量其中:cin是一個(gè)連接鍵盤的輸入流對(duì)象, 是與cin相聯(lián)系的輸入操作符例:cinijk; 34 5 8 則i=34 j=5 k=-8211.1 1.3 程序的編輯、編譯、連接和運(yùn)行程序的編輯、編譯、連接和運(yùn)行編輯執(zhí)行連接編譯用字處理程序輸入源程序f.ccpf.objf.exe結(jié)果221. 1.編輯編輯編輯是將編寫好的源程序輸入到計(jì)算機(jī)里,編輯是將編寫好的源程序輸入到計(jì)算機(jī)里,并生成磁盤文件的過程,生成的磁盤文件并生成磁盤文件的過程,生成的磁盤文件的擴(kuò)展名為:的擴(kuò)展名為:CPP2. 2.編譯編譯C+是以編譯方式實(shí)現(xiàn)的高級(jí)語言。是以編譯方式實(shí)現(xiàn)的高級(jí)語言。C+程序的實(shí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論