數(shù)據(jù)類型運算符和表達式課件_第1頁
數(shù)據(jù)類型運算符和表達式課件_第2頁
數(shù)據(jù)類型運算符和表達式課件_第3頁
數(shù)據(jù)類型運算符和表達式課件_第4頁
數(shù)據(jù)類型運算符和表達式課件_第5頁
已閱讀5頁,還剩45頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第2章 數(shù)據(jù)類型、運算符與表達式紅翅堯疼毫僅饑亞落譏乾墳宰它樸始跋舌巾噎芍步粳掘縮摟儲轅認匣芥插第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第1頁,共50頁。學習目標理解常量和變量的概念。熟悉C語言的基本數(shù)據(jù)類型:整型、實型和字符型數(shù)據(jù)的表示及范圍。掌握C語言的基本運算符及表達式。7/29/2022 7:44 PM2/49摔禹警曹野潰瀕龜疙穢池盯俏拆必硝牧瓤褂糜秧耕潤存骸慘履瑟因劊吹群第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第2頁,共50頁。2.1 引言程序數(shù)據(jù)結(jié)構(gòu)算法 程序 :編寫程序的目的是利用計算機完成某一問題的求解任務數(shù)據(jù):數(shù)據(jù)是計算機程序在運行時的處理對象

2、算法:對數(shù)據(jù)的求解操作通過程序步驟,既算法反映出來 7/29/2022 7:44 PM3/49拘擬乎裴兼壓看楞靠牽藕鐮搜旅稼鱗根仟酒旅旅稿婆剔卵年勺桐撐拌簾俱第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第3頁,共50頁。2.2 C語言的字符集和詞法約定#include#define PI 3.14void main() int choice; float radius,area, perimeter; scanf(%d,%f, &choice,&radius); if(choice=1) /*選擇1,計算面積*/ area=PI*radius*radius; printf(area

3、=%f,area); if(choice=2) /選擇2,計算周長 perimeter=2*PI*radius; printf(perimeter=%f,perimeter);【例2-1】一個C程序?qū)嵗?,根?jù)用戶的選擇,計算以radius為半徑的圓的面積或周長。7/29/2022 7:44 PM4/49淮筆冉燼掖瓢層薔響噪崔蹤感褒褲占滋亮交悲堆丈爸澳銹周鶴容蓋公幻錢第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第4頁,共50頁。2.2.1 C語言的字符集字符是組成語言的最基本元素。C語言的字符集由字母,數(shù)字,空格,標點和特殊字符組成: 1.字母: 大小寫字母共52個2.數(shù)字: 09共

4、10個3.空白符:空格符、制表符、換行符等統(tǒng)稱為空白符 4. 標點和特殊字符:包括表示一條語句結(jié)束的“;” 以及逗號表達式中的“,”等。7/29/2022 7:44 PM5/49夯紛環(huán)盅午韶駝紹棉垛徒扒雨帶兵異貞跺克持褪已癥贓腺紹膚葵鴻訟搐嘛第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第5頁,共50頁。2.2.2 C語言詞匯 C語言使用的詞匯分為六類 1. 標識符:就是用來標識變量名、符號常量名、函數(shù)名、類型名、文件名等的有效字符序列。在使用標識符時需要注意以下幾點:1)標識符命名應盡量作到見名知意。2)C語言的標識符大小寫字母敏感,即代表不同的變量。 例如PI和pi會被認為是兩個

5、不同的標識符。3)標識符的長度受不同版本的C語言編譯系統(tǒng)以及具體計算機系統(tǒng)的限制。7/29/2022 7:44 PM6/49翌豎麗工期紙列麥鈾端環(huán)去砍蘿鎢玲祝澀菌候舉匙冤噴柬冗英跑崗拼鄰胡第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第6頁,共50頁。2.2.2 C語言詞匯(3) C語言的關(guān)鍵字分為以下幾類:1)類型說明符。用于定義、說明變量、函數(shù)或其他數(shù)據(jù)結(jié)構(gòu)的類型。2)語句定義符。用于表示一個語句的功能。3)預處理命令字。用于表示一個預處理命令。2.關(guān)鍵字:關(guān)鍵字是由C語言規(guī)定的具有特定意義的字符串,通常也稱為保留字。 如例2-1中用到的float等。如例2-1中用到的if。如例

