C++基礎(chǔ)知識(shí)匯總_第1頁(yè)
C++基礎(chǔ)知識(shí)匯總_第2頁(yè)
C++基礎(chǔ)知識(shí)匯總_第3頁(yè)
C++基礎(chǔ)知識(shí)匯總_第4頁(yè)
C++基礎(chǔ)知識(shí)匯總_第5頁(yè)
已閱讀5頁(yè),還剩74頁(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)介

1、信息科學(xué)與工程學(xué)院信息科學(xué)與工程學(xué)院羅羅 芳芳Email:Email:引引 言言什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源什么是計(jì)算機(jī)程序設(shè)計(jì)程序執(zhí)行過(guò)程輸入輸出程序程序是什么?怎程序是什么?怎么設(shè)計(jì)的?么設(shè)計(jì)的?計(jì)算機(jī)程序?qū)嵗绦驅(qū)嵗绦驅(qū)嵗怀绦驅(qū)嵗皇裁词怯?jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源什么是計(jì)算機(jī)程序設(shè)計(jì)存放數(shù)據(jù)(數(shù)據(jù)結(jié)構(gòu))存放數(shù)據(jù)(數(shù)據(jù)結(jié)構(gòu)).內(nèi)存內(nèi)存78a3421操作數(shù)據(jù)(算法)操作數(shù)據(jù)(算法)存放數(shù)據(jù)需要解決的問(wèn)題:存放數(shù)據(jù)需要解決的問(wèn)題:1、內(nèi)存單元如何標(biāo)識(shí)

2、?、內(nèi)存單元如何標(biāo)識(shí)?2、存放單元的大小如何確、存放單元的大小如何確定?定?3、多個(gè)相關(guān)數(shù)據(jù)怎么組織?、多個(gè)相關(guān)數(shù)據(jù)怎么組織?操作數(shù)據(jù)需要解決的問(wèn)題:操作數(shù)據(jù)需要解決的問(wèn)題:1、簡(jiǎn)單的數(shù)據(jù)操作有哪些?、簡(jiǎn)單的數(shù)據(jù)操作有哪些?2、操作的步驟怎么描述?、操作的步驟怎么描述?3、怎樣確立操作步驟?、怎樣確立操作步驟?程序設(shè)計(jì)過(guò)程什么是計(jì)算機(jī)程序設(shè)計(jì)計(jì)算機(jī)程序設(shè)計(jì)就是為計(jì)算機(jī)編制程序的過(guò)程。計(jì)算機(jī)程序設(shè)計(jì)就是為計(jì)算機(jī)編制程序的過(guò)程。1、明確問(wèn)題2、確定數(shù)據(jù)結(jié)構(gòu)和算法3、用某種語(yǔ)言進(jìn)行編程4、測(cè)試與調(diào)試即如何組織數(shù)據(jù)和操作數(shù)據(jù)?組織和操作數(shù)據(jù)的方法不同,就有不同的程序設(shè)計(jì)方法。什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)

3、計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源程序設(shè)計(jì)方法目前,程序設(shè)計(jì)方法有兩種:目前,程序設(shè)計(jì)方法有兩種:1、面向過(guò)程的程序設(shè)計(jì)方法、面向過(guò)程的程序設(shè)計(jì)方法2、面向?qū)ο蟮某绦蛟O(shè)計(jì)方法、面向?qū)ο蟮某绦蛟O(shè)計(jì)方法什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源程序設(shè)計(jì)方法問(wèn)題:組織和處理幾個(gè)數(shù)據(jù)與組織和處理幾千個(gè)數(shù)據(jù)采取的方法是一樣的嗎?程序設(shè)計(jì)方法面向過(guò)程的程序設(shè)計(jì)方法什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源公司負(fù)責(zé)人程序設(shè)計(jì)員以一個(gè)公司的運(yùn)作與管理為例:當(dāng)公司員工只有幾個(gè)人時(shí)以一個(gè)公司的運(yùn)

4、作與管理為例:當(dāng)公司員工只有幾個(gè)人時(shí)數(shù)據(jù)數(shù)據(jù)(員工員工).子程序(公子程序(公司業(yè)務(wù))司業(yè)務(wù))程序設(shè)計(jì)方法數(shù)據(jù)數(shù)據(jù).子程序子程序面向過(guò)程的程序設(shè)計(jì)方法圖1.1 面向過(guò)程設(shè)計(jì)方法示意圖什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源 以功能為中以功能為中心、基于功心、基于功能分解能分解 程序程序 = =數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)+ +算法算法程序設(shè)計(jì)方法面向?qū)ο蟮某绦蛟O(shè)計(jì)方法什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源對(duì)象(部門)對(duì)象(部門)消息(部消息(部門協(xié)作)門協(xié)作)當(dāng)公司員工增加到一定數(shù)量以后程序設(shè)計(jì)方法對(duì)象對(duì)象消息消息面向?qū)ο蟮某绦蛟O(shè)計(jì)方法圖1.2 面向?qū)?/p>

