版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)類型和運算規(guī)則1第三章 數(shù)據(jù)類型和運算規(guī)則 基本數(shù)據(jù)類型與特點 各種數(shù)據(jù)類型表示范圍 常量的表示方法 變量說明語句 運算符與基本運算規(guī)則本 章 要 點2第三章 數(shù)據(jù)類型和運算規(guī)則第一節(jié) 數(shù)據(jù)與數(shù)據(jù)類型第二節(jié) 常量與常量定義第三節(jié) 變量與變量說明第四節(jié) 基本運算第五節(jié) 運算符的優(yōu)先級與結(jié)合性第六節(jié) 數(shù)據(jù)類型轉(zhuǎn)換33-1 數(shù)據(jù)與數(shù)據(jù)類型數(shù)據(jù) 程序加工處理的對象及其結(jié)果。數(shù)據(jù)類型 按數(shù)據(jù)的性質(zhì)、在計算機內(nèi)部的存儲形式(占用的內(nèi)存單元數(shù)量、編碼方式、取值范圍等)、構(gòu)造特點來對數(shù)據(jù)進行分類。基本概念4例:求三數(shù)的平均值main()int a,b,c;int ave;a=10;b=20;c=30;av
2、e=(a+b+c)/3;printf(%d,%d,%dn,a,b,c);printf(ave=%dn,ave);52-1 數(shù)據(jù)與數(shù)據(jù)類型(續(xù))C語言的數(shù)據(jù)類型基本類型整型 int實型(浮點型)字符型 char單精度 float雙精度 double指針類型派生類型數(shù)組結(jié)構(gòu) struct共用體 union空類型枚舉類型63-2 常量與常量定義常量 在程序運行過程中,其值不能被改變的量稱為常量。變量 在程序運行過程中,其值可以被改變的量稱為變量。一個變量有一個名字,在內(nèi)存中占據(jù)一定的存儲單元;在該存儲單元中存放變量的值。變量名是一個符號地址,在對程序編譯連接進由系統(tǒng)給每個變量名分配一個內(nèi)存地址。在程
3、序中從變量中取值,實際上是通過變量名找到相應的內(nèi)存地址,從其存儲單元中讀取數(shù)據(jù)。一、基本概念73-2 常量與常量定義-整型常量實例整型常量的不同表示方法: 10進制: 100 -8 0 +123 8進制: 010 024 0100 16進制: 0 x38 0 x10 0X10 0XFF 0 xa錯誤:091、15a、0 x5fg二、整型常量常量常量:整形、實型、字符型、字符串常量、符號常量83-2 常量與常量定義-實型常量實例實型常量的不同表示方法: 當整數(shù)或小數(shù)部分為0時,可以省略,但小數(shù)點不能省。 10進制形式:1.0 1. +12.0 -12.0 0.0 指數(shù)形式:一般形式為:a E n
4、 (a為十進制數(shù),n為十進制整數(shù)) 指數(shù):1e3 1.8e-3 -123e-6 等價于:1000 1.8*10-3 -123*10-6 指數(shù):-.1e-3 .1E-10 等價于:-0.1*10-3 0.1*10-10 以下為不合法浮點數(shù):e5(階碼標志e前無數(shù)字)、-5(無階碼標志)、 5.0-e3(負號位置不對)、1.5e(無階碼)三、實型常量93-2 常量與常量定義-字符常量字符型常量:用單引號括起來的單個字符 實例:A g # 0 2 + , ; ( )字符定界符:單引號 字符型數(shù)據(jù)的存儲格式:ASCII碼(見書附錄) 65 103 35 48 50如何表示不可顯示字符?回車/退格/TA
5、B?如何表示定界符? 產(chǎn)生歧異轉(zhuǎn)義符:將后面的字符轉(zhuǎn)換為其它含義三、字符型常量103-2 常量與常量定義-轉(zhuǎn)義符常量字符形式 功能 使用舉例 0 字符串結(jié)束標志 n 換行(ASCII碼為10) printf(”n”); t 橫向跳格 printf(”t”); b 退格 r 回車(ASCII碼為13) f 走紙換頁 字符(ASCII碼為92) 表示字符 單引號 表示字符 ” 雙引號 ” 表示字符 ” ddd 用8進制表示字符 a=141 A=101 換行符 12 xhh 用16進制表示字符 a=x61 A=x41 換行符 xa113-2 常量與常量定義-字符串常量字符串常量:用雙引號括起來的字符
6、序列 實例:”This is C string.” ”a” ” ” (1個空格) ” (不含空格) 串定界符:雙引號 ”字符串長度:字符串中包含的字符數(shù)量。串長=17串長=1串長=1串長=0tNameAddressn串長=15空串實例:C is very easy.串長=17注意: 字符串a(chǎn) 與 字符a 的區(qū)別He saidok.n串長=13123-2 常量與常量定義符號常量符號常量定義形式#define 標識符 常量 用定義的一個標識符來代表一個常量,稱為符號常量 例: #define PI 3.14159# 宏命令專用定義符號define 命令 標識符宏替換名(一般采用大寫字符) 注意:符
7、號常量與變量不同,它的值在程序運行過程中不能改變,也不能重新賦值。13#define PI 3.14159#define R 2main() float s; s=PI*R*R; printf(“s=%fn”,s);143-3 變量與變量的定義 一、 變量的數(shù)據(jù)類型基本類型整型 int實型(浮點型)字符型 char單精度 float雙精度 double指針類型派生類型數(shù)組結(jié)構(gòu) struct共用體 union空類型枚舉類型15char型數(shù)的內(nèi)存占用空間:二進制 8bit (1Byte)0 0 0 0 0 0 0 00 0 0 0 0 0 1 01 1 1 1 1 1 1 1=0=20=1=255
8、0 0 0 0 0 0 0 1=21=20 0 0 0 0 0 1 1=21+20=33-3 變量與變量的定義-字符型16Main()Int a=35;Printf(“the number is %c”,a);輸出結(jié)果為#171.分類 根據(jù)占用內(nèi)存字節(jié)數(shù)的不同,整型變量又分為類:(1)基本整型(類型關(guān)鍵字為int)。(2)短整型(類型關(guān)鍵字為short int)。(3)長整型(類型關(guān)鍵字為long int)。(4)無符號整型。無符號型又分為無符號基本整型(unsigned int)、無符號短整型(unsigned short)和無符號長整型(unsigned long)三種,只能用來存儲無符號
9、整數(shù)。3-3 變量與變量的定義-int18占用內(nèi)存字節(jié)數(shù)與值域下表列出ANSI標準定義的整數(shù)類型和有關(guān)數(shù)據(jù)。Turbo C的規(guī)定與之完全一致。 3-3 變量與變量的定義-int19int型數(shù)占用的內(nèi)存空間為:二進制 16bit (2Byte)0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1=1=3int型整數(shù)的最大值int型表示數(shù)的范圍:- 32768 327671 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1注意:使用中要防止數(shù)據(jù)溢出=-1i
10、nt型整數(shù)的最小值1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0=215-1=32767=-215=-327683-3 變量與變量的定義-int20 二進制 7位 二進制 23位單精度實型尾數(shù)階碼尾數(shù)的符號位階碼的符號位3-3 變量與變量的定義-實型基本數(shù)據(jù)類型的數(shù)據(jù)存儲格式和取值范圍: 類型 占用內(nèi)存單元 取值范圍 數(shù)據(jù)存儲格式 float 4(32位) 3.4*10-383.4*1038 6位有效數(shù)字 double 8(64位) 10-308 10308 15位有效數(shù)字213-3 變量與變量說明變量的說明格式:類型修飾符 類型說明符 變量列表;例如:int i; char
11、ch, str; long k=1, m=0 x12345678; double x, y=1;變量說明意味著確定了:該變量 占用內(nèi)存單元的數(shù)量, 數(shù)據(jù)在內(nèi)存的表示方式, 數(shù)據(jù)的取值范圍。二、變量說明的基本概念main() float s,r; scanf(“%f”,&r); s=3.1415926*r*r; printf(“s=%fn”,s);223-3 變量與變量說明 變量在說明之后,沒有固定的初始值,要先賦值(給定一個初始值),后使用。變量賦初值 將變量說明與賦初值合一,在說明變量時同時完成。實例char cc = a, dd = n ;int x = 10, y = -10, z; d
12、ouble try = 28.5, w = 1e10;二、變量賦初值232-4 運算符一、運算符簡介按運算類型分類 1. 算術(shù)運算符 2. 關(guān)系運算符 3. 邏輯運算符 4. 位運算符 5. 賦值與賦值組合運算符 6. 自增自減運算符 7. 條件運算 8. 指針運算 9. 其它運算符按運算對象的數(shù)目分類 單目運算 雙目運算 三目運算目:進行運算時需要的操作數(shù)的數(shù)量242-4 運算符-算術(shù)運算一、算術(shù)運算符運算符(雙目運算符/單目運算符) + 加法運算 12 正值運算 14 - 減法運算 12 負值運算 14 * 乘法運算 13 / 除法運算 13 % 求余運算 13 10%3=1優(yōu)先級:* /
13、 % 同級(高),+ - 同級(低) 例:2+3*4=2+(3*4)=14結(jié)合性:相同優(yōu)先級運算符進行運算時的次序 自左向右(標記為 )252-4 運算符-算術(shù)運算實例1.參加運算的對象都是int型,結(jié)果截取為int型 10/311/310.0/3 11/3.01/21.0/210/5*310/(5*3)2.求余運算的對象必須是整型 9%31%310%310%-3-10%3-10%-3= 3= 3= 3.333333= 3.666667= 0= 0.5= 6= 0= 0= 1= 1= 1= -1= -1注意:運算對象的數(shù)據(jù)類型對運算結(jié)果的影響 a+b如何表示數(shù)學表達式 - c+d (a+b)/
14、(c+d)262-4 運算符-關(guān)系運算二、關(guān)系運算符運算符(雙目運算符 ) 大于 10= 大于等于 10 小于 10 = 5 的值是 1,57 的值是 0。 已知:int a=13, b=2, c=1;abab)=cab=ca-b=c成立, 結(jié)果為 1不成立,結(jié)果為 0成立, 結(jié)果為 1不成立,結(jié)果為 0結(jié)果為 1與上面等價,結(jié)果為 1等價于(a-b)=1,結(jié)果為 0? 如何判斷數(shù)學中的邏輯關(guān)系:0a9? 0=a=9等價于(0=a)=9結(jié)果恒為1282-4 運算符-邏輯運算三、邏輯運算符運算符 & 邏輯與(雙目) 5 () 邏輯或(雙目) 4 () ! 邏輯非(單目) 14 ()邏輯運算真值表
15、a b !a !b a&b a|b1 1 0 0 1 11 0 0 1 0 10 1 1 0 0 10 0 1 1 0 0邏輯運算關(guān)系292-4 運算符-邏輯運算式2 ( y b ) & ( y a ) 1 結(jié)果2 結(jié)果例:要判斷 0 x 9 是否成立: ( 0 = x ) & ( x = 9 ) 如果沒有括號:0 = x & x 按位右移(雙目) 11 () 按位左移(雙目) 11 () & 按位與 (雙目) 8 () 按位異或(雙目) 7 () 按位或 (雙目) 6 () 按位反 (單目) 14 ()真值表a b ab a b0 0 0 1 10 1 1 1 01 0 1 0 11 1 0
16、 0 031實例:已知:int x=7,y=10,z=1; 設(shè)字長為8位 x&y = x&z = x y = y z = x y = x = x = x2 = x2 = 2 (0000 0111 & 0000 1010 = 0010) 1 (0000 0111 & 0000 0001 = 0001) 15 (0000 0111 0000 1010 = 1111) 11 (0000 1010 0000 0001 = 1011) 13 (0000 0111 0000 1010 = 1101) 8 ( 0000 0111 ) = 1111 1000 7 28 (0000 0111 2 = 0000
17、0010) 1 (0000 0111 2 = 0000 0001)2-4 運算符-位運算32說明 關(guān)于:右移一位 = 縮小 1/2 關(guān)于:左移一位 = 擴大 2 倍 關(guān)于: 因為: x = 按位求反 = 求反運算 求負 = 求補 = 求反 + 1 所以:求反 = 求負 1 x = -x -1 7 = 8 (8) = 7注意: 1.位運算是對二進制的位進行運算 2.只能對int型、char型和long型進行位運算2-4 運算符-位運算332-4 運算符-自增自減運算五、自增自減運算符運算符(單目 ) + 自增 14 自減 14+和 為單目運算,只能作用于變量只能對int、char、long和指針
18、變量進行運算功能:+x x=x+1 x x=x1 (前綴) x+ x=x+1 x x=x1 (后綴)342-4 運算符-自增自減運算自增(自減)有前綴和后綴之分。 前綴形式: 先自增(自減)再引用 后綴形式: 先引用再自增(自減)前綴與后綴的區(qū)別: y=+x; x=x+1; y=x; x先加1再賦值 y=x+; y=x; x=x+1; x先賦值再加1352-4 運算符-自增自減運算實例實例(1) +i; i+; 因為在表達式中沒有其它運算,結(jié)果一樣。(2) x=1; y=+x; 結(jié)果: x=2,y=2 y=+x; x=x+1; y=x; 在做賦值運算之前,x先加1,然后將x賦給y(3) x=1
19、; y=x+; 結(jié)果: x=2,y=1 y=x+; y=x; x=x+1; 先將 x 賦值給 y ,然后 x 再加1362-4 運算符-自增自減運算實例實例(4) main()int i=8;printf(%dn,+i);printf(%dn,-i);printf(%dn,i+);printf(%dn,i-);372-4 運算符-賦值與賦值組合運算六、賦值與復合賦值運算符運算符(雙目 自右向左結(jié)合) 賦值運算: = (不是等號) 2 例:a=b+c a=b=c=2+3凡是表達式可以出現(xiàn)的地方都可以出現(xiàn)賦值號 例:x=(a=1)+(b=2) 賦值表達式加上;即為賦值語句 注意變量賦值語句與變量說
20、明語句的區(qū)別 變量說明語句中賦初值的變量與其它變量之間用逗號分隔,而賦值語句必須以分號結(jié)尾。 例:int a=2,b=3,c; a=2;b=5; 在變量說明中,不允許給多個連續(xù)的變量賦初值 例: int a=b=c=4;把變量b和變量c的值取出來相加后送到變量a中a=(b=(c=(2+3)382-4 運算符-賦值與賦值組合運算六、賦值與復合賦值運算符運算符(雙目 ) 復合賦值運算:e1 op= e2 2 等于:e1 = e1 op (e2)其中:op為下列10個運算符之一+ * / % | & e1為可以進行賦制操作的變量e2為合法的表達式例:x += 2; x = x + 2; x *= y
21、+1; x = x * ( y+1); 不等價 x = x * y+1; x = 2; x = x 2;392-4 運算符-條件運算七、條件運算符運算符(三目 )e1 ? e2 : e3功能:如果表達式e1成立(e1值為非0),則執(zhí)行表達式e2;否則(表達式e1不成立),執(zhí)行表達式e3例:max = (ab) ? a : b; 求變量a與b的最大值 min = (a 通過指針取結(jié)構(gòu)/聯(lián)合的成員 15 ( ) 改變表達式中的優(yōu)先級關(guān)系 15 數(shù)組下標 15 , 逗號,表達式從左向右順序計算 1 (type) e 將e的數(shù)據(jù)類型強制轉(zhuǎn)換為type 14 sizeof (opr) 求opr所占用的內(nèi)存的字節(jié)數(shù) 14結(jié)構(gòu)數(shù)組422-4 運算符-其它運算實例實
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit2 What's the elephant doing(說課稿)-2024-2025學年外研版(三起)英語四年級上冊
- 15《八角樓上》(說課稿)2024-2025學年-統(tǒng)編版二年級語文上冊001
- 7《不甘屈辱奮勇抗爭-圓明園的訴說》(說課稿)統(tǒng)編版道德與法治五年級下冊
- 2023七年級英語下冊 Unit 2 What time do you go to school Section A 第1課時(1a-2d)說課稿 (新版)人教新目標版
- 8大家的“朋友”(說課稿)-部編版道德與法治三年級下冊
- 2024-2025學年高中歷史 第一單元 中國古代的農(nóng)耕經(jīng)濟 第5課 農(nóng)耕時代的商業(yè)與城市(1)教學說課稿 岳麓版必修2
- 2024年八年級歷史下冊 第三單元 第11課 為實現(xiàn)中國夢而努力奮斗說課稿 新人教版
- 2024年三年級品社下冊《學看平面圖》說課稿 山東版
- 2025三元區(qū)國有商品林采伐與銷售權(quán)轉(zhuǎn)讓合同書
- Unit 5 Colours Lesson 2 (說課稿)-2024-2025學年人教新起點版英語一年級上冊
- 裝飾定額子目(河南省)
- 【高速鐵路乘務工作存在的問題及對策研究9800字】
- 北師大版英語課文同步字帖三年級下冊課文對話原文及翻譯衡水體英語字帖三年級起點
- GB/T 2550-2016氣體焊接設(shè)備焊接、切割和類似作業(yè)用橡膠軟管
- GB/T 21295-2014服裝理化性能的技術(shù)要求
- 2022年行業(yè)報告我國FEVE氟樹脂涂料發(fā)展現(xiàn)狀及展望
- 走向核心素養(yǎng)深度學習的教學實踐課件
- Y2系列電機樣本
- 市域社會治理現(xiàn)代化解決方案
- 許慎《說文解字》(全文)
- 我國應急通信保障能力評估體系探究(金)
評論
0/150
提交評論