C大學基礎教程第1章課件_第1頁
C大學基礎教程第1章課件_第2頁
C大學基礎教程第1章課件_第3頁
C大學基礎教程第1章課件_第4頁
C大學基礎教程第1章課件_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心1C++大學基礎教程第1章C++初步

北京郵電大學信通院 網(wǎng)絡搜索中心2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-2-自我介紹2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-3-什么是程序設計?用計算機識別的語言對一個問題求解的過程。語法、關鍵字、邏輯2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-4-如何學習程序設計?

學英語:

LettersWordsSentencesParagraphsarticles(ListenandTalk)

程序設計VariablesStatementsFunctionsClassprogramslogicGrammerlogicGrammerstructurestructure2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-5-第一章C++入門1.1程序設計語言的發(fā)展1.2面向過程的程序設計1.3面向?qū)ο蟮某绦蛟O計1.4C++的誕生1.5程序開發(fā)過程1.6簡單的C++程序2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-8-1.1程序設計語言的發(fā)展高級編程語言:1、面向過程的語言procedure

BASIC、PASCAL、C

2、面向?qū)ο蟮恼Z言Object

C++、JAVA、C#*腳本語言:

Python、JavaScript、ASP、PHP、Perl等

2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-9-1.1程序設計語言的發(fā)展例如:要向屏幕打印一個“A”字符

1、BASIC語言:PRINT“A”2、PASCAL語言:writeln(‘A’);3、C語言: printf(“A”);4、C++語言:cout<<“A”;5、JAVA語言:System.out.print("A");2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心10編程邏輯==編程思想大致可分為兩類

——面向過程?

——面向?qū)ο??解決問題的思路和方法。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-11-1.2面向過程的程序設計

2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-12-1.2面向過程的程序設計解決一般小規(guī)模的問題的思路(10萬行以內(nèi))

例1:5+3-4+6=?例2:兩個數(shù)字x、y中找出最大的一個?例3:1+2+3+…+n=?方法:順序、選擇、循環(huán)2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-13-1.2面向過程的程序設計模塊

就是解決一個部分問題的方法。多個模塊組合在一起,用來解決一個完整的問題。

例1:三個數(shù)字x、y、z中找出最大的一個?

例2:求sinx+cosx的導數(shù)2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-14-1.2面向過程的程序設計主要思想自頂向下、逐步求精

一個計算機程序可以看成是由一系列任務組成的,任何一項任務如果過于復雜就將其分解成一系列較小的子任務,直至每一項任務都很小,很容易解決。

例如:攢機的過程2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-15-1.2面向過程的程序設計不足:

1、結(jié)構化編程將數(shù)據(jù)和過程相分離;2、結(jié)構化編程對代碼重用支持不夠??芍赜盟枷刖褪莿?chuàng)建一些已知屬性的組件,然后插入到自己的程序中。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-16-1.3面向?qū)ο蟮某绦蛟O計

2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-17-1.3面向?qū)ο蟮某绦蛟O計面向?qū)ο蟮某绦蛟O計將數(shù)據(jù)和處理數(shù)據(jù)的過程當成一個整體——對象。例如:購買一臺筆記本2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-18-1.3面向?qū)ο蟮某绦蛟O計1)封裝

由對象的概念支持。只需知道外部接口,不需知道內(nèi)部實現(xiàn),就可以使用的特性。2)繼承由類的概念支持。利用已有的成果進行擴展,充分體現(xiàn)了代碼重用。

3)多態(tài)

相同的代碼,運行時表現(xiàn)不同。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-19-1.4C++的誕生

2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-20-1.4C++的誕生

C++語言從C語言的基礎上發(fā)展起來的C語言歷史:1、貝爾實驗室的DennisRitchie開發(fā)2、在B語言的基礎3、作為Unix操作系統(tǒng)的開發(fā)語言

優(yōu)點:1、與硬件無關2、設計嚴謹2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-21-1.4C++的誕生C語言之父dennisRitchieTheCProgrammingLanguage2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-22-1.4C++的誕生C語言是一門面向過程的程序語言優(yōu)點:1、可直接訪問內(nèi)存2、程序運行效率高3、可移植性好缺點:1、類型檢查機制較弱2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-23-1.4C++的誕生2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-24-1.4C++的誕生

C++之父BjarnestroustrupTheC++ProgrammingLanguage2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-25-1.4C++的誕生

C++語言是從C語言發(fā)展演變而來。C++包含了整個C,C是建立C++的基礎。C++包含C的所有特征、屬性、優(yōu)缺點,并添加了面向?qū)ο蟮闹С?。C++語言C語言面向?qū)ο?024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-26-1.5程序開發(fā)過程2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-27-1.5程序開發(fā)過程源程序:.cpp