5、象設(shè)計(jì)方法示意圖什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源 以對(duì)象為中心、以對(duì)象為中心、基 于 數(shù) 據(jù) 抽 象基 于 數(shù) 據(jù) 抽 象(把數(shù)據(jù)及其操(把數(shù)據(jù)及其操作作為一個(gè)整體作作為一個(gè)整體構(gòu)成對(duì)象)構(gòu)成對(duì)象) 程序程序 = = 對(duì)象對(duì)象 + + 對(duì)象對(duì)象 + + + + 對(duì)象對(duì)象 對(duì)象對(duì)象 = = 數(shù)據(jù)數(shù)據(jù) + + 操作操作什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源程序設(shè)計(jì)語(yǔ)言程序如何能被計(jì)算機(jī)所接受并執(zhí)行程序如何能被計(jì)算機(jī)所接受并執(zhí)行,需要程序設(shè)計(jì)語(yǔ)言來(lái)描述。,需要程序設(shè)計(jì)語(yǔ)言來(lái)描述。程序設(shè)計(jì)語(yǔ)言的分類程序設(shè)計(jì)語(yǔ)言的分類程序設(shè)計(jì)語(yǔ)言 u低級(jí)語(yǔ)言

6、低級(jí)語(yǔ)言 機(jī)器語(yǔ)言機(jī)器語(yǔ)言匯編語(yǔ)言匯編語(yǔ)言u(píng)高級(jí)語(yǔ)言高級(jí)語(yǔ)言 u 解釋解釋 翻譯翻譯u編譯編譯 詞法分析詞法分析語(yǔ)法分析語(yǔ)法分析代碼優(yōu)化代碼優(yōu)化 代碼生成代碼生成什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源程序設(shè)計(jì)語(yǔ)言語(yǔ)言模型語(yǔ)言模型任何一種程序設(shè)計(jì)語(yǔ)言可用下面的模型描述任何一種程序設(shè)計(jì)語(yǔ)言可用下面的模型描述圖1.3 語(yǔ)言模型什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源程序設(shè)計(jì)語(yǔ)言C+程序設(shè)計(jì)語(yǔ)言 高級(jí)語(yǔ)言高級(jí)語(yǔ)言 面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言B B語(yǔ)言語(yǔ)言C C語(yǔ)言語(yǔ)言C+C+語(yǔ)語(yǔ)言言C#C#語(yǔ)語(yǔ)言言圖1.4 C+語(yǔ)言發(fā)展歷程什么是計(jì)算

7、機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源程序設(shè)計(jì)語(yǔ)言本課程使用的開(kāi)發(fā)環(huán)境是本課程使用的開(kāi)發(fā)環(huán)境是Visual C+6.0。Visual C+是是Microsoft公司開(kāi)發(fā),是基于公司開(kāi)發(fā),是基于 Windows環(huán)境的可視化集成開(kāi)發(fā)環(huán)境。環(huán)境的可視化集成開(kāi)發(fā)環(huán)境。什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源本課程學(xué)習(xí)目標(biāo)1、學(xué)習(xí)、學(xué)習(xí)C+基本詞法、語(yǔ)法規(guī)則以及基本詞法、語(yǔ)法規(guī)則以及不同的程序設(shè)計(jì)方法等知識(shí)。不同的程序設(shè)計(jì)方法等知識(shí)。2、培養(yǎng)知識(shí)運(yùn)用能力;培養(yǎng)讀寫簡(jiǎn)、培養(yǎng)知識(shí)運(yùn)用能力;培養(yǎng)讀寫簡(jiǎn)

8、單程序的能力;培養(yǎng)計(jì)算思維能力。單程序的能力;培養(yǎng)計(jì)算思維能力。什么是計(jì)算機(jī)程序設(shè)計(jì)程序設(shè)計(jì)方法程序設(shè)計(jì)語(yǔ)言本課程學(xué)習(xí)目標(biāo)課外資源課外資源一、參考書籍一、參考書籍1、C + Primer Plus(第第6版版)中文版中文版2、C+程序設(shè)計(jì)(譚浩強(qiáng)編著)程序設(shè)計(jì)(譚浩強(qiáng)編著)二、精品網(wǎng)站二、精品網(wǎng)站1、編程中國(guó):http:/ VC知識(shí)庫(kù): http:/ http:/ http:/ C+基礎(chǔ)知識(shí)基礎(chǔ)知識(shí)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式一個(gè)應(yīng)用程序的開(kāi)發(fā)過(guò)程本章小結(jié)導(dǎo)言本章解決的問(wèn)題:本章解決的問(wèn)題:C+中有哪些字符?有哪些單詞?數(shù)據(jù)存儲(chǔ)單元如何標(biāo)識(shí)?大小如

9、何確定?對(duì)數(shù)據(jù)可執(zhí)行什么樣的操作?C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式一個(gè)應(yīng)用程序的開(kāi)發(fā)過(guò)程本章小結(jié)#include /預(yù)處理命令預(yù)處理命令#define PI 3.14159 /宏定義宏定義float sum(float x); /對(duì)對(duì)sum函數(shù)作聲明函數(shù)作聲明void main() /主函數(shù)首部主函數(shù)首部 float r,s; /定義變量定義變量r,s coutr; /輸入輸入r的值的值 s=sum(r); /調(diào)用調(diào)用sum函數(shù)函數(shù) coutr=r s= sendl; /輸出輸出r,s的值的值 float sum(float x) /定義定義sum函數(shù)

