




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、會(huì)計(jì)學(xué)1第第 數(shù)據(jù)類型運(yùn)算符和表達(dá)式數(shù)據(jù)類型運(yùn)算符和表達(dá)式第一頁,共58頁。2.1 保留字和標(biāo)識(shí)符保留字和標(biāo)識(shí)符2.1.1 保留字(保留字(Reserved Word or Keyword) C+語言自身使用的,已有特殊含義語言自身使用的,已有特殊含義(hny)和用和用途的英文單詞稱為保留字或關(guān)鍵字。途的英文單詞稱為保留字或關(guān)鍵字。如例如例1.1中的類型說明符中的類型說明符 int,用于定義整型變量。,用于定義整型變量。用戶用戶(yngh)不能將其作為自己的變量名或函數(shù)名不能將其作為自己的變量名或函數(shù)名使用。使用。第1頁/共58頁第二頁,共58頁。2.1.2 標(biāo)識(shí)符標(biāo)識(shí)符標(biāo)識(shí)符標(biāo)識(shí)符(iden
2、tifier): 有效字符序列,有效字符序列, 用來標(biāo)識(shí)用戶自己用來標(biāo)識(shí)用戶自己(zj)定義的定義的 變量名、符號(hào)常量名、變量名、符號(hào)常量名、 函數(shù)名、數(shù)組名、類型名、文件名等函數(shù)名、數(shù)組名、類型名、文件名等命名規(guī)則命名規(guī)則:只能由字母、數(shù)字和下劃線三種字符組只能由字母、數(shù)字和下劃線三種字符組 成,且第一個(gè)字符必須成,且第一個(gè)字符必須(bx)為字母或下劃線為字母或下劃線 最大長(zhǎng)度為最大長(zhǎng)度為 1 247 個(gè)字符。個(gè)字符。如如: MyName average GetDay StudentName _above Lotus_1_2_3 非法非法(fif)標(biāo)識(shí)符如標(biāo)識(shí)符如: M.D.John $12
3、3 3Dmax合法標(biāo)識(shí)符如合法標(biāo)識(shí)符如: (有時(shí)用匈牙利命名法)(有時(shí)用匈牙利命名法)第2頁/共58頁第三頁,共58頁。例:例:#include void main(void)int a, b, sum; /* 定義定義(dngy)變量變量 */a=123; b=456; sum = a + b; coutsum is sumn; 保留字保留字標(biāo)識(shí)符標(biāo)識(shí)符(變量名、函數(shù)名、對(duì)象名)(變量名、函數(shù)名、對(duì)象名)常數(shù)常數(shù)第3頁/共58頁第四頁,共58頁。2.2 C+ 的基本的基本(jbn)數(shù)據(jù)類型數(shù)據(jù)類型數(shù)據(jù)類型數(shù)據(jù)類型基本基本(jbn)類類型型導(dǎo)出類導(dǎo)出類型型(lixng)整型整型實(shí)型實(shí)型字符型字
4、符型空類型空類型(無值型無值型)單精度型單精度型雙精度型雙精度型數(shù)組類型數(shù)組類型指針類型指針類型結(jié)構(gòu)體類型結(jié)構(gòu)體類型共用體類型共用體類型枚舉類型枚舉類型不論是變量還是常數(shù),在計(jì)算機(jī)內(nèi)部都要按照某種形式不論是變量還是常數(shù),在計(jì)算機(jī)內(nèi)部都要按照某種形式存放,存放形式由數(shù)據(jù)類型決定。存放,存放形式由數(shù)據(jù)類型決定。第4頁/共58頁第五頁,共58頁。以上以上(yshng)基本類型數(shù)據(jù)占內(nèi)存字節(jié)不相同,基本類型數(shù)據(jù)占內(nèi)存字節(jié)不相同,因此數(shù)值范圍也不同,見表因此數(shù)值范圍也不同,見表 2-1 及表及表 2-2類型標(biāo)識(shí)類型標(biāo)識(shí)名稱名稱占用字節(jié)數(shù)占用字節(jié)數(shù)取值范圍取值范圍char字符型字符型1128 127int
5、 整型整型4231(2311)float實(shí)型實(shí)型41038 1038double雙精度實(shí)雙精度實(shí)型型810308 10308bool邏輯型邏輯型1常量常量true和和falsevoid空類型空類型無值無值第5頁/共58頁第六頁,共58頁。對(duì)基本類型對(duì)基本類型(lixng),可以加修飾,如:,可以加修飾,如: int 型型int 占占4 字節(jié)字節(jié)short int 占占 2 字節(jié)字節(jié) long int 占占4 字節(jié)字節(jié)第6頁/共58頁第七頁,共58頁。int : signed int unsigned int short int : signed short int unsigned short
6、 intlong int: signed long int unsigned long int最簡(jiǎn)形式:最簡(jiǎn)形式:intunsigned int shortunsigned shortlongunsigned long 再加修飾再加修飾(xish),如:,如:第7頁/共58頁第八頁,共58頁。注意注意(zh y):int 型變量與型變量與 unsigned int 型變量型變量的區(qū)別的區(qū)別 32 位位 范圍范圍 int 型:型: -231 (補(bǔ)碼補(bǔ)碼) (231 - 1) 符號(hào)位符號(hào)位 32 位位 范圍范圍unsigned int 型:型: 0 (232 - 1) 無符號(hào)位無符號(hào)位第8頁/共5
7、8頁第九頁,共58頁。2.3 常量常量(chngling)和和變量變量2.3.1 常量常量(chngling)常量:在程序運(yùn)行過程常量:在程序運(yùn)行過程(guchng)中,其值不能被中,其值不能被改變的量改變的量#include void main(void)int a, b, sum; /* 定義變量定義變量 */a=123; b=456; sum = a + b; coutsum is sumn; 常量常量(常數(shù)常數(shù))第9頁/共58頁第十頁,共58頁。1. 整型常量整型常量(chngling) 十進(jìn)制整數(shù)十進(jìn)制整數(shù)(zhngsh) 123, -456 八進(jìn)制整數(shù)八進(jìn)制整數(shù)(zhngsh) 0
8、123, -011 十六進(jìn)制整數(shù)十六進(jìn)制整數(shù) 0 x123, -0 xAB 長(zhǎng)整型與無符號(hào)型常數(shù)長(zhǎng)整型與無符號(hào)型常數(shù) 12L, 0234L,-0 xABL 12U, 0234U,0 xABU第10頁/共58頁第十一頁,共58頁。2. 實(shí)型常量(在內(nèi)存實(shí)型常量(在內(nèi)存(ni cn)中以浮點(diǎn)形式存中以浮點(diǎn)形式存放)放) (均為十進(jìn)制,無數(shù)(均為十進(jìn)制,無數(shù)(wsh)制區(qū)分)制區(qū)分) 小數(shù)形式小數(shù)形式(xngsh) : 必須有小數(shù)點(diǎn)必須有小數(shù)點(diǎn) 1.65 1. .123 指數(shù)形式指數(shù)形式 (也稱為科學(xué)表示法)(也稱為科學(xué)表示法): 如如 123000.0 可寫為可寫為 1.23e5 0.00368
9、可寫為可寫為 3.68E-3 e 或或 E前必須有數(shù)字,前必須有數(shù)字,1000寫為寫為 1e3 不能寫為不能寫為 e3第11頁/共58頁第十二頁,共58頁。3. 字符字符(z f)型常量型常量用于表示用于表示ASCII字符字符(z f),見附錄,見附錄A。在內(nèi)存中存放對(duì)應(yīng)的在內(nèi)存中存放對(duì)應(yīng)的ASCII碼值,如碼值,如 a 的的ASCII碼碼為為 97,則在內(nèi)存中用一個(gè),則在內(nèi)存中用一個(gè)(y )字節(jié)存放:字節(jié)存放:在源程序中在源程序中最基本的表示形式為:最基本的表示形式為:?jiǎn)我?hào)括起來的一個(gè)字符,如:?jiǎn)我?hào)括起來的一個(gè)字符,如: a A ? 0 1 1 0 0 0 0 1對(duì)于不可打印的字符,可以
10、用轉(zhuǎn)義字符形式表示對(duì)于不可打印的字符,可以用轉(zhuǎn)義字符形式表示 。第12頁/共58頁第十三頁,共58頁。注意注意(zh y):n 與與 n 的區(qū)別的區(qū)別 !轉(zhuǎn)義字符:以反斜杠轉(zhuǎn)義字符:以反斜杠“”引導(dǎo)的特殊形式的引導(dǎo)的特殊形式的 非顯示字符或表示非顯示字符或表示(biosh)特定意義的字符特定意義的字符常量常量n t b ddd xhh 見表見表 2-3注意:字母注意:字母(zm) A 的的 ASCII 碼是碼是(65)10=(101)8=(41)16在程序中表示字母在程序中表示字母(zm)A,可以有三種方法:,可以有三種方法: A 101 x41n 表示表示一個(gè)一個(gè)控制字符,控制字符, n 表
11、示一個(gè)字母。表示一個(gè)字母。第13頁/共58頁第十四頁,共58頁。4. 字符串常量字符串常量-用雙引號(hào)括起來的字符序列用雙引號(hào)括起來的字符序列(在內(nèi)存(在內(nèi)存(ni cn)中存放字符序列的中存放字符序列的ASCII碼值,碼值, 最后加一個(gè)結(jié)尾標(biāo)志)最后加一個(gè)結(jié)尾標(biāo)志)如如: How do you do. CHINA a字符串結(jié)束字符串結(jié)束(jish)標(biāo)志符是:標(biāo)志符是: 0注意注意(zh y): a 和和 a 是不同的是不同的。CHINA0.第14頁/共58頁第十五頁,共58頁。符號(hào)常量:用標(biāo)識(shí)符代表一個(gè)符號(hào)常量:用標(biāo)識(shí)符代表一個(gè)(y )常量,常量, 必須先定義后使用。必須先定義后使用。例:定義
12、例:定義(dngy)標(biāo)識(shí)符常量標(biāo)識(shí)符常量#define PRICE 30#define PI 3.1425926#define S Chinaconst f loat pi=3.142.3.2 符號(hào)符號(hào)(fho)常量常量第15頁/共58頁第十六頁,共58頁。例例2.1 符號(hào)符號(hào)(fho)常量的使用常量的使用 #include #define PI 3.14159 void main(void) float r, c, a, sa; r = 5.0f; / 給半徑賦值給半徑賦值 c = 2 * PI * r;/ 計(jì)算圓周長(zhǎng)計(jì)算圓周長(zhǎng) a = PI * r * r; / 計(jì)算圓面積計(jì)算圓面積 sa
13、 = 4 * PI * r * r; / 計(jì)算球表面積計(jì)算球表面積 coutPI = PIn;/ 字符串中的字符串中的PI是字符串常量的一是字符串常量的一部分,部分, 不是獨(dú)立的符號(hào)不是獨(dú)立的符號(hào)(fho)常量常量 coutc = cn; couta = an; coutsa = san;好處好處(ho chu):(1)提高程序的可讀性。)提高程序的可讀性。(2)程序中使用多處,一改全改。)程序中使用多處,一改全改。第16頁/共58頁第十七頁,共58頁。2.3.3 變量變量(binling)變量變量:其值可以其值可以(ky)改變的量。改變的量。變量名變量名:一個(gè)一個(gè)(y )變量的符號(hào)名變量的符
14、號(hào)名,由標(biāo)識(shí)符構(gòu)成。由標(biāo)識(shí)符構(gòu)成。 一個(gè)一個(gè)(y )變量占據(jù)內(nèi)存一定的存儲(chǔ)單元,變量占據(jù)內(nèi)存一定的存儲(chǔ)單元, 在存儲(chǔ)單元中存放該變量的值。在存儲(chǔ)單元中存放該變量的值。int a, b ; / 定義定義2個(gè)整型變量個(gè)整型變量a, bunsigned u ; / 定義定義1個(gè)無符號(hào)整型變量個(gè)無符號(hào)整型變量ufloat f ; / 定義定義1個(gè)單精度實(shí)型變量個(gè)單精度實(shí)型變量double d ; / 定義定義1個(gè)雙精度實(shí)型變量個(gè)雙精度實(shí)型變量char c1, c2, c3 ; / 定義定義3個(gè)字符型變量個(gè)字符型變量c1, c2, c3 1. 定義變量定義變量第17頁/共58頁第十八頁,共58頁。注意注
15、意(zh y):(1) 區(qū)別區(qū)別(qbi)大小寫大小寫: 如如 sum 與與 Sum 為不同的變?yōu)椴煌淖兞棵?。量名?2)先定義后使用先定義后使用: 分配分配(fnpi)單元單元 、確定類型、語法檢、確定類型、語法檢查查(3)在一個(gè)程序單元中不能重復(fù)定義。在一個(gè)程序單元中不能重復(fù)定義。(4)關(guān)鍵字(保留字)不能作為標(biāo)識(shí)符。關(guān)鍵字(保留字)不能作為標(biāo)識(shí)符。(5)最大長(zhǎng)度隨不同的最大長(zhǎng)度隨不同的 C+語言系統(tǒng)而定語言系統(tǒng)而定: VC+識(shí)別前識(shí)別前 247 個(gè)字符,超過無效。個(gè)字符,超過無效。(6)按義取名。按義取名。 第18頁/共58頁第十九頁,共58頁。2變量賦初值變量賦初值給變量賦初值的方法
16、有兩種:給變量賦初值的方法有兩種:(1)變量定義后,用賦值語句)變量定義后,用賦值語句(yj)賦初值。賦初值。例如:例如: int a, b ; a = 12; b = 24 ; char c1,c2 ; c1=A; c2=B ;(2)在定義)在定義(dngy)變量的同時(shí),變量的同時(shí), 直接賦初值(稱為變量的初始化)。直接賦初值(稱為變量的初始化)。 例如例如: int a=12, b= -24 ; char c1=A, c2=B ; 第19頁/共58頁第二十頁,共58頁。3常變量常變量常變量的定義:常變量的定義:const float pi = 3.14;常變量定義時(shí)必須初始化。常變量定義時(shí)
17、必須初始化。 定義常變量的目的定義常變量的目的(md)是保護(hù)變量的值,是保護(hù)變量的值,即不允許對(duì)變量的值做修改。即不允許對(duì)變量的值做修改。第20頁/共58頁第二十一頁,共58頁。2.4 基本基本(jbn)運(yùn)算符和表達(dá)式運(yùn)算符和表達(dá)式2.4.1 C+運(yùn)算符及表達(dá)式簡(jiǎn)介運(yùn)算符及表達(dá)式簡(jiǎn)介(jin ji)完成對(duì)常量、變量作運(yùn)算完成對(duì)常量、變量作運(yùn)算(yn sun)的符號(hào)稱為運(yùn)算的符號(hào)稱為運(yùn)算(yn sun)符。符。把參與運(yùn)算把參與運(yùn)算(yn sun)的對(duì)象稱為操作數(shù)。的對(duì)象稱為操作數(shù)。操作數(shù)可以是常量和變量等。操作數(shù)可以是常量和變量等。各種運(yùn)算符見表各種運(yùn)算符見表 2-4一元運(yùn)算符、二元運(yùn)算符、三元
18、運(yùn)算符一元運(yùn)算符、二元運(yùn)算符、三元運(yùn)算符第21頁/共58頁第二十二頁,共58頁。2.4.2 算術(shù)算術(shù)(sunsh)運(yùn)算符和算術(shù)運(yùn)算符和算術(shù)(sunsh)表達(dá)式表達(dá)式基本基本(jbn)算術(shù)運(yùn)算符算術(shù)運(yùn)算符: + - * / % / 整數(shù)運(yùn)算整數(shù)運(yùn)算(yn sun)時(shí)為整除,結(jié)果為時(shí)為整除,結(jié)果為整數(shù)。整數(shù)。 % (模運(yùn)算或稱模運(yùn)算或稱求余求余運(yùn)算運(yùn)算) 必須為整型數(shù)據(jù)。必須為整型數(shù)據(jù)。 例例: 7/3 結(jié)果?結(jié)果? 7.0/3 結(jié)果?結(jié)果? 7%3 結(jié)果?結(jié)果?22.3333331第22頁/共58頁第二十三頁,共58頁。由運(yùn)算符和操作數(shù)構(gòu)成由運(yùn)算符和操作數(shù)構(gòu)成(guchng)表表達(dá)式:達(dá)式:如:
19、如:a + b a * ( c + d ) a * c + d2.4.3 運(yùn)算運(yùn)算(yn sun)優(yōu)先級(jí)和結(jié)優(yōu)先級(jí)和結(jié)合性合性優(yōu)先級(jí)優(yōu)先級(jí):對(duì)于同一對(duì)于同一(tngy)表達(dá)式中出現(xiàn)多個(gè)運(yùn)算符,表達(dá)式中出現(xiàn)多個(gè)運(yùn)算符,先算先算 哪一個(gè)。哪一個(gè)。結(jié)合性結(jié)合性:在兩種運(yùn)算優(yōu)先級(jí)相同時(shí),在兩種運(yùn)算優(yōu)先級(jí)相同時(shí),“自左向右自左向右”還是還是“自右向左自右向左”運(yùn)算稱為結(jié)合性。運(yùn)算稱為結(jié)合性。 第23頁/共58頁第二十四頁,共58頁。如:算術(shù)如:算術(shù)(sunsh)運(yùn)算符的優(yōu)先級(jí)與結(jié)合性運(yùn)算符的優(yōu)先級(jí)與結(jié)合性優(yōu)先級(jí)優(yōu)先級(jí):+ - 較低較低* / % 較高較高結(jié)合結(jié)合(jih)性性:自左向右自左向右例:表達(dá)式
20、:例:表達(dá)式:6/3*2 “自左向右自左向右” 或或 “自右向左自右向左” 運(yùn)算運(yùn)算(yn sun)結(jié)果不同結(jié)果不同第24頁/共58頁第二十五頁,共58頁。2.4.4 關(guān)系關(guān)系(gun x)運(yùn)算符和關(guān)系運(yùn)算符和關(guān)系(gun x)表達(dá)式表達(dá)式“關(guān)系運(yùn)算關(guān)系運(yùn)算(yn sun)”實(shí)際上就是實(shí)際上就是“比較運(yùn)算比較運(yùn)算(yn sun)”關(guān)系運(yùn)算符及其優(yōu)先關(guān)系運(yùn)算符及其優(yōu)先(yuxin)次序次序=!=小于小于小于等于小于等于大于大于大于等于大于等于恒等于恒等于不等于不等于優(yōu)先級(jí)相優(yōu)先級(jí)相同同(較高較高)優(yōu)先級(jí)相優(yōu)先級(jí)相同同(較低較低)第25頁/共58頁第二十六頁,共58頁。a=bc 等效于等效于 a=
21、(ba+b 等效于等效于 c(a+b) 算術(shù)算術(shù)(sunsh)關(guān)系(關(guān)系( , 和和 = )關(guān)系(關(guān)系( = 和和 != ) 高高 低低第26頁/共58頁第二十七頁,共58頁。如:如:ab, a+bb+c, ab 的值為的值為 0則表達(dá)式則表達(dá)式 bb)&(xy)ab&xy(a=b) | (x=y)a=b | x=y(!a)b!a b第30頁/共58頁第三十一頁,共58頁。(2)C+ 編譯系統(tǒng)在給出邏輯運(yùn)算結(jié)果時(shí),編譯系統(tǒng)在給出邏輯運(yùn)算結(jié)果時(shí), 以數(shù)值以數(shù)值(shz) 1 代表代表 “真真” 以數(shù)值以數(shù)值(shz) 0 代表代表 “假假”(1)運(yùn)算)運(yùn)算(yn sun)時(shí),在判
22、斷一個(gè)量是否為時(shí),在判斷一個(gè)量是否為“真真”時(shí),時(shí), 以非以非0 代表代表 “真真” 以以0 代表代表 “假假”例如例如(lr):已知:已知 a=4則則 !a 的值是的值是 0 已知已知 a=0, b=5則則 a&b 的值是的值是 0則則 a|b 的值是的值是 1則則 !a&b 的值是的值是 1注意:注意:第31頁/共58頁第三十二頁,共58頁。注意:注意:在在C+C+程序中,程序中,欲表示數(shù)學(xué)關(guān)系欲表示數(shù)學(xué)關(guān)系(gun x) 0 x10 (gun x) 0 x10 ,C+C+的邏輯表達(dá)式必須寫成的邏輯表達(dá)式必須寫成 0=x & x=10 0=x & x=10,
23、而不能寫成而不能寫成 0= x =10 0= x =10。 為什么?為什么?第32頁/共58頁第三十三頁,共58頁。 2.4.6 位運(yùn)算位運(yùn)算(yn sun)符和位運(yùn)算符和位運(yùn)算(yn sun)表達(dá)式表達(dá)式 位運(yùn)算是對(duì)整型數(shù)據(jù)的運(yùn)算位運(yùn)算是對(duì)整型數(shù)據(jù)的運(yùn)算(可以操作到位可以操作到位),符號(hào)位參與運(yùn)算,符號(hào)位參與運(yùn)算,主要用于系統(tǒng)主要用于系統(tǒng)(xtng)程序設(shè)計(jì)。程序設(shè)計(jì)。位運(yùn)算符共有位運(yùn)算符共有6 種種:它們它們(t men)是:按位與(是:按位與(&) 按位或(按位或(|) 按位異或(按位異或() 按位取反(按位取反() 左移(左移() 第33頁/共58頁第三十四頁,共58頁。舉例舉
24、例(j l):按位:按位“與與”例如:已知:例如:已知:char a=3, b=2 , c ; 求:求: c = a & b ; 此時(shí),可將此時(shí),可將a、b、c看成是看成是一個(gè)字節(jié)一個(gè)字節(jié)(z ji)長(zhǎng)度的整型長(zhǎng)度的整型數(shù)。數(shù)。 a 0000 0011 & b 1111 1110 c 0000 0010結(jié)果變量結(jié)果變量 c 的值為的值為 2。其它位運(yùn)算其它位運(yùn)算(yn sun),自學(xué)。,自學(xué)。第34頁/共58頁第三十五頁,共58頁。 2.4.7 自增、自減運(yùn)算符和表達(dá)式自增、自減運(yùn)算符和表達(dá)式使變量使變量(binling)的值加的值加 1 或減或減 1 的運(yùn)算的運(yùn)算如如: +i
25、, - -i在使用在使用(shyng) i 之前加或減之前加或減 1i+, i- -在使用在使用(shyng) i 之后加或減之后加或減 1int i=3, j;j=+i;運(yùn)算后運(yùn)算后 i = ?,j = ?int i=3, j;j=i+;運(yùn)算后運(yùn)算后 i = ?,j = ?注意注意:只能用于變量,不能用于常量和表達(dá)式,只能用于變量,不能用于常量和表達(dá)式, 如:如: 3+; (a+b)+; 錯(cuò)誤錯(cuò)誤i = 4,j = 4i = 4,j = 3第35頁/共58頁第三十六頁,共58頁。2.4.8 賦值運(yùn)算符和賦值表達(dá)式賦值運(yùn)算符和賦值表達(dá)式1賦值運(yùn)算符賦值運(yùn)算符 “=” 是賦值運(yùn)算符,賦值表達(dá)式格
26、式是賦值運(yùn)算符,賦值表達(dá)式格式(g shi): 求解求解(qi ji)過程:求出過程:求出 的值,賦給的值,賦給 賦值表達(dá)式的值:賦值表達(dá)式的值:為為 的值的值如:如:a = b + c 還可以是另一個(gè)賦值表達(dá)式,還可以是另一個(gè)賦值表達(dá)式,第36頁/共58頁第三十七頁,共58頁。如如: a=b=5 a=5+(c=6) a=(b=4)+(c=6)如果如果(rgu) a 初值為初值為 2,表達(dá)式結(jié)果?,表達(dá)式結(jié)果?結(jié)果結(jié)果(ji gu)為為 7如如: a=33是最簡(jiǎn)單是最簡(jiǎn)單(jindn)的的表達(dá)式表達(dá)式i=i+1它不同于它不同于“等于號(hào)等于號(hào)”注意優(yōu)先級(jí)注意優(yōu)先級(jí) 與結(jié)合性與結(jié)合性 b = c
27、= d = a+5自右向左自右向左表達(dá)式結(jié)果分別為:?表達(dá)式結(jié)果分別為:? 5 11 10第37頁/共58頁第三十八頁,共58頁。2. 復(fù)合復(fù)合(fh)賦值運(yùn)算符賦值運(yùn)算符復(fù)合復(fù)合(fh)賦值運(yùn)算符賦值運(yùn)算符x*=y+8等價(jià)等價(jià)(dngji)于于 x=x*(y+8)x%=3等價(jià)于等價(jià)于 x=x%3x/=9簡(jiǎn)寫為:簡(jiǎn)寫為: a += 3 a=a+3簡(jiǎn)寫為:簡(jiǎn)寫為: a - = b a=a-b同理:同理:賦值運(yùn)算符賦值運(yùn)算符 以及以及 復(fù)合賦值運(yùn)算符復(fù)合賦值運(yùn)算符的運(yùn)算優(yōu)先級(jí)比的運(yùn)算優(yōu)先級(jí)比算術(shù)運(yùn)算符算術(shù)運(yùn)算符優(yōu)先級(jí)低,優(yōu)先級(jí)低,運(yùn)算結(jié)合性為運(yùn)算結(jié)合性為自右向左。自右向左。等價(jià)于等價(jià)于 x=x/9
28、第38頁/共58頁第三十九頁,共58頁。例例: a+=a-=a*a如果如果(rgu) a 初值為初值為 2,表達(dá)式結(jié)果?,表達(dá)式結(jié)果? a+=a-=a*a結(jié)果結(jié)果(ji gu) a 的值為的值為 - 4表達(dá)式的結(jié)果表達(dá)式的結(jié)果(ji gu)也為也為 - 4第39頁/共58頁第四十頁,共58頁。2.4.9 逗號(hào)逗號(hào)(duho)運(yùn)算符和逗號(hào)運(yùn)算符和逗號(hào)(duho)表達(dá)式表達(dá)式逗號(hào)逗號(hào)(duho)運(yùn)算符:,運(yùn)算符:, 逗號(hào)逗號(hào)(duho)表達(dá)式:表達(dá)式: ,. ,如如: a=3*5 , a*4 , a+5逗號(hào)逗號(hào)(duho)運(yùn)算符優(yōu)先級(jí)最低,結(jié)合性:自左向右運(yùn)算符優(yōu)先級(jí)最低,結(jié)合性:自左向右求解過程
29、:求解過程:依次計(jì)算依次計(jì)算 、 . 的值。的值。逗號(hào)表達(dá)式的值:逗號(hào)表達(dá)式的值:為為 的值的值運(yùn)算結(jié)束后:運(yùn)算結(jié)束后:a 的值為的值為 15 整個(gè)表達(dá)式的值為整個(gè)表達(dá)式的值為 20第40頁/共58頁第四十一頁,共58頁。a=3*5, a*4x=(a=3, 6*3)賦值表達(dá)式賦值表達(dá)式x=a=3, 6*3逗號(hào)逗號(hào)(duho)表達(dá)式表達(dá)式例:如下例:如下(rxi)表達(dá)式,表達(dá)式, 運(yùn)算結(jié)束后運(yùn)算結(jié)束后 a=? x=? 表達(dá)式表達(dá)式=?a=15, 表達(dá)式表達(dá)式=60a=3, x=18, 表達(dá)式表達(dá)式=18a=3, x=3, 表達(dá)式表達(dá)式=18逗號(hào)逗號(hào)(duho)表達(dá)式表達(dá)式第41頁/共58頁第四十
30、二頁,共58頁。2.4.10 sizeof( ) 運(yùn)算符運(yùn)算符和表達(dá)式和表達(dá)式 例例 int i ; double x; sizeof(int) sizeof(i) sizeof(double) sizeof(x)格式:格式: sizeof (類型類型(lixng)標(biāo)識(shí)標(biāo)識(shí)/變量名變量名) 功能:功能: 求某類型求某類型(lixng)變量所占字節(jié)數(shù)變量所占字節(jié)數(shù)結(jié)果均為結(jié)果均為 4結(jié)果均為結(jié)果均為 8第42頁/共58頁第四十三頁,共58頁。例:例: 求求 & 2.4.11 邏輯邏輯(lu j)表達(dá)式運(yùn)算優(yōu)化時(shí)的副作用表達(dá)式運(yùn)算優(yōu)化時(shí)的副作用從左向右掃描,計(jì)算從左向右掃描,計(jì)算,當(dāng)當(dāng) 為
31、真時(shí),繼續(xù)為真時(shí),繼續(xù)(jx)計(jì)算計(jì)算 當(dāng)當(dāng) 為假時(shí),即能確定整個(gè)表達(dá)式的為假時(shí),即能確定整個(gè)表達(dá)式的值為假,則停止計(jì)算值為假,則停止計(jì)算第43頁/共58頁第四十四頁,共58頁。例:例:求求 | | 從左向右掃描,計(jì)算從左向右掃描,計(jì)算,當(dāng)當(dāng) 為假時(shí),繼續(xù)計(jì)算為假時(shí),繼續(xù)計(jì)算 當(dāng)當(dāng) 為真時(shí),即能確定整個(gè)為真時(shí),即能確定整個(gè)(zhngg)表達(dá)表達(dá)式的值為真,則停止計(jì)算式的值為真,則停止計(jì)算第44頁/共58頁第四十五頁,共58頁。課堂練習(xí)課堂練習(xí)int x , y , z , w ; 輸出輸出(shch)結(jié)結(jié)果?果?x = y = z = 1 ;w = +x | +y & +z ;cout
32、 x t y t z n ;cout w n ;輸出輸出(shch): 2 1 1 1第45頁/共58頁第四十六頁,共58頁。2.5 類型轉(zhuǎn)換類型轉(zhuǎn)換2.5.1 賦值時(shí)的自動(dòng)賦值時(shí)的自動(dòng)(zdng)類型轉(zhuǎn)換類型轉(zhuǎn)換 如果如果(rgu)賦值運(yùn)算符兩側(cè)的類型不一致,則遵循賦值運(yùn)算符兩側(cè)的類型不一致,則遵循以下幾條原則進(jìn)行類型轉(zhuǎn)換后賦值。以下幾條原則進(jìn)行類型轉(zhuǎn)換后賦值。1. 整型變量整型變量實(shí)型數(shù)據(jù)實(shí)型數(shù)據(jù), 舍棄舍棄(sh q)小數(shù)小數(shù)(無四舍五入無四舍五入)。int i=3.96 ; i 為為 32. 實(shí)型變量實(shí)型變量整型數(shù)據(jù)整型數(shù)據(jù), 數(shù)值不變數(shù)值不變, 有效數(shù)位增加。有效數(shù)位增加。float
33、 f=23 ; f 為為 23.0 double d=23 ; d 為為 23.0第46頁/共58頁第四十七頁,共58頁。3整型數(shù)據(jù)整型數(shù)據(jù)(shj)之間相互賦值之間相互賦值 整型數(shù)據(jù)類型有:整型數(shù)據(jù)類型有:signed char unsigned charsigned short unsigned shortsigned int unsigned intsigned long unsigned long各種類型的整型數(shù)占用的字節(jié)數(shù)是不同的,其二進(jìn)制位數(shù)有各種類型的整型數(shù)占用的字節(jié)數(shù)是不同的,其二進(jìn)制位數(shù)有長(zhǎng)有短。它們之間相互賦值,其實(shí)就是它們內(nèi)存長(zhǎng)有短。它們之間相互賦值,其實(shí)就是它們內(nèi)存(n
34、i cn)數(shù)數(shù)據(jù)之間的賦值,分兩種情況。據(jù)之間的賦值,分兩種情況。下面以下面以 int 型數(shù)據(jù)與型數(shù)據(jù)與 char 型數(shù)據(jù)之間的賦值進(jìn)行型數(shù)據(jù)之間的賦值進(jìn)行(jnxng)說明:說明:第47頁/共58頁第四十八頁,共58頁。 將將 int 型變量賦給字符型變量賦給字符(z f)型變量時(shí)型變量時(shí) (長(zhǎng)長(zhǎng)短短) 方法:截取低位賦值方法:截取低位賦值例:例:signed char c1=250 ; c1真值為真值為 -6 250 為為int型常數(shù)型常數(shù), 32 位:位:00000000 1111 1010 c1: 1111 1010 第48頁/共58頁第四十九頁,共58頁。將字符型變量賦給將字符型變量
35、賦給 int 型變量時(shí)型變量時(shí)(短短長(zhǎng)長(zhǎng)),又分成又分成(fn chn)兩種情況:兩種情況: 有符號(hào)的字符型數(shù)據(jù)有符號(hào)的字符型數(shù)據(jù)整型變量整型變量(binling) 需符號(hào)需符號(hào)位擴(kuò)展位擴(kuò)展 例:例:char c1=15 ; int i ; i=c1 ; i 為整型變量為整型變量 32 位:位: 00000000 0000 1111 c1(正號(hào)正號(hào)): 0000 1111擴(kuò)展擴(kuò)展(kuzhn)正號(hào),結(jié)果正號(hào),結(jié)果i 的真值為的真值為 15 15 為整型常數(shù)為整型常數(shù) 32 位:位: 00000000 0000 1111 第49頁/共58頁第五十頁,共58頁。 char c1=250 ; int
36、 i ; i=c1 ; i 為整型變量為整型變量 32 位:位: 11111111 1111 1010 250 為整型常數(shù)為整型常數(shù) 32 位:位: 00000000 1111 1010 c1(負(fù)號(hào)負(fù)號(hào)): 1111 1010 擴(kuò)展負(fù)號(hào)擴(kuò)展負(fù)號(hào)(f ho),結(jié)果,結(jié)果 i 的真值為的真值為 - 6第50頁/共58頁第五十一頁,共58頁。無符號(hào)的字符型數(shù)據(jù)無符號(hào)的字符型數(shù)據(jù)整型變量整型變量(binling) 前面補(bǔ)前面補(bǔ) 0 unsigned char c1=250 ; int i ; i=c1 ; i 為整型變量為整型變量 32 位:位: 00000000 1111 1010 前面前面(qin
37、 mian)補(bǔ)補(bǔ)0,結(jié)果,結(jié)果 i 的真的真值為值為 250250 為整型常數(shù)為整型常數(shù) 32 位:位: 00000000 1111 1010 c1(無符號(hào)數(shù)無符號(hào)數(shù)): 1111 1010 第51頁/共58頁第五十二頁,共58頁。2.5.2 各種類型運(yùn)算量混合各種類型運(yùn)算量混合(hnh)運(yùn)算時(shí)的自動(dòng)類型轉(zhuǎn)換運(yùn)算時(shí)的自動(dòng)類型轉(zhuǎn)換 C 語言的數(shù)值型數(shù)據(jù)語言的數(shù)值型數(shù)據(jù)(常量常量(chngling)變量變量)包包括括:整型整型int, short int, long int, unsigned int, unsigned short, unsigned long實(shí)型實(shí)型float, double字符字符(z f)型型char, un
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度退股及員工持股計(jì)劃合同
- 個(gè)人股權(quán)轉(zhuǎn)讓合同2025年度含業(yè)績(jī)對(duì)賭條款
- 二零二五年度臨時(shí)項(xiàng)目經(jīng)理職務(wù)聘用與成果轉(zhuǎn)化合同
- 二零二五年度旅游團(tuán)隊(duì)保險(xiǎn)責(zé)任免除聲明
- 電線電纜購銷合同
- 管理層勞動(dòng)合同工資
- 個(gè)人數(shù)字資產(chǎn)管理協(xié)議
- 全新池塘出租協(xié)議
- 月餅產(chǎn)品代銷合同
- 鄉(xiāng)村旅游發(fā)展策略與實(shí)施方案
- 2025年中央一號(hào)文件高頻重點(diǎn)考試題庫150題(含答案解析)
- 接觸隔離標(biāo)準(zhǔn)操作流程
- 港股基礎(chǔ)知識(shí)
- 2025年溫州市甌海旅游投資集團(tuán)有限公司下屬子公司招聘筆試參考題庫附帶答案詳解
- 2025年天津三源電力集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 2025年上半年浙江嘉興桐鄉(xiāng)市水務(wù)集團(tuán)限公司招聘10人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年腹腔穿刺術(shù)課件 (1)2
- (八省聯(lián)考)2025年高考綜合改革適應(yīng)性演練 物理試卷合集(含答案逐題解析)
- 2024年干式電力電容器項(xiàng)目可行性研究報(bào)告
- 河南12系列建筑設(shè)計(jì)圖集一(12YJ1)
- 2025年度智能倉儲(chǔ)管理系統(tǒng)軟件開發(fā)合同6篇
評(píng)論
0/150
提交評(píng)論