目標程序:.obj

可執(zhí)行程序:.exe機器識別的二進制代碼2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-28-1.5程序開發(fā)過程翻譯程序:將源代碼

目標程序匯編程序:將匯編語言轉(zhuǎn)化成二進制代碼編譯程序:將源代碼轉(zhuǎn)發(fā)成二進制代碼,全部翻譯后,再執(zhí)行解釋程序:將源代碼轉(zhuǎn)發(fā)成二進制代碼,翻譯一句,執(zhí)行一句。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-29-1.5程序開發(fā)過程鏈接程序?qū)⒛繕顺绦?/p>

可執(zhí)行程序具體:將多個目標文件和需要的系統(tǒng)資源,鏈接成一個文件。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-30-1.6簡單的C++程序2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-31-1.6簡單的C++程序集成環(huán)境

VC++6.0VS2003

VisualStudio2005VS2008VS2010VS20122024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-32-1.6簡單的C++程序操作步驟1、新建一個工程

1)啟動VS20052)新建一個console工程3)編寫源程序2、編譯和連接

編譯:compile(Ctrl+F7)

鏈接:Build(F7)3、運行使用的命令:Ctrl+F52024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-33-1.6簡單的C++程序/***************************************程序文件:ch1_1.cpp程序功能:在屏幕上輸出helloworld!作者:XXX創(chuàng)建時間:XX年XX月XX日***************************************/

#include

<iostream>

usingnamespace

std;

void

main(){cout<<"WelcometoBupt!"<<endl;}注釋編譯預處理程序主體2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-34-1.6簡單的C++程序

“注釋”是程序員為讀者作的說明,用來提高程序的可讀性,C++程序在編譯過程中忽略注釋。

1、“//”

用來注釋一行說明,在“//”之后的文字直到換行都為注釋。一般用來對于程序中難懂的代碼進行說明。2、

“/*”和“*/”用來注釋一段說明,在“/*”和“*/”之間的部分,不管多長都為注釋。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-35-1.6簡單的C++程序/***************************************程序文件:ch1_1.cpp程序功能:在屏幕上輸出helloworld!作者:XXX創(chuàng)建時間:XX年XX月XX日***************************************/

#include

<iostream>

usingnamespace

std;

void

main(){cout<<"WelcometoBupt!“<<endl;}注釋編譯預處理程序主體2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-36-1.6簡單的C++程序

所有以“#”開頭的代碼,稱為編譯預處理。

#include<iostream>每次啟動編譯器時,先運行預處理器,預處理器找到所有以“#”開頭的代碼行進行處理。include是一條預處理指令,意思是“后面跟的是一個文件名,請找到該文件并將其加入?!眎ostream是系統(tǒng)定義的一個“頭文件”,它設置了C++的I/O相關環(huán)境,并定義了輸入輸出流對象cout和cin等。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-37-1.6簡單的C++程序

usingnamespacestd;1998年批準的標準C++使用namespace命名空間標準。iostream是一個標準函數(shù)庫,cout是標準庫函數(shù)提供的一個對象,標準庫函數(shù)在namespace說明書中被指定為“std”。因此這句代碼的意思是使用標準命名空間std中的函數(shù)。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-38-1.6簡單的C++程序/***************************************程序文件:ch1_1.cpp程序功能:在屏幕上輸出helloworld!作者:XXX創(chuàng)建時間:XX年XX月XX日***************************************/

#include

<iostream>

usingnamespace

std;

void

main(){cout<<"WelcometoBupt!“<<endl;

//std::cout<<<<"WelcometoBupt!“<<std::endl;}注釋編譯預處理程序主體2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-39-1.6簡單的C++程序

正式的程序從代碼“voidmain()”開始,它包含一個名為main()的函數(shù),也稱為主函數(shù)。每個C++程序有且僅有一個main()函數(shù),程序在開始運行時會自動調(diào)用main()函數(shù)。

main()前面的void表示函數(shù)的返回值的類型,意味著程序執(zhí)行結(jié)束后無需向操作系統(tǒng)返回。函數(shù):是指能實現(xiàn)一個或多個功能的代碼塊。2024/4/29北京郵電大學信通院網(wǎng)絡搜索中心-40-1.6簡單的C++程序

所有的函數(shù)都以左大括號{開始,右大括號}結(jié)束,在大括號{}之間的部分稱為函數(shù)體。

cout<<”HelloWorld!”<<endl; 1

溫馨提示

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

評論

0/150

提交評論