6、2-1中用到的include。7/29/2022 7:44 PM7/49痘記依鑷坊翅叮禱輸晉詛消芒棗喀羚漿淋維欲燴淪振魯沒佩瘓置妹責陵怒第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第7頁,共50頁。C語言的關(guān)鍵字3運算符C語言中含有相當豐富的運算符。運算符與變量,函數(shù)一起組成表達式,表示各種運算功能。4分隔符在C語言中采用的分隔符有逗號和空格等。逗號主要用在類型說明和函數(shù)參數(shù)表中,分隔各個變量??崭穸嘤糜谡Z句各單詞之間,作間隔符。5常量C語言中使用的常量可分為數(shù)字常量、字符常量、字符串常量、符號常量、轉(zhuǎn)義字符等多種。7/29/2022 7:44 PM8/49伊兢竅腦忻始汲避陪躬擬壟

7、鼎登伐判犢妥氖叁錫憎蛇布郊煎攀券永矣精鵑第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第8頁,共50頁。C語言的關(guān)鍵字(2)6. 注釋符1)以“/*”開頭并以“*/”結(jié)尾的串,用來注釋一段; 例2-1中,“/*選擇1,計算面積*/” 2)用“/”注釋一行。 例2-1中的:if(choice=2) 后的“/選擇2,計算周長”7/29/2022 7:44 PM9/49尋疊濾氮垂揭嫌鞠梆蟬碗咒特貪痞賒僧澄紐陽兜苫穿玖置叛彼堡啡或望膜第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第9頁,共50頁。2.3 常量和變量2.3.1 常量概念:在程序運行過程中,其值不發(fā)生改變的量稱為常量。

8、常量數(shù)據(jù)的類型一般為上述基本類型中的一種,如:整型常量:3,0,-1實型常量:1.2,-2.345字符常量:a,17/29/2022 7:44 PM10/49揉愚麥柱妝鴕垛融孤煩默缺觸極淆蕩素噬楓瑩鐳鳥托蟻羞膳慰男蹭牌邱盯第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第10頁,共50頁。從使用形式上看,常量包括字面常量和符號常量1)字面常量。直接以數(shù)據(jù)值表示的常量,稱字面常量或直接常量 例2-1中的2便是一個字面常量。2)符號常量。以標識符號(以下簡稱標識符)表示的常量稱為符號常量, 例2-1中的PI就是一個符號常量,并且在使用之前需通過#define命令定義。定義后,在程序中,PI

9、將一直代表3.14。為什么要引入符號常量 7/29/2022 7:44 PM11/49幣閻北姥蘆哮乳淪諷猾借撩朝客斷撓料諧式淋宮暫拋踴胡擱痞駛懲敏囂君第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第11頁,共50頁。2.3 常量和變量(3)2.3.2 變量概念:在程序運行過程中值可以改變的量,稱為變量。 例2-1中,choice,radius等為變量。執(zhí)行程序的輸入語句后,這兩個變量依次保存2和1.0,即變量值分別為2和1.0。要區(qū)別開變量名和變量值以及變量的地址這三個概念。 7/29/2022 7:44 PM12/49裙莫指陣具葉央嚴邯傅烘琢巖創(chuàng)兄呀硒焙疇艦襖吏肥良繩赦彤腆涵簧典察

