版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、 數(shù)據(jù)類型、運算符和表達式 第三章 數(shù)據(jù)類型、運算符和表達式 第一節(jié) c的數(shù)據(jù)類型 第二節(jié) 常量 第三節(jié) 變量 第四節(jié) 算術運算符和算術表達式 第五節(jié) 賦值運算符和賦值表達式 第六節(jié) 逗號運算符和逗號表達式 第七節(jié) 各類數(shù)據(jù)間的混合運算第一節(jié) c的數(shù)據(jù)類型 基本類型 整型 字符型 實型(浮點型) 單精度、雙精度 構造類型 數(shù)組類型 結構體類型 共用體類型 指針類型 空類型第二節(jié) 常量 2.1 符號常量 2.2 整型常量 2.3 實型常量 2.4 字符型常量 2.5 字符串常量2.1 符號常量用一個標識符代表一個常量 #define pi 3.14159 main( ) float r,s,ar
2、ea; scanf(%f,&r); s=2*pi*r; area=pi*r*r; printf(s=%7.2f,area=%7.2f,s,area); 三種形式表示: 十進制:如 123 -60 0 八進制:以0開始,如 0123 十六進制:以0 x開始,如0 x1232.2 整型常量2.3 實型常量 小數(shù)形式:如 123.0 .123 0.0 12.5 指數(shù)形式:如123e2 123e2 單引號括起來的一個一個字符。如: a 字符常量的值是一個數(shù)字值。如字符常量 0 ,其ascii為48,所以存儲的實際值為48。 字符常量可以象整數(shù)一樣參與運算。 2.4 字符型常量轉義字符 功能 轉
3、義字符 功 能 a 響鈴 反斜杠字符 b 退一格 單引號字符 f 走紙換頁 雙引號字符 n 換行 ? 問號 r 回車 ooo 13位8進制數(shù)代表的字符 t 橫向跳格 xhh 12位16進制數(shù)代表的字符 main() char c1=101,c2= x42; printf(atbctbabcn); printf(xyzt%c %c,c1,c2); 結果?結果?a bc abc xyz a b main()printf(ab ct derftgn);printf(htibbjk);結果?結果?打印機上的結果:fabcgdehjik 顯示屏上的結果:fgdehjk 雙引號括起來的字符序列。 如how
4、 are you,0等 字符串在存儲時末尾被自動加上字符0 字符常量與只包含一個字符的字符串常量的區(qū)別2.5 字符串常量第三節(jié) 變量 3.1 變量的概念 3.2 變量名 3.3 整型變量 3.4 實型變量 3.5 字符型變量3.1 變量的概念 程序運行過程中其值可以改變的量,系統(tǒng)為程序中的每一個變量開辟一個存儲單元,如: main( ) int a; a=2; printf(a=%dn,a); a=4; printf(a=%dn,a); 程序運行結果?3.2 變量名 標識符:用來標識變量名、符號常量名、數(shù)組名、函數(shù)名、文件名的有效字符序列。關鍵字預定義標識符用戶定義標識符 字母或下劃線開頭,后
5、跟字母、數(shù)字和下劃線組成。 變量要先定義后使用 下列字符串中可以做c語言程序中的標識符的有哪些? print _3id oodb iam 3pi line# str_1 his.age while abc3.3 整型變量1、分類fint 整型fshort int(或short) 短整型flong int(或long) 長整型funsigned int 無符號整型funsigned short 無符號短整型funsigned long 無符號長整型2、各類型數(shù)據(jù)長度、取值范圍各類型數(shù)據(jù)長度、取值范圍 所占位數(shù)所占位數(shù) 取值范圍取值范圍 int 16 -3276832767 short 16 -3
6、276832767long 32 -21億億21億億unsigned int 16 065535 unsigned short 16 065535 unsigned long 32 042億億 3、整型變量的定義 所有的變量需先定義類型int a,b,c; /*指定a,b,c為整型變量*/unsigned count; /*指定lower為無符號整型變量*/long s; 有些變量可以預先設置初值:int a=0,b,c; /*指定a,b,c為整型變量,a的初值為0*/int a=0,b=0,c=0; /*指定a,b,c為整型變量,a、b、c的初值為0*/3.4 實型變量1、分類 所占位數(shù)所占
7、位數(shù) 取值范圍取值范圍f float 單精度 32 -3.4*10-38 3.4*1038 f double 雙精度 64 -1.7*10-308 1.7*10308 f long double長雙精度 128 -1.2*10-4932 1.2*1049322、變量的定義float x,y; /*指定x,y為單精度實型變量*/double z; /*指定z為雙精度實型變量*/3.5 字符變量1、變量的定義char c1,c2; /*指定c1,c2為字符型變量*/2、字符型數(shù)據(jù)的存儲以ascii碼存儲,存儲形式與整型一樣,可以和整數(shù)進行運算main()char c1,c2;c1=a;c2=b;c
8、1=c1-32;c2=c2-32;printf(“%c,%cn”,c1,c2);printf(“%d,%dn”,c1,c2);結果:a,b 65,66第四節(jié) 算術運算符和算術表達式4.1 基本算術運算符4.2 運算符的優(yōu)先級和結合性4.3 自增、自減運算符4.1 基本算術運算符(加法運算或正號運算符)(減法運算或負號運算符)* (乘法運算符)(除法運算符)% (求余運算符,或稱模運算符)從左到右從左到右4.2 運算符的優(yōu)先級和結合性 算術表達式 用算術運算符和括號將運算量連接起來的式子稱為算術表達式。 運算符有優(yōu)先級和結合性 在求表達式的值時,要按照優(yōu)先級的高低依次計算 如果運算符兩側優(yōu)先級相
9、同,則按規(guī)定的結合方向進行。 結合性- (負號運算符)* / % + - (加減運算符) 我最高! 我最低!4.3 自增、自減運算符 +運算符的作用是使變量的值增1。 -運算符的作用是使變量的值減1。 常見的用法有:+i , -i 在使用i前,使i的值加(減)1i+ , i- 在使用i后,使i的值加(減)1 已知 i=5(1)j=i+; j=? i=? (2)j=+i; j=? i=? 5666注意: 1、自增和自減運算符只能用于變量,表達式(x+y)+是不合法的。2、自增和自減運算符的結合方向是“自右向左”。如表達式 -i+ 等價于 -(i+)。3、(i+)+(i+)+(i+)結果?4、(+
10、i)+(+i)+(+i)結果?5、i+j是(i+)+j還是i+(+j)?6、printf(“%d”,i,i+)結果第五節(jié) 賦值運算符和賦值表達式 5.1 賦值運算符 5.2 復合的賦值運算符 5.2 賦值表達式5.1 賦值運算符 簡單的賦值就是把一個表達式的值賦給一個變量。 例如: i = 5 i = j + 15.2 復合的賦值運算符 在賦值符“=”之前加上其它運算符,可以構成復合的運算符。 例如:i + = 2 等價于 i = i + 2 a * = b + 5 等價于 a = a * (b + 5)x% = 3 等價于 x = x%35.3 賦值表達式 由賦值運算符將一個變量和一個表達式
11、連接起來的式子稱為賦值表達式。 形式: 變量賦值運算符表達式 例如:x=3 y=x+3 對賦值表達式求解的過程是:將賦值運算符右側的表達式的值賦給左側的變量。賦值表達式的值就是被賦值的變量的值。 結合性從右向左從右向左 注意: 一般形式的賦值表達式中的“表達式”又可以是一個賦值表達式。如: a=b=8按照從右到左的結合性等價于a=(b=8) 賦值表達式也可以包含復合的賦值運算符。 設a的值為6,計算a+=a-=a*a 先進行a*a的計算,結果為36 再進行a-=36的計算,相當于a=a-36=-30 最后進行a+=-30的計算,相當于a=a-30=-60 第六節(jié) 逗號運算符和逗號表達式 在逗號
12、表達式中,逗號是一種運算符。 形式如下 表達式表達式1 1,表達式,表達式2 2 由逗號隔開的一對表達式從左向右進行計算,其求解過程為:先求解表達式1,再求表達式2,整個逗號表達式的值是表達式2的值。 逗號運算符是所有運算符中級別最低的。 例如 a=4*6,a+5 整個逗號表達式的值為29。 注意一個逗號表達式又可以與另一個表達式組成一個新的逗號表達式,例如: (a=4*6,a+5),a+6 整個表達式的值為30。第七節(jié) 各類數(shù)據(jù)間的混合運算 c語言允許數(shù)據(jù)值從一種類型轉換成另一種類型。在進行運算時,不同類型的數(shù)據(jù)要先轉換成同一類型,然后進行運算。轉換的規(guī)則按圖所示。 高 double float long unsigned 低 int char, short 說明: 橫向向左的箭頭表示當運算對象為不同類橫向向左的箭頭表示必定的轉換,如字符型(char)數(shù)據(jù)和短整型(short)數(shù)據(jù)必定先轉換成整型(int),以提高運算精度。 縱向的箭頭表示當運算對象為不同類型時轉換的方向型時轉換的方向。數(shù)據(jù)總是由低級別向高級別轉換。 c語言提供一種“強制類
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024民事訴訟委托代理合同
- 2024工程維修合同樣本
- 2024種豬銷售合同范文
- 2024廣告互換合同范文
- 2024個人汽車的租賃合同范本
- 權威借款合同范文匯編
- 2024的進出口貿(mào)易合同范文
- 品牌代理合作協(xié)議
- 2024小產(chǎn)權房買賣合同模板2
- 2024臨時工合同協(xié)議書關于臨時工的協(xié)議書
- 國開(甘肅)2024年春《地域文化(專)》形考任務1-4終考答案
- 檔案整理及數(shù)字化服務方案(技術標 )
- 建筑樁基技術規(guī)范 JGJ942008
- C站使用說明JRC
- 習作:推薦一個好地方 推薦ppt課件
- 角的度量 華應龍(課堂PPT)
- 公路銑刨機整機的設計含全套CAD圖紙
- 機器人學課程教學大綱
- 浙江世貿(mào)君瀾酒店集團介紹
- GHTF—質量管理體系--過程驗證指南中文版
- 鋁及鋁合金焊接作業(yè)指導書
評論
0/150
提交評論