10、函數(shù) return PI*x*x; /返回函數(shù)值返回函數(shù)值 C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.2 C+程序的基本結(jié)構(gòu)引例1.1 鍵盤輸入圓的半徑,求圓的面積.聲明區(qū)函數(shù)區(qū)聲明區(qū):聲明區(qū):(1)包含文件)包含文件(2)宏定義)宏定義(3)函數(shù)聲明)函數(shù)聲明(4)條件編譯)條件編譯(5)全局變量聲明()全局變量聲明(6)結(jié)構(gòu)體)結(jié)構(gòu)體等的定義等的定義(7)類的定義)類的定義程序的注釋可在任何一個(gè)區(qū)內(nèi)插入1.2.1 C+程序結(jié)構(gòu)函數(shù)區(qū):函數(shù)區(qū):(1)由)由1個(gè)主函數(shù)個(gè)主函數(shù)main()和多個(gè)和多個(gè)(或(或0個(gè))其他函數(shù)組成。個(gè))其他函數(shù)組

11、成。(2)每個(gè)函數(shù)都是由函數(shù)聲明)每個(gè)函數(shù)都是由函數(shù)聲明部分與函數(shù)體(函數(shù)的定義)部部分與函數(shù)體(函數(shù)的定義)部分組成。分組成。(3)程序的執(zhí)行從)程序的執(zhí)行從main()函數(shù)函數(shù)開(kāi)始。開(kāi)始。(4)函數(shù)聲明部分包括函數(shù)返)函數(shù)聲明部分包括函數(shù)返回值類型、函數(shù)名、函數(shù)的形式回值類型、函數(shù)名、函數(shù)的形式參數(shù)。參數(shù)。(5)函數(shù)體部分是用一對(duì)花括)函數(shù)體部分是用一對(duì)花括號(hào)號(hào)括起來(lái)的完成該函數(shù)所表達(dá)括起來(lái)的完成該函數(shù)所表達(dá)的功能的語(yǔ)句的集合。的功能的語(yǔ)句的集合。(6)語(yǔ)句可以是數(shù)據(jù)描述語(yǔ)句)語(yǔ)句可以是數(shù)據(jù)描述語(yǔ)句或數(shù)據(jù)操作語(yǔ)句?;驍?shù)據(jù)操作語(yǔ)句。1.2 C+程序的基本結(jié)構(gòu)(1)每行一般書寫一條語(yǔ)句(2)每