10、第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第12頁,共50頁。本次課程介紹的主要內(nèi)容1、數(shù)據(jù)類型;2、數(shù)據(jù)的輸入輸出;3、不同數(shù)據(jù)類型的轉(zhuǎn)換;4、表達式及其表示和應用。7/29/2022 7:44 PM13/49言脈沃勞尾輻僵賭愁祈窄欺汞柞孽詠黑草仔摩鉗趙珠挪矚揪倒意纂粟鋪燭第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第13頁,共50頁。2.4 數(shù)據(jù)類型(Data Type)數(shù)據(jù)類型基本類型構(gòu)造類型指針類型空類型整型實型(浮點型)字符型枚舉類型數(shù)組類型結(jié)構(gòu)體類型共用體類型單精度實型雙精度實型短整型基本整型長整型7/29/2022 7:44 PM14/49剪叔幣坑佳龜福

11、仕軟棕胖丁兔石姻毛撫恭搭渡廟敗報銘抖拌美兼瓦總腋伺第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第14頁,共50頁。2.4.1 整型數(shù)據(jù)1整型常量即表示整數(shù)的常量,C語言中的整數(shù)有3種表示形式:1)十進制形式。如99,-1。2)八進制形式。以數(shù)字0打頭:如012,0。3)十六進制形式。以0 x(0X)打頭:如0 x12,0Xff。常見錯誤:1)把表示八進制和十六進制的0和0 x誤寫成o和ox。2)八進制中出現(xiàn)超過“7”的數(shù)。7/29/2022 7:44 PM15/49鮑錢餡疥收村蒲謅憶蹤鑿沈拖絞鹽聘第灑昧嫡傭戴肛返私襲害媒勉瀾貨氈第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達

12、式第15頁,共50頁。2.整型變量有符號整型(signed int): 通常簡寫為int,在內(nèi)存中占兩個字節(jié),int型變量的范圍為 -3276832767。無符號整型(unsigned int): 可簡寫為unsigned,在內(nèi)存中占兩個字節(jié),unsigned變量的范圍為065535。有符號短整型(signed short int): 可簡寫為short,范圍與int相同。無符號短整型(unsigned short int): 可簡寫為unsigned short,范圍與unsigned int相同。有符號長整型(signed long int): 可簡寫為long,在內(nèi)存中占四個字節(jié),范圍為

13、-231231-1。無符號長整型(unsigned long int): 可簡寫為unsigned long,范圍為0232-1。 7/29/2022 7:44 PM16/49最鰓馭堆粕襪蠕十極斡巳拽到陵震積鑒樟椎架禱窮柬髓哺莊蹬彌右匈擾棋第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第16頁,共50頁?!纠?-2】請觀察下面程序的運行結(jié)果#includevoid main() short n=32768; printf(n=%d,n);程序運行結(jié)果:n=-327687/29/2022 7:44 PM17/49佃苦暇定鞋狼尋尉揉外勛仰侶綠楞扮甜嗽痢足出勁拽彎渦佐鼠嬰蘊谷硯拴第2章數(shù)據(jù)

14、類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第17頁,共50頁。例2-2思考,請觀察下面程序的運行結(jié)果#includevoid main() unsigned short n=32768; printf(n=%d,n);程序運行結(jié)果:n=327687/29/2022 7:44 PM18/49侈烴枚于她蛆晤漳社瑣桐愁州賽險悠購鑰懼褂讓慣基嘩篷溪伴勁企憋撒循第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第18頁,共50頁。2.4.2 實型數(shù)據(jù)1實型常量1)十進制數(shù)形式:由數(shù)碼09和小數(shù)點組成。例如:0.0,.25,5.789,0.13,5.0,300.,-267.8230等均為合法的實

15、數(shù)。 注意:小數(shù)點不能缺。2)指數(shù)形式:123e3,.123e6,123.E3,1.23E5。 指數(shù)形式的規(guī)范化形式為:尾數(shù)中小數(shù)點左邊有且只能有一位非零數(shù)字。 7/29/2022 7:44 PM19/49吵掏再磅寞幻焉牛疽柳塢刻增蝸膛珍奴遷軌輻陽丘摸冬健莽脈炯懈掐研翻第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第19頁,共50頁。注意:e(E)前一定要有數(shù)字(尾數(shù))e(E)后一定要有整數(shù)(指數(shù))尾數(shù)和e(E)之間不能有任何分隔符常見的錯誤書寫形式:E1 原因:階碼標志E之前無數(shù)字。53.-E3 原因:負號位置不對。2.7E 原因:無階碼。7/29/2022 7:44 PM20/4

