版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
C++語言程序設(shè)計教程1教材、參考書C++語言程序設(shè)計教程前言教材C++語言程序設(shè)計教程
楊進才沈顯君劉蓉編著清華大學(xué)出版社參考書C++面向?qū)ο蟪绦蛟O(shè)計陳維興編著中國鐵道出版社C++Primer(3RD)中文版.StanleyB.Lippman,JoseeLajoie著.潘愛民,張麗譯.北京:中國電力出版社C++程序設(shè)計教程(第4版).H.M.Deitel,P.J.Deitel著.施平安譯.北京:清華大學(xué)出版社
2第1章C++編程簡介C++語言程序設(shè)計教程第1章C++編程簡介3C++語言程序設(shè)計教程第1章C++編程簡介第1章C++編程簡介學(xué)習(xí)目標
了解面向過程的結(jié)構(gòu)化程序設(shè)計語言及面向?qū)ο蟪绦蛟O(shè)計語言的特點;了解面向?qū)ο蟪绦蛟O(shè)計語言中的基本概念;了解不同類型的編程語言;熟悉程序的開發(fā)過程;了解程序的結(jié)構(gòu),理解源程序、頭文件、可執(zhí)行程序的概念;理解名字空間的概念,會運用名字空間;能夠編寫一個簡單的程序,輸入數(shù)據(jù),輸出結(jié)果.4C++語言程序設(shè)計教程第1章C++編程簡介1.1計算機程序設(shè)計語言機器語言匯編語言高級語言面向過程面向?qū)ο驝PU指令系統(tǒng),由0、1序列構(gòu)成的指令碼組成如:10000000加
10010000減用助記符號描述的指令系統(tǒng)如ADDAX,BX面向機器的語言程序設(shè)計依賴解決問題的過程客觀事物描述成具有屬性和行為的對象;同一類對象的共同屬性和行為形成類;封裝對象間通過發(fā)送和接受消息發(fā)生聯(lián)系;類的繼承與多態(tài)性可以提供使用現(xiàn)成類的機制,從而實現(xiàn)代碼的重用.
程序設(shè)計關(guān)鍵是定義類,并由類實例化成對象接近人的自然語言習(xí)慣,如:100+200
5面向?qū)ο蠹夹g(shù)面向?qū)ο螅菏且环N新的軟件工程方法,新的設(shè)計范型(paradigm),其基本技術(shù)是使用對象、類、繼承、封裝、消息等基本概念進行程序設(shè)計和實現(xiàn)。面向?qū)ο蠹夹g(shù)的基本思想:盡可能的運用人類的自然思維方式來構(gòu)造軟件系統(tǒng)?,F(xiàn)實世界的問題是由客觀實體和實體之間的聯(lián)系構(gòu)成的,類就是客觀實體的抽象。6C++語言程序設(shè)計教程第1章C++編程簡介面向?qū)ο蟮幕靖拍?/p>
對象是用來描述客觀事物的一個實體張三李四抽象類是具有相同屬性和服務(wù)的一組對象的概括屬性服務(wù)性別,年齡…說話,行走…具體化繼承新類人說話,行走…性別,年齡…大學(xué)生性別,年齡,專業(yè)…說話,行走,學(xué)習(xí)…消息7面向?qū)ο蠹夹g(shù)的基本觀點客觀世界是由對象組成的。具有相同的數(shù)據(jù)和相同的操作的對象可以歸并為一個類,對象是對象類(類)的一個實例。從一個類中可以產(chǎn)生很多個對象。類可以派生出子類,子類繼承父類的全部特性(數(shù)據(jù)和操作),又可以有自己的新特性。子類和父類形成類的層次結(jié)構(gòu)。對象之間通過消息相互聯(lián)系。類具有封裝性,它的操作和數(shù)據(jù)等對于外界是不可見的,外界只能通過消息請求進行某種操作,提供所需要的服務(wù)。面向?qū)ο?對象+類+繼承+通信8C++語言程序設(shè)計教程第1章C++編程簡介1.2C++語言概述
全面支持C
C++語言的產(chǎn)生
1983加入類CC++ANSIC++1994標準化C++語言的特點
面向?qū)ο蟊菴更完善、安全、高效
9C++語言程序設(shè)計教程第1章C++編程簡介1.3C++程序開發(fā)過程
程序代碼的錄入、修改執(zhí)行預(yù)處理指令,詞法分析、語法分析后生成目標程序與其它目標程序或庫連接,生成可執(zhí)行程序10C++語言程序設(shè)計教程第1章C++編程簡介1.4C++程序?qū)嵗?/p>
/*************************************************程序文件名:p1_1.cpp**本程序顯示:HelloC++!**設(shè)計者:ziyu
時間:8-8-2011************************************************/#include<iostream>//載入頭文件usingnamespacestd;//使用命名空間stdvoidmain()//程序入口{cout<<"HelloC++!"<<endl;}
預(yù)處理命令無返回值無參數(shù)、無返回值的主函數(shù)主函數(shù)名函數(shù)開始函數(shù)體語句結(jié)束標志函數(shù)結(jié)束
運行結(jié)果:HelloC++!注釋塊注釋行一個簡單的C++程序
在C++程序中,注釋塊由“/*”開始,由“*/”結(jié)束,可以實現(xiàn)多行注釋。也可使用“//”進行單行注釋。C++語言的預(yù)處理命令都是以“#”號開頭。iostream是一個頭文件,系統(tǒng)頭文件不帶.h后綴
cout為標準輸出流對象,它與顯示器相連。<<是插入操作符,endl為換行符號。整個語句的功能是將”HelloC++!”字符串與endl依次插入到cout中
main是主函數(shù)名,一個C++語言程序有且僅有一個main函數(shù)。C++程序執(zhí)行時就是從main函數(shù)開始.C++語言規(guī)定:語句以分號結(jié)束
11C++語言程序設(shè)計教程第1章C++編程簡介使用名字空間
?為什么:
標準C++庫提供的對象等都放在標準名字空間std中,要使用它們,必須要聲明使用標準名字空間std.使用標準名字空間std有3種方式:整體聲明
usingnamespacestd;使用時單個對象臨時聲明
std::cout<<"HelloC++"<<std::endl;單個對象使用前聲明
usingstd::cout;整體聲明#include<iostream>usingnamespacestd;voidmain(){cout<<"HelloC++!"<<endl;}單個對象臨時聲明#include<iostream>voidmain()
{std::cout<<”HelloC++!”<<std::endl;}單個對象使用前聲明#include<iostream>usingstd::cout;usingstd::endl;voidmain(){cout<<”HelloC++!”<<endl;}使用名字空間一個軟件往往由很多個模塊(組件)組成,這些模塊分別來自不同的開發(fā)商或者由不同的程序員編寫,在編寫過程中可能使用了同名的標識符,如果在同一個程序中使用了這些模塊,會引發(fā)沖突,為了避免這個問題,引入了名字空間.12C++語言程序設(shè)計教程第1章C++編程簡介
cin>>對象1>>對象2>>...>>對象n;
cout<<對象1<<對象2<<...<<對象n;C++中使用對象cin作為標準輸入流對象,通常代表鍵盤,cin與提取操作符>>連用,使用格式為:意思是從標準輸入流對象鍵盤上提取n個數(shù)據(jù)分別給對象1、對象2、...、對象n。C++中使用對象cout作為標準輸出流對象,通常代表顯示設(shè)備,cout與插入操作符<<連用,使用格式為:意思是依次從將對象1、對象2、...、對象n插入到標準輸出流對象中,從而實現(xiàn)了對象在顯示器上的輸出.C++輸入/輸出簡介13C++語言程序設(shè)計教程第1章C++編程簡介輸入輸出舉例12345678910111213141516/*************************************************程序文件名:p1_2.cpp**功能:求三個數(shù)的平均值,演示C++的簡單I/O**設(shè)計者:author**時間:8-8-2011**************************************************/#include<iostream>usingnamespacestd;voidmain()
{ floatnum1,num2,num3;//定義三個數(shù)
cout<<"Pleaseinputthreenumbers:"; cin>>num1>>num2>>num3; cout<<"Theaverageof"<<num1<<","<<num2<<"and"<<num3; cout<<"is:"<<(num1+num2+num3)/3<<endl;}運行結(jié)果Pleaseinputthreenumbers:101201300↙
Theaverageof101,201and300is:200.667
14C++語言程序設(shè)計教程第1章C++編程簡介常用的操縱符
操縱符作用說明oct數(shù)據(jù)以8進制形式輸出
作用范圍為后續(xù)輸出的整數(shù)對象,小數(shù)不起作用。dec數(shù)據(jù)以10進制形式輸出(默認)hex數(shù)據(jù)以16進制形式輸出endl換行并刷新輸出流setw(n)設(shè)置輸出寬度需包括頭文件iomanip,僅對后一個對象起作用setprecision(n)設(shè)置輸出小數(shù)位數(shù)(默認為6)需包括頭文件iomanip,作用范圍為后續(xù)對象注意:在使用setw(n)與setprecision(n)時,還需要包含輸入/輸出操縱符頭文件iomanip,iomanip意為inputandoutputmanipulate(操縱).setprecision(n)僅對帶有小數(shù)的數(shù)有效,n為整數(shù)與小數(shù)但不包括小數(shù)點的位數(shù)。15C++語言程序設(shè)計教程第1章C++編程簡介常用的操縱符使用舉例
12345678910111213141516/*****************************************************程序文件名:p1_3.cpp**功能:求三個數(shù)的平均值,演示C++簡單I/O格式控制******************************************************/#include<iostream>#include<iomanip>usingnamespacestd;voidmain(){ floatnum1,num2,num3;//定義三個數(shù)
cout<<"Pleaseinputthreenumbers:"; cin>>num1>>num2>>num3;cout<<setw(8)<<setprecision(12); cout<<"Theaverageof"<<num1<<","<<num2<<"and"<<num3; cout<<"is:"<<set
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園小班幼兒社會教學(xué)設(shè)計:《勤勞的小螞蟻》
- 科學(xué)探究之旅:發(fā)現(xiàn)串、并聯(lián)電路中的電壓規(guī)律-九年級物理教學(xué)設(shè)計
- 二手車交易合作協(xié)議范本
- 有償家教需求及滿意度調(diào)查問卷
- 土方工程安全技術(shù)規(guī)范及交底范例
- 物流運輸成本控制策略分析
- 初中語文古詩文背誦與測試題集
- 描寫春天的名詩精講與賞析
- 四年級語文下冊期末考試試卷匯編2024
- 教職工職業(yè)發(fā)展心得及體會
- 事業(yè)單位市場監(jiān)督管理局面試真題及答案
- 巷道工程清包工合同范本
- 人工智能倫理規(guī)范
- 廣西鹿寨萬強化肥有限責(zé)任公司技改擴能10萬噸-年復(fù)混肥建設(shè)項目環(huán)評報告
- (2025年標準)彩禮收條協(xié)議書
- 校園禁毒管理辦法
- 飼料供應(yīng)循環(huán)管理辦法
- 保險公司安責(zé)險
- 水泥穩(wěn)定碎石配合比驗證
- 尿路感染教學(xué)查房
- 2025年廣東省高考語文試卷(含標準答案)
評論
0/150
提交評論