12、條語(yǔ)句以“;”分號(hào)結(jié)束(3)使用向右縮進(jìn)方法表達(dá)程序中的層次 結(jié)構(gòu)(4)可使用多行注釋或單行注釋以增 強(qiáng)程序的可讀性1.2.2 程序的書寫格式參見(jiàn)教材P4-5C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程(1)26個(gè)小寫字母:az。(2)26個(gè)大寫字母:AZ。(3)10個(gè)數(shù)字:09。(4)標(biāo)點(diǎn)和特殊字符:(5)空字符1.4 C+的詞法規(guī)則ASCII為為0的字的字符(符(null:即:即空操作字符空操作字符 ),用作字符串,用作字符串的結(jié)束符的結(jié)束符1.4.1 C+的字符集組成參見(jiàn)教材P9-10C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與

13、變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程+ - * / , : ; ? ” | ! # % & ( ) 空格??崭?。1.4 C+的詞法規(guī)則1.4.2 單詞及其構(gòu)詞規(guī)則l用來(lái)命名C+程序中的常量、變量、函 數(shù)、語(yǔ)句標(biāo)號(hào)及類型定義符等。參見(jiàn)教材P101 1、標(biāo)識(shí)符、標(biāo)識(shí)符C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.4 C+的詞法規(guī)則1.4.2 單詞及其構(gòu)詞規(guī)則l關(guān)鍵字(又稱保留字)是被系統(tǒng)定義 了的已具有特定含義的標(biāo)識(shí)符。l系統(tǒng)常見(jiàn)關(guān)鍵字見(jiàn)教材P10單詞由若干合法字符組成,常見(jiàn)單詞有:參見(jiàn)教材P102、關(guān)鍵字、關(guān)鍵字C+程序的基本結(jié)構(gòu)C+的詞

14、法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.4 C+的詞法規(guī)則1.4.2 單詞及其構(gòu)詞規(guī)則l運(yùn)算符與操作數(shù)連接組成表達(dá)式。單目單目運(yùn)算符:連接一個(gè)操作數(shù)的運(yùn)算符;雙目雙目運(yùn)算符:連接兩個(gè)操作數(shù)的運(yùn)算符;三目三目運(yùn)算符:連接三個(gè)操作數(shù)的運(yùn)算符;參見(jiàn)教材P10單詞由若干合法字符組成,常見(jiàn)單詞有:3、運(yùn)算符、運(yùn)算符C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.4 C+的詞法規(guī)則l常量是在程序中不改變的量。C+程序中的常量有:整型常量、浮點(diǎn)型常量、字符常量和字符串常量4種。將在1.6節(jié)中詳細(xì)介紹。參見(jiàn)教材P11單詞由若干合法字

15、符組成,常見(jiàn)單詞有:4、常量、常量1.4.2 單詞及其構(gòu)詞規(guī)則C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.4 C+的詞法規(guī)則l變量是在程序中可以改變的量。某個(gè)變量的值被改變后,將一直保持到下一次被改變。變量是一種標(biāo)識(shí)符,其命名完全與標(biāo)識(shí)符相同。將在1.6節(jié)中詳細(xì)介紹其特性。參見(jiàn)教材P111.4.2 單詞及其構(gòu)詞規(guī)則單詞由若干合法字符組成,常見(jiàn)單詞有:5、變量、變量C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.4 C+的詞法規(guī)則l注釋符的作用是在程序中標(biāo)識(shí)注釋信息多行注釋以“/*”開(kāi)始,以“*/

16、”結(jié)束,占據(jù)多行。單行注釋以“/”開(kāi)始,占據(jù)一行。參見(jiàn)教材P111.4.2 單詞及其構(gòu)詞規(guī)則單詞由若干合法字符組成,常見(jiàn)單詞有:6 6、注釋符、注釋符C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.4 C+的詞法規(guī)則空格符:常作為單詞與單詞之間的分隔符。逗號(hào)(,):多作多個(gè)變量或多個(gè)參數(shù)之間的分隔符;分號(hào)(;):主要用于for語(yǔ)句的for關(guān)鍵字后的圓括號(hào)內(nèi),作分隔符;冒號(hào)(:):用來(lái)標(biāo)識(shí)語(yǔ)句標(biāo)號(hào)和開(kāi)關(guān)語(yǔ)句,常用于switch的case關(guān)鍵字后。 C+常用的分隔符:參見(jiàn)教材P11C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表

17、達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.4.2 單詞及其構(gòu)詞規(guī)則單詞由若干合法字符組成,常見(jiàn)單詞有:7、分隔符、分隔符1.5 C+基本數(shù)據(jù)類型參見(jiàn)教材P11 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.5 C+基本數(shù)據(jù)類型數(shù)據(jù)類型數(shù)據(jù)類型數(shù)據(jù)型符數(shù)據(jù)型符占用字節(jié)占用字節(jié)數(shù)數(shù)基本整型基本整型intint4 4短整型短整型shortshort2 2長(zhǎng)整型長(zhǎng)整型longlong4 4無(wú)符號(hào)整型無(wú)符號(hào)整型unsigned int unsigned int 4 4無(wú)符號(hào)短整型無(wú)符號(hào)短整型unsigned unsigned shortshort2 2無(wú)符號(hào)長(zhǎng)整型無(wú)

18、符號(hào)長(zhǎng)整型unsigned longunsigned long4 4單精度實(shí)型(單精度實(shí)型(有效數(shù)字有效數(shù)字6767位)位)floatfloat4 4雙精度實(shí)型(雙精度實(shí)型(有效數(shù)字有效數(shù)字15161516位)位)doubledouble8 8字符型字符型charchar1 1C+常用基本數(shù)據(jù)類型參見(jiàn)教材P12 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.1 常量常量是在程序中不改變的量。uC+程序中有5種常量: 整型常量定義格式:int const 常量名=常量值;例如, int const x=10;x=20;

19、x是整型常量嗎? 整型常量有3種形式:十進(jìn)制: 123 -35 32767 0八進(jìn)制: 05 012 01十六進(jìn)制: 0 x10 0XFF 0 x8? 參見(jiàn)教材P12-13C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1 1、整型常量、整型常量1.6 常量與變量 浮點(diǎn)型常量又稱實(shí)型常量,分為十進(jìn)制數(shù)形式和指數(shù)形式兩種表示方法。(1)十進(jìn)制數(shù)形式的浮點(diǎn)型常量的書寫格式: .其中小數(shù)點(diǎn)不能省略。如1.2345、1.0、1.、.12345均是合法的浮點(diǎn)型常量。(2)指數(shù)形式的浮點(diǎn)型常量的書寫格式: .EE 其中,指數(shù)形式表示符“E”大小寫均可。.部分允許

20、不含小數(shù)點(diǎn)的,或含小數(shù)點(diǎn)的,必須是整數(shù)。如12E-3、0.1E2、.12345E6、0E0等均是合法的。 參見(jiàn)教材P13C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6.1 常量2 2、浮點(diǎn)型常量、浮點(diǎn)型常量1.6 常量與變量 字符常量是一個(gè)用單引號(hào)括起來(lái)的字符。 單引號(hào)是字符常量的定界符,單引號(hào)本身表示成。在C+中,字符常量具有整數(shù)值,其值是該字符的ASCII碼。一個(gè)字符常量可以與整數(shù)進(jìn)行加減運(yùn)算。參見(jiàn)教材P14C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6.1 常量3 3、字符常量、字符常

21、量1.6 常量與變量 雙引號(hào)是字符串常量的定界符,雙引號(hào)本身表示成“”?!啊笔且粋€(gè)空字符串,空字符串中沒(méi)有任何有效字符,只有一個(gè)字符串結(jié)束符。在C+程序中,任何一個(gè)字符串常量都有一個(gè)結(jié)束符,該結(jié)束符是ASCII碼值為0的空字符,表示為0。 字符串常量是用雙引號(hào)括起來(lái)的若干個(gè)字符組成的字符序列。例如:“CHINA”。參見(jiàn)教材P14C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6.1 常量4 4、字符串常量、字符串常量1.6 常量與變量轉(zhuǎn)義字符轉(zhuǎn)義字符又稱反斜線字符,這些字符常量總是以一個(gè)“”開(kāi)頭,后跟特定的字符來(lái)代表某一個(gè)特定的ASCII字符。

22、字符形式字符形式功功 能能字符形式字符形式功功 能能aa響鈴符響鈴符00空字符(空字符(NULLNULL)bb退一格退一格 雙引號(hào)雙引號(hào)ff換頁(yè)換頁(yè)單引號(hào)單引號(hào)nn換行換行斜杠斜杠()()rr回車回車dddddd1313位八進(jìn)制數(shù)所代表的位八進(jìn)制數(shù)所代表的字符字符vv垂直跳格垂直跳格xhhxhh1212位十六進(jìn)制數(shù)所代表位十六進(jìn)制數(shù)所代表的字符的字符tt水平跳格水平跳格補(bǔ)充內(nèi)容C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6.1 常量1.6 常量與變量例如“string”,長(zhǎng)度為6,在內(nèi)存中占7個(gè)字節(jié)? 以下哪個(gè)是字符串?A “house” H

23、ow do you do. $abc求字符串 “mx42tp101qy” 的長(zhǎng)度? x42、t、101為轉(zhuǎn)義字符,字符長(zhǎng)度為8C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6.1 常量補(bǔ)充內(nèi)容1.6 常量與變量比較字符常量和字符串常量的不同:(1)表示形式不同。前者用單引號(hào)括起來(lái),后者用雙引號(hào)括起來(lái)。(2)存放它們的對(duì)象不同。前者存放在字符變量中,后者存放在字符數(shù)組或字符指針指定的位置。如,char c=A, s5=ABCD;(3)存放字符串常量時(shí)要加一個(gè)結(jié)束符,而存放字符常量則不需要。所以A與“A”不同。且其占用的內(nèi)存空間也不同,A占1個(gè)字節(jié)

24、;“A”占2個(gè)字節(jié),前一字節(jié)存放字符A,后一字節(jié)存放結(jié)束符。(4)對(duì)它們進(jìn)行的運(yùn)算也不同。字符與字符、字符與整數(shù)間可作加減運(yùn)算;而字符串只能作連接運(yùn)算。 參見(jiàn)教材P14C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6.1 常量1.6 常量與變量(1)增強(qiáng)程序的可讀性。標(biāo)識(shí)符可以定義得有意義,如用PI表示圓周率。(2)書寫簡(jiǎn)單,不易出錯(cuò)。有的常量直接書寫很長(zhǎng),容易出錯(cuò),如圓周率3.141 592 6用PI代之,既簡(jiǎn)單又不容易出錯(cuò)。(3)修改程序方便。 參見(jiàn)教材P15C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序

25、的開(kāi)發(fā)過(guò)程5 5、符號(hào)常量、符號(hào)常量1.6.1 常量1.6 常量與變量1.6.2 變量變量是在程序中可以改變的量參見(jiàn)教材P16變量有名字、類型和值三個(gè)要素變量的命名規(guī)則與用戶標(biāo)識(shí)符相同C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量變量的類型包括存儲(chǔ)類和數(shù)據(jù)類型兩個(gè)方面變量的值被改變后,將一直保持到下一次被改變參見(jiàn)教材P16 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程定義變量的格式: ;例如: int x ;int y;或int x,y; char ch; 內(nèi)存表

26、示變量必須先定義后使用。其目的是: 為變量分配存儲(chǔ)空間 規(guī)定變量可適用的運(yùn)算參見(jiàn)教材P16 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量1 1、變量的定義、變量的定義變量的基本數(shù)據(jù)類型有:整型、浮點(diǎn)型和字符型。變量的構(gòu)造數(shù)據(jù)類型稱自定義類型。它由若干個(gè)數(shù)據(jù)類型相同或不相同的變量所構(gòu)成的類型。如數(shù)組、結(jié)構(gòu)體、共用體、類都是構(gòu)造數(shù)據(jù)類型。參見(jiàn)教材P17 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量2 2、變量的數(shù)據(jù)類型、變量的數(shù)

27、據(jù)類型變量的存儲(chǔ)類定義變量的有效性范圍,即作用域。C+中有4類: 自動(dòng)存儲(chǔ)類(auto) 寄存器存儲(chǔ)類(register) 靜態(tài)存儲(chǔ)類(static) 外部存儲(chǔ)類(extern)存儲(chǔ)類為存儲(chǔ)類為autoauto稱為稱為動(dòng)態(tài)變量。動(dòng)態(tài)變量。動(dòng)態(tài)變量是在函數(shù)動(dòng)態(tài)變量是在函數(shù)被調(diào)用執(zhí)行時(shí)被調(diào)用執(zhí)行時(shí), ,才才分配單元分配單元, ,隨著函隨著函數(shù)被執(zhí)行而分配數(shù)被執(zhí)行而分配, ,隨著函數(shù)執(zhí)行結(jié)束隨著函數(shù)執(zhí)行結(jié)束而釋放而釋放,auto,auto關(guān)鍵關(guān)鍵字可以省略字可以省略寄存器變量是請(qǐng)寄存器變量是請(qǐng)求計(jì)算機(jī)把此變求計(jì)算機(jī)把此變量放入量放入CPUCPU的寄存的寄存器內(nèi)器內(nèi), ,但如果沒(méi)有但如果沒(méi)有寄存器可使

28、用寄存器可使用, ,或或系統(tǒng)不支持此功系統(tǒng)不支持此功能能, ,則此變量等同則此變量等同于動(dòng)態(tài)變量于動(dòng)態(tài)變量靜態(tài)變量是在程靜態(tài)變量是在程序編譯連接時(shí)就序編譯連接時(shí)就分配的內(nèi)存單元分配的內(nèi)存單元, ,在整個(gè)程序運(yùn)行在整個(gè)程序運(yùn)行期間使用固定的期間使用固定的存儲(chǔ)單元存儲(chǔ)單元, ,直到整直到整個(gè)程序退出對(duì)應(yīng)個(gè)程序退出對(duì)應(yīng)單元才釋放單元才釋放外部變量在所有外部變量在所有函數(shù)和程序段中函數(shù)和程序段中都可引用。生存都可引用。生存期是整個(gè)程序,期是整個(gè)程序,在程序結(jié)束時(shí)才在程序結(jié)束時(shí)才釋放內(nèi)存。釋放內(nèi)存。參見(jiàn)教材P16-17 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程

29、序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量3 3、變量的存儲(chǔ)類(、變量的存儲(chǔ)類(具體使用詳見(jiàn)函數(shù)一章具體使用詳見(jiàn)函數(shù)一章)變量的值是變量三要素之一??梢栽诙x變量時(shí)對(duì)變量賦初值(變量初始化),也可以在引用變量時(shí)通過(guò)其他方法(賦值表達(dá)式、cin、scanf函數(shù)等)對(duì)變量賦值。變量初始化格式:變量初始化格式:=,=,;例如:static int a=1,b=2;參見(jiàn)教材P17-18 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量4 4、變量的值、變量的值外部類和靜態(tài)類變量沒(méi)有初始化,則由編譯程序賦以“零值”(數(shù)

30、值型變量賦數(shù)值0,字符型變量賦空字符)。自動(dòng)類和寄存器類變量不進(jìn)行初始化,那么它們不具有有意義的值,必須通過(guò)賦值后才能引用。例如:例如:int a,b; int a,b; a=b+4; a=b+4;參見(jiàn)教材P18 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量4 4、變量的值、變量的值變量有定義和引用兩個(gè)方面。變量的定義涉及變量名稱、存儲(chǔ)類和數(shù)據(jù)類型。引用即使用,通常先定義,后使用。引用變量時(shí)可通過(guò)賦值表達(dá)式、cin函數(shù)等方式對(duì)變量賦值。參見(jiàn)教材P18 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量

31、與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量4 4、變量的值、變量的值表達(dá)式x=x+1,在數(shù)學(xué)中成立嗎?在計(jì)算機(jī)程序中成立嗎?為什么?深入思考深入思考原因一:數(shù)學(xué)公式中的“=”和程序中的含義不一樣。程序中的“=”是賦值的含義。原因二:數(shù)學(xué)公式中的變量和程序中的含義不一樣。程序中的變量表示的是存儲(chǔ)單元。結(jié)論:用計(jì)算機(jī)求解問(wèn)題有別于數(shù)學(xué)的方法,要考慮機(jī)器的具體狀況。補(bǔ)充內(nèi)容C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.6 常量與變量1.6.2 變量1.7 運(yùn)算符與表達(dá)式C+的表達(dá)式包括算術(shù)表達(dá)式、關(guān)系表達(dá)式、邏輯表達(dá)式、

32、賦值表達(dá)式、條件表達(dá)式和逗號(hào)表達(dá)式。參見(jiàn)教材P18 重點(diǎn)C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.1 算術(shù)運(yùn)算符與算術(shù)表達(dá)式運(yùn)算運(yùn)算符符含義含義例例備注備注+ +加加5+2 5+2 7 7- -減減5-2 5-2 3 3* *乘乘5 5* *2 2 10 10/ /除除5/2 5/2 2 2正斜線正斜線%取余取余5%2 5%2 1 1,5%-2 ,5%-2 -1-1只適用于整型數(shù)只適用于整型數(shù)+自增自增y=x+ ; y=x+ ; y=x , x=x+1y=x , x=x+1y=+x ; y=+x ; x=x+1 ,

33、 y=xx=x+1 , y=x適用于整型變量適用于整型變量-自減自減y=x- ; y=x- ; y=x , x=x-1y=x , x=x-1y=-x ; y=-x ; x=x-1 , y=xx=x-1 , y=x適用于整型變量適用于整型變量參見(jiàn)教材P18-20C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程單目運(yùn)算符的優(yōu)先級(jí)高于雙目運(yùn)算符的優(yōu)先級(jí),雙目運(yùn)算符中的 *、/、% 的優(yōu)先級(jí)高于 +、- 的優(yōu)先級(jí)。+(增1)運(yùn)算可寫在變量前或變量后,分別稱作前綴運(yùn)算和后綴運(yùn)算。如果定義一個(gè)變量i,前綴運(yùn)算記為:+i,后綴運(yùn)算記為:i+。a=+i等同于 i=i

34、+1 a=ia=i+等同于 a=i i=i+1參見(jiàn)教材P19C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.1 算術(shù)運(yùn)算符與算術(shù)表達(dá)式取余運(yùn)算只能用于兩個(gè)整型數(shù)的運(yùn)算。功能是求兩個(gè)整型數(shù)相除的余數(shù)。用下面的公式:余數(shù)=被除數(shù)-商除數(shù)注意:5%-3=2,而-5%3=-2。程序的運(yùn)行結(jié)果如下:程序的運(yùn)行結(jié)果如下: a=2 b=-2a=2 b=-2例如:取余運(yùn)算。例如:取余運(yùn)算。程序代碼如下:程序代碼如下:#include #include using namespace std;using namespace std;voi

35、d main()void main() int a,b; int a,b;a=5%-3;a=5%-3;b=-5%3; b=-5%3; couta=atb=couta=atb=bendl;bendl; 參見(jiàn)教材P19C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.1 算術(shù)運(yùn)算符與算術(shù)表達(dá)式例如例如, ,#include #include using namespace std;using namespace std;void main()void main() int x,y,z; int x,y,z;x=10;x=10;

36、 y=x+; y=x+; z=+x; z=+x; z=(x+)+(x+)+(x+); z=(x+)+(x+)+(x+);coutx+x+endl;coutx+x+=大于等于大于等于20=20,10=2020=20,10=20同級(jí)同級(jí)( (高高) ) 大于大于2020,20102020,2010 小于小于2030,20102030,2010=小于等于小于等于20=30,20=1020=30,200時(shí),表達(dá)式“x+yx”是永真的。但在用計(jì)算機(jī)語(yǔ)言判斷關(guān)系表達(dá)式“x+yx”時(shí),可能會(huì)得出不真的結(jié)論。這種情況往往出現(xiàn)在x和y兩個(gè)數(shù)差別很大,一個(gè)很大,另一個(gè)則小到了語(yǔ)言表達(dá)精度以下,以致這個(gè)很小的數(shù)對(duì)相

37、加結(jié)果不產(chǎn)生影響。 參見(jiàn)教材P20C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.2 關(guān)系運(yùn)算符與關(guān)系表達(dá)式? 設(shè)設(shè)a=3,b=5,c=4, a=3,b=5,c=4, 以下關(guān)系運(yùn)算的值是多少?以下關(guān)系運(yùn)算的值是多少?ababa+bb+ca+bb+c(a=3)(b=5)(a=3)(b=5)abaa)(cb)(ba)(cb)參與關(guān)系運(yùn)算的數(shù)據(jù)可以是整型、實(shí)型、字符參與關(guān)系運(yùn)算的數(shù)據(jù)可以是整型、實(shí)型、字符型數(shù)據(jù)型數(shù)據(jù)補(bǔ)充內(nèi)容C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算

38、符與表達(dá)式1.7.2 關(guān)系運(yùn)算符與關(guān)系表達(dá)式邏輯運(yùn)算符用于一個(gè)或兩個(gè)條件是否滿足的判斷參與運(yùn)算的數(shù)是邏輯值(非零或0), 運(yùn)算的結(jié)果也是邏輯值(1或0)運(yùn)算符運(yùn)算符含義含義舉例舉例優(yōu)先級(jí)優(yōu)先級(jí)! !邏輯非邏輯非!20,!0!20,!0高高&與與20&45,20&020&45,20&0|或或20|0,0|020|0,0|0低低參見(jiàn)教材P21C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.2 關(guān)系運(yùn)算符與關(guān)系表達(dá)式 與運(yùn)算當(dāng)且僅當(dāng)參與運(yùn)算的兩個(gè)數(shù)都為真時(shí),結(jié)與運(yùn)算當(dāng)且僅當(dāng)參與運(yùn)算的兩個(gè)

39、數(shù)都為真時(shí),結(jié)果為真,否則為假果為真,否則為假 或運(yùn)算當(dāng)參與運(yùn)算的兩個(gè)數(shù)都為假時(shí),結(jié)果為假或運(yùn)算當(dāng)參與運(yùn)算的兩個(gè)數(shù)都為假時(shí),結(jié)果為假,否則為真,否則為真? x0 & x0 & xx0 ( 10 x0 ( ) ) ch=A & ch=A & ch=65 & ch=65 & ch=90補(bǔ)充內(nèi)容C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.2 關(guān)系運(yùn)算符與關(guān)系表達(dá)式1.7 運(yùn)算符與表達(dá)式1.7.3 邏輯運(yùn)算符與邏輯表達(dá)式邏輯運(yùn)算的優(yōu)先級(jí)!(非)&(與) |(或)邏輯運(yùn)算

40、符與其他運(yùn)算符的優(yōu)先級(jí):!算術(shù)運(yùn)算符關(guān)系運(yùn)算符&和|賦值運(yùn)算符高高低低參見(jiàn)教材P21C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程位運(yùn)算的對(duì)象是二進(jìn)制數(shù),對(duì)二進(jìn)制數(shù)進(jìn)行按位運(yùn)算1100110010101010 1000 1000&1100110010101010 1110 1110| |1100110010101010 0110 0110 00101 00101 00101 0001 0001參見(jiàn)教材P22-23C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.

41、3 邏輯運(yùn)算符與邏輯表達(dá)式1.7 運(yùn)算符與表達(dá)式1.7.5 賦值運(yùn)算符與賦值表達(dá)式基本賦值運(yùn)算符(1個(gè))= 基本賦值運(yùn)算符(注意與等號(hào)“=”的區(qū)別)參見(jiàn)教材P23-24C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程復(fù)合賦值運(yùn)算符(10個(gè)) +=+=、-=-=、* *= =、/=/=、%=%=分別為加、減、乘、除、取余賦值運(yùn)算符&=&=、=、|=|=分別為按位與、按位異或、按位或賦值運(yùn)算符=分別為位左移、右移賦值運(yùn)算符賦值表達(dá)式的一般形式為: = 例如:int a,b,c;int w;w=56;a=b=c=1; /該表達(dá)式值為1,變量

42、a、b、c的值為1參見(jiàn)教材P24C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.5 賦值運(yùn)算符與賦值表達(dá)式復(fù)合賦值運(yùn)算符由賦值號(hào)“=”前加上其他運(yùn)算符構(gòu)成例如:a+=3等價(jià)于 a=a+3x*=y+8等價(jià)于 x=x*(y+8)功能:是右側(cè)表達(dá)式的值與左側(cè)變量先進(jìn)行“=”前的運(yùn)算符的計(jì)算,再賦給左邊的變量。參見(jiàn)教材P24C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式1.7.5 賦值運(yùn)算符與賦值表達(dá)式1.7 運(yùn)算符與表達(dá)式C+只有一個(gè)三目運(yùn)算符。三目條件表達(dá)式

43、格式如下:運(yùn)算時(shí)先對(duì)第一個(gè)表達(dá)式進(jìn)行檢驗(yàn),如果為真,取表達(dá)式2的值;為假,取表達(dá)式3的值。 例如: a=(b0)?b:-b; 當(dāng)b0時(shí),a=b;當(dāng)b=0時(shí),a=-b;1.7.6 三目運(yùn)算符與三目表達(dá)式參見(jiàn)教材P25C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式用逗號(hào)串聯(lián)起來(lái)的若干個(gè)表達(dá)式稱為逗號(hào)表達(dá)式。 , , , 各表達(dá)式按從左至右順序執(zhí)行, 并將最后一個(gè)表達(dá)式的值作為整個(gè)逗號(hào)表達(dá)式的值。1.7.7 逗號(hào)運(yùn)算符與逗號(hào)表達(dá)式例如: b=1,c=2,d=3;則逗號(hào)表達(dá)式: a=4+4,b=ba=4+4,b=b* *b+c,d=d

44、b+c,d=d* *a+b;a+b;其求值過(guò)程為:先將8賦給a,再將3賦給b,最后一個(gè)表達(dá)式d=3*8+3=27,整個(gè)逗號(hào)表達(dá)式的值為27.參見(jiàn)教材P26C+程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程取內(nèi)容運(yùn)算符:*1.7 運(yùn)算符與表達(dá)式指針運(yùn)算實(shí)際上是地址運(yùn)算。指針運(yùn)算有兩個(gè)運(yùn)算符1.7.8 指針運(yùn)算運(yùn)算符 & 后跟變量名或數(shù)組元素,后面不能跟常量、表達(dá)式或數(shù)組名。功能是取變量的地址。&a、&b分別表示取變量a、b的地址值。運(yùn)算符 * 后跟一個(gè)地址值(包括地址表達(dá)式值),表示取一個(gè)地址中存放的數(shù)據(jù)。參見(jiàn)教材P26-27C+

45、程序的基本結(jié)構(gòu)C+的詞法規(guī)則 C+基本數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式應(yīng)用程序的開(kāi)發(fā)過(guò)程1.7 運(yùn)算符與表達(dá)式運(yùn)算符的優(yōu)先級(jí)和結(jié)合性是確定表達(dá)式計(jì)算順序的重要依據(jù)。1.7.9 運(yùn)算符的優(yōu)先級(jí)和結(jié)合性(1)():圓括號(hào),用于改變優(yōu)先級(jí),圓括號(hào)內(nèi)的 部分首先計(jì)算。(2):數(shù)組元素的下標(biāo)運(yùn)算符或數(shù)組大小定 義運(yùn)算符,其內(nèi)的部分首先計(jì)算。(3). 和-:用于結(jié)構(gòu)體、共用體變量。(4)sizeof:計(jì)算一數(shù)據(jù)類型或一表達(dá)式占用 內(nèi) 存的字節(jié)數(shù)。例如,sizeof(int) 或 sizeof()(5)強(qiáng)制類型:作用于一表達(dá)式,使表達(dá)式的 類型強(qiáng)制性轉(zhuǎn)換為指定類型。例如,int a=1, b=2;cout(int)(a+b+1.234567)endl;參見(jiàn)教材P

溫馨提示

  • 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)論