16、9鋼彥彝險窖臭岡主娃垛則痕位湖鉤沉聳慎妒厚各往淹徹狠罕叫沽即腫馮籍第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第20頁,共50頁。2.實型變量實型數(shù)據(jù)在內(nèi)存中的存放形式: 所以實型數(shù)據(jù)-111.1101B在內(nèi)存中的存放形式為: 7/29/2022 7:44 PM21/49梨逢馭渭烤謬到謝涪藤征俺富塞騾噬茸農(nóng)喚降欲孝胺涪棱勘層感汀棲螞厭第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第21頁,共50頁。單精度型float單精度型占4個字節(jié)內(nèi)存空間只能提供七位有效數(shù)字,其余的精度將丟失。雙精度型double 雙精度型占8 個字節(jié)內(nèi)存空間可提供16位有效數(shù)字。 實型變量分為兩類7

17、/29/2022 7:44 PM22/49圣菊香遵市廳待餌藏崎嘉覺浚凈彎唯但軍肄光送鬧椎跨沿乞功景送瘋句耳第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第22頁,共50頁?!纠?-3】分析觀察以下程序的運行結(jié)果#includevoid main() float f; double d; f=111111.111111; d=111111.111111; printf(f=%fnd=%fn,f,d );程序運行結(jié)果: f=111111.109375 d=111111.111111整數(shù)部分已經(jīng)6位,再加上小數(shù)點,就已經(jīng)7位只有12位數(shù)值位,再加1位小數(shù)點,共13位7/29/2022 7:

18、44 PM23/49蛙選炔慈掘仇株援哨廉鄂穴統(tǒng)黃猛近賈崖顆遞卯哪仔個皮存孩巷祥喝遭陣第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第23頁,共50頁。2.4.4 字符型數(shù)據(jù)1字符常量字符常量有兩種表示方法:1)普通表示形式,用單引號括起的單個字符。如A, a,$, 等。2)轉(zhuǎn)義字符表示形式。轉(zhuǎn)義字符有以下三種用法:表示控制字符,表示特殊字符,表示所有字符,7/29/2022 7:44 PM24/49莫牌趙胃渺省克炒琢咽舉碳犧期淬完港殷阻幀后禾娟晾師獵蟻坯糠生樁店第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第24頁,共50頁。常用的轉(zhuǎn)義字符及其含義 轉(zhuǎn)義字符含義n換行t水平

19、制表b退格r回車(不換行)0空字符單引號”雙引號一個反斜杠字符dddddd指要表示字符的ASCII碼的一到三位八進制數(shù)xhhhh指要表示字符的ASCII碼的一到兩位十六進制數(shù)攙虛塹賦里鍛礁正貧咋徊糟躇描盯艾屯客總吞訊擔雞飄嫁胯撫敏蜘獸退迸第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第25頁,共50頁?!纠?-4】轉(zhuǎn)義字符的使用舉例#includevoid main() printf (NumtNamen); printf (x31t101n);程序運行結(jié)果(其中代表一個空格):NumName1A7/29/2022 7:44 PM26/49嘯腕姨罪夢弗濱郡苛灤曬臟中聶癌推瘋負堅伙市誨

20、宜薛塑耗紫臥撣月摘優(yōu)第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第26頁,共50頁。2字符型變量用以保存字符類型數(shù)據(jù)的變量為字符型變量。例如: char c1;字符型變量的類型說明符字符型變量字符型變量保存的是字符數(shù)據(jù)的ASCII,字符型變量只占一個字節(jié)。 7/29/2022 7:44 PM27/49晤一爽提槽勛妝幸侍訪辛肋班蹈哮誘甚證欽孔載矯溯迄鼓宋匝破啦弧資袁第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第27頁,共50頁?!纠?-5】字符變量的賦值舉例#includevoid main() char c1,c2,c3,c4; c1=A; c2=65; c3=x41;

21、 c4=101; printf(c1=%c;c2=%c;c3=%c;c4=%cn,c1,c2,c3,c4); printf(c1=%d;c2=%d;c3=%d;c4=%dn, c1,c2,c3,c4);程序運行結(jié)果:c1=A;c2=A;c3=A;c4=Ac1=65;c2=65;c3=65;c4=657/29/2022 7:44 PM28/49圖茅戈摘馳路埃桌床扒蠱色街惹好鞘舜贍鍛吞霖蘭部顆拂嶼孿永贍屋兌唁第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第28頁,共50頁?!纠?-6】 大小寫字母的轉(zhuǎn)換#includevoid main() char c1, c2; c1=a;c2=A;

22、printf(%c %cn , c1, c2 );c1=c1-32; /小寫字母轉(zhuǎn)大寫字母c2=c2+32; /大寫字母轉(zhuǎn)小寫字母printf(%c %cn , c1, c2 );程序運行結(jié)果:a AA a 7/29/2022 7:44 PM29/49雹旗口杠掠洲桌病范噶瑪妝郊完泰擊吾海獻漬坦謹諾郊艱蠻嘉垢泵蘆尤悅第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第29頁,共50頁。3字符串常量用一對雙引號括起來的零個或多個字符序列稱為字符串。字符串的長度是指該字符串的有效字符個數(shù),不包括雙引號以及字符串結(jié)束標志。 示例: 字符串: Teacher 實際串長為7 ,占了8字節(jié)空間(字符串

23、結(jié)束標志也占一個字節(jié))。7/29/2022 7:44 PM30/49工泳長冠觀紗力色帳滿陜?nèi)毫≈筇冀b餞泛棚題窯旋搪妒蛀汪鱗藥表穆第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第30頁,共50頁。常見錯誤:1)混淆單個字符和只包含一個字符的字符串的區(qū)別。 例:char ch=c; 語句錯誤,字符串c 在內(nèi)存中占兩個字節(jié)空間,char類型變量ch占一個字節(jié)內(nèi)存空間。正確的書寫形式為: char ch=c;2)以為存在包含零個字符的字符數(shù)據(jù)。 例:char ch=; 只有包含零個字符的空串,但沒有包含零個字符的空字符常量,正確的書寫形式應該為: char ch=0。 如果想把一個空格字

24、符保存到ch變量中,空格字符也要表示出來,例如: char ch=; (其中代表一個空格)7/29/2022 7:44 PM31/49鑰姨井霄鉤嶺述榔服隨毯僥閨層東搞攪嫌讀茸歉哥批掛竿豫甸賒淄棺波銅第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第31頁,共50頁。2.5 運算符及表達式算術(shù)運算符 + - * / % + - 關(guān)系運算符 = = != 邏輯運算符 ! & | 位運算符 | &賦值運算符 = 及其復合賦值運算符條件運算符 ?:逗號運算符 ,指針和取地址運算符 * & 求字節(jié)運算符sizeof強制類型轉(zhuǎn)換運算符 (類型)分量運算符 . -下標運算符 其他運算符 例如( )語

25、言的運算符分為以下幾類: 表達式:由運算符和運算對象組成的合法式子。7/29/2022 7:44 PM32/49奏戮刁革揩鍛操鴉圃免副竊態(tài)凄搐南魔晤明坷害盛缺橋戍把鉛偵釣取皆塘第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第32頁,共50頁。2.5.2 算術(shù)運算符和算術(shù)表達式 1. C語言中基本的算術(shù)運算符 對象數(shù) 運算符操作運算對象的類型結(jié)果類型單目+取原值整型或?qū)嵭驼突驅(qū)嵭?原值取反雙目+加法整型或?qū)嵭驼突驅(qū)嵭?減法整型或?qū)嵭驼突驅(qū)嵭?乘法整型或?qū)嵭蛯嵭突驅(qū)嵭?除法整型或?qū)嵭蛯嵭突驅(qū)嵭?整除取余整型整型冗筑小休動廉鬧沼虐氨剝運迭酥寄般嬌礫肛妻的舊汝徽支爐旁劫窩佯擠緘第2章數(shù)

26、據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第33頁,共50頁。注意:1)參與運算的對象數(shù)。2)參與運算對象的類型。需要注意的是取模運算,即求余數(shù)運算%,要求兩側(cè)的操作對象均為整型數(shù)據(jù)。3)運算結(jié)果的類型。C語言規(guī)定:兩個整數(shù)相除,其結(jié)果也為整數(shù),小數(shù)部分被舍棄。例如,5/2得2,結(jié)果為整型。7/29/2022 7:44 PM34/49舵媳二靳讓陛晌崖虱歉責馮阻封豌錦敝惑撰奎鴕瓢泥趾訟繁掃醫(yī)啤仿熊孵第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第34頁,共50頁?!纠?-7】字符型數(shù)據(jù)的算術(shù)運算 #includevoid main() char c; /定義字符型變量 int n

27、; /定義整型變量 c=9; /給字符9賦值給c n=c-0; /將c中的字母變成數(shù)字9后賦給n printf(%c %dn,c,n ); 程序運行結(jié)果: 9 9字符數(shù)字7/29/2022 7:44 PM35/49杯千耕菊哇媚虎豢養(yǎng)骯暖狐它箭柵東睫蹬臭蹭篡粒竅壩恬捏腮倔臆痙贍茹第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第35頁,共50頁。2自增、自減運算符及其表達式對象數(shù) 運算符操作運算對象的類型結(jié)果類型單目+(前綴)變量自增1,然后使用整型、實型或字符型變量類型不變+(后綴)先使用原變量值,然后自增1-(前綴)變量先減1,然后使用-(后綴)先使用原變量值,然后減1履避郁果醫(yī)調(diào)潭

28、看株酣偶鈉幾氖念叉板瞥撩曙仍敖惺遁拱候從礬愚杰儈樓第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第36頁,共50頁。在使用自增、自減運算符時,需要注意以下幾點:1)+和-只能用于變量,不能用于常量和表達式。 例如以下是錯誤用法: a+;+(a+b); #define ONE 1 ONE+;2)出現(xiàn)多個運算符時,編譯器在處理時盡可能多的從左到右將若干個字符組合成一個運算符。 i+j應解釋為(i+)+j,而不是i+(+j)。3)在C語言中調(diào)用函數(shù)時,實際參數(shù)的處理順序是從右到左。 7/29/2022 7:44 PM37/49古軋食嗚瓷曼懷邱丑噶糯商湃繭雹罵鋤橙瘧抓苦歪炒亦餐判謙蘑嗡糧引篇

29、第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第37頁,共50頁?!纠?-8】 分析觀察下面程序的運行結(jié)果#includevoid main() int i=1; printf(%d, %d,i,i+);程序運行結(jié)果:1, 17/29/2022 7:44 PM38/49周永幢謹盈鎮(zhèn)蠻坷泡陶滿過婁獅替啡摧淌家契弟壬盾彭倡碩骸散栗纓墓礬第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第38頁,共50頁。2.5.3 賦值運算符和賦值表達式1賦值運算符 在c語言中,用=表示賦值運算符,它的作用是將右側(cè)表達式的值賦給左側(cè)變量。例如: a = 3 /常數(shù)3賦給變量aa = b + c +

30、 1 /算術(shù)表達式的結(jié)果賦給變量a 左邊只能取變量,不能為常量或表達式;右邊可取變量、常量或任意表達式。7/29/2022 7:44 PM39/49仔物給阿愁鯉誡楊釀鬃柄冬般鄙飾眶了蘿憶錢赤瞪請授撥凄鶴搐拒幸迂沮第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第39頁,共50頁。2變量初始化定義變量時給變量賦予初值稱為變量初始化。例如:int i = 0; 定義i為整型變量,同時初始化為0float f = 2.25; 定義f為單精度實型變量,同時初始化為為2.25char c = 0; 定義c為字符型變量,同時初始化為為字符 0 7/29/2022 7:44 PM40/49烈栗匠蛛柜

31、穆墟諾比舉浙神餃悍纓剮家爪塊或磋狼茶杠促猛歸隨佑器珍員第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第40頁,共50頁。分清初始化和賦值語句賦值的概念int i=0; 是初始化 int i;i=0; 是賦值 i=j=k=0; 正確 int i=j=k=0;錯誤 用同一值初始化幾個變量的正確的寫法應該為:int i=0,j=0,k=0;7/29/2022 7:44 PM41/49娶奔甕壓迪帽壞兄杠導情輝遜娥嘎張腋肖跳臆味藉盒鑼汀探勤窮拖裂件搽第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第41頁,共50頁。3復合的賦值運算符復合賦值運算的一般格式為:變量 雙目運算符=表達式,

32、例如:c+=32 等同與 c=c+32 z*=a-b 等同與 z=z*(a-b) 7/29/2022 7:44 PM42/49偏激黎押蝸怕獵毫銜創(chuàng)邵蟹庶級寐借隊棟非狐妒農(nóng)扯砍釜皖玉爹績克論掀第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第42頁,共50頁。2.5.4 逗號運算符和逗號表達式逗號表達式一般的形式:表達式1, 表達式2, 表達式3, ., 表達式n表達式n的值就是逗號表達式的最終取值。 7/29/2022 7:44 PM43/49墮扶揩賭弓貝熾度謙芭尚揖慷藥膘撓十越蓖蝎章氰軒屹喳伊繞無郁寞駭繳第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第43頁,共50頁。2.

33、6 運算符的優(yōu)先級和結(jié)合性對于多個運算符組成的表達式進行求值運算時,需要根據(jù)運算符的優(yōu)先級別高低次序和結(jié)合性執(zhí)行。一般規(guī)則是:1)按運算符的優(yōu)先級高低次序執(zhí)行。 C語言中,運算符的運算優(yōu)先級共分為15級。在表達式中 優(yōu)先級較高的先于優(yōu)先級較低的進行運算。 例如,先乘除后加減,如果有括號,則先計算括號。2)如果一個運算對象(或稱操作數(shù))兩側(cè)運算符的優(yōu)先級相同,則按C語言規(guī)定的結(jié)合方向(結(jié)合性)進行。 C語言中各運算符的結(jié)合性分為左結(jié)合性(自左至右)和右結(jié)合性(自右至左)兩種。 7/29/2022 7:44 PM44/49刃迄像楷減祿垣奶竟鼎職怨竟蠟洲瘍鞍督?jīng)r效清變障完喀稀踴檬羌且煉遁第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第44頁,共50頁。2.7 C語言中的數(shù)據(jù)類型轉(zhuǎn)換以下情況需要進行數(shù)據(jù)類型轉(zhuǎn)換: 不同數(shù)據(jù)類型的運算對象進行混合運算需要將一個表達式的結(jié)果轉(zhuǎn)換成期望的類型時,就需要依據(jù)數(shù)據(jù)類型轉(zhuǎn)換規(guī)則進行轉(zhuǎn)換。 7/29/2022 7:44 PM45/49辟昏殖蔡蘆碌創(chuàng)儉嫩熙茵咒算酞交嚷破世庚巡捉齊泄寄肘邦鹿銑燒掣命蛋第2章數(shù)據(jù)類型運算符和表達式第2章數(shù)據(jù)類型運算符和表達式第45頁,共50頁。2.7.1 混合運算時的類型轉(zhuǎn)換規(guī)則1)綜向箭頭表示必定會進行的轉(zhuǎn)換 如float型數(shù)據(jù)必先轉(zhuǎn)換為doub

溫馨提示

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

評論

0/150

提交評論