C程序設(shè)計數(shù)據(jù)類型及表達式_第1頁
C程序設(shè)計數(shù)據(jù)類型及表達式_第2頁
C程序設(shè)計數(shù)據(jù)類型及表達式_第3頁
C程序設(shè)計數(shù)據(jù)類型及表達式_第4頁
C程序設(shè)計數(shù)據(jù)類型及表達式_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第2章 數(shù)據(jù)類型及表達式 數(shù)據(jù)類型指針類型空類型基本類型整型字符型實型(浮點型)枚舉類型單精度型雙精度型構(gòu)造類型數(shù)組類型結(jié)構(gòu)體類型共用體類型常量 在程序運行過程中其值不能改變的量叫做常量。常量分為整型常量、實型常量和字符型常量等。整型常量有23 、-7 、036(八進制) 、0 x2d(十六進制) 、5L(長整型常量)等。實型常量有5.87 、2e3(指數(shù)形式)等。字符型常量有a、n(轉(zhuǎn)義字符) 、”china”(字符串常量)等??梢允褂脴?biāo)識符代表一個常量,例如:#define PI 3.14 PI就稱為符號常量。 C語言規(guī)定標(biāo)識符以字母開頭,由字母、數(shù)字或下劃線組成。 一般符號常量名用大寫字

2、母,變量名用小寫字母。 變量 v在程序運行過程中其值可以改變的量叫做變量。變量對應(yīng)了內(nèi)存的一段存貯單元。v變量要先定義,再使用。 整型變量 int a,b;/*定義整型變量a和b*/ long c;/*定義長整型變量c*/ unsigned d;/*定義無符號整型變量d*/無符號型其補碼最高位是數(shù)值位,因此沒有負(fù)數(shù)。 一般整型占2個字節(jié),長整型占4個字節(jié)。 整型數(shù)據(jù)的取值范圍類型 類型標(biāo)識符 數(shù)值范圍 占用字節(jié)數(shù)基本型 Int -3276832767即-215(215-1) 2短整型 short int -3276832767即-215(215-1) 2長整型 long int 231(231

3、-1) 4無符號整型 unsigned int 065535即0216-1 2無符號短整型 unsigned short 065535即0216-1 2無符號長整型 unsigned long 0(232-1) 4例如: main() int a,b,c; a=32767; c=a+1; printf(c=%d n,c); 運行結(jié)果為:c= -32768 實型變量 float a;/*定義浮點型變量a*/ double b;/*定義雙精度型變量b*/float 型有7位有效數(shù)字,double型有15位有效數(shù)字。例如main()float a; a=0.3; printf(%f,a); 運行結(jié)果

4、為:0.300000實型數(shù)據(jù)的取值范圍類型 類型標(biāo)識符 占用字節(jié)數(shù)能表示數(shù)值的有效數(shù)字 數(shù)值范圍 單精度實型 Float 47位 1038 雙精度實型 Double 81516位 10308 字符型變量 char c=a;/*定義字符型變量c,并初始化*/v字符型數(shù)據(jù)按ASCII碼存儲,占一個字節(jié)。v給字符變量賦值時可以賦予字符的ASCII碼。例如:char a=65的結(jié)果是a變量中存放字母A 。例如 main ( )char a=a,b=b,c=c,d=65;a=a+1;b=b+2;c=c+3;d=d+4;printf(“%c%c%c%cn“,a,b,c,d); 運行結(jié)果:bdfE 常見的轉(zhuǎn)

5、義字符 字符形式 功 能 n 換行 t 橫向跳格(即跳到下一個輸出區(qū)) v 縱向跳格 b 退格 r 光標(biāo)移到當(dāng)前行開頭 f 走紙換頁 反斜杠字符“” 單引號字符 “ 雙引號字符 ddd 1到3位八進制字符。如 123表示八進制數(shù)123,即十進制數(shù)83 xhh 1到2位十六進制字符。如x21,表示十六進制數(shù)21,即十進制數(shù)33 變量的初始化可以在定義變量時為變量賦值。例如:int a=5,b=5,c=6;int a=b=c=6;/*錯誤的初始化*/。數(shù)據(jù)間的混合運算 在C語言中,各種類型數(shù)據(jù)可以在一個表達式中進行運算。不同類型的數(shù)據(jù)要先轉(zhuǎn)換成同一類型,然后進行運算。高低doublefloatlo

6、ngunsignedintchar,short圖中橫向的箭頭表示必定的轉(zhuǎn)換,圖中縱向的箭頭表示當(dāng)運算對象為不同類型時的轉(zhuǎn)換方向。 類型轉(zhuǎn)換運算符 C語言的運算符有:算術(shù)運算符、關(guān)系運算符、邏輯、位、賦值、條件、逗號、指針、求字節(jié)數(shù)、強制類型換算、分量、下標(biāo)、自加自減等 。本章介紹算術(shù)運算、賦值運算和逗號運算。優(yōu)先級和結(jié)合性 優(yōu)先級是指當(dāng)表達式中包含有不同類型的運算符時的運算順序。結(jié)合性是指當(dāng)表達式中有若干個同一類型的運算符時的運算順序。算術(shù)運算符及表達式 、*、% (取余) 例如:7%4 得 3 (3+a)/9%8 得 3注意:%運算只針對整型數(shù)據(jù)優(yōu)先級:先*、 %,后 、結(jié)合性:左結(jié)合自增和

7、自減運算 自增、 自減例如:a 、 a 相當(dāng)于 aa1 a 、 a 相當(dāng)于 aa 1注意:a 是先自增再取值, a 是先取值再自增?;?運算只針對整型變量。結(jié)合性:右結(jié)合例main() int a=5,b; b=a+;結(jié)果顯示:結(jié)果顯示:a=6,b=5a=6,b=5賦值運算符及表達式=運算符把右邊的值賦給左邊的變量右結(jié)合,優(yōu)先級僅高于逗號運算符。賦值類型轉(zhuǎn)換 當(dāng)賦值運算符兩邊的數(shù)據(jù)類型不一致時,系統(tǒng)會自動進行轉(zhuǎn)換。當(dāng)數(shù)值賦給字符型變量時,按照ASCII碼進行轉(zhuǎn)換。當(dāng)字符型數(shù)據(jù)賦給整型變量時,將其ASCII碼賦值。當(dāng)實型數(shù)據(jù)賦給整型變量時,舍棄小數(shù)部分。當(dāng)整型數(shù)據(jù)賦給實型變量時,自動添加小數(shù)位數(shù)

8、。當(dāng)有符號數(shù)賦給相應(yīng)無符號數(shù)時,連原有的符號也作為數(shù)值一起傳送。復(fù)合的賦值運算符a+=3等價于a=a+3a%=3等價于a=a%3a*=3+2等價于a=a*(3+2)a+=-=a*a等價于a=a+(a=a-a*a)例如main() int a=12;printf(a=%dn,a);a+=2;printf(a=%dn,a);a*=2+3;printf(a=%dn,a);a+=a-=a+=a;printf(a=%dn,a);運行結(jié)果:a=12a=14a=70a=0main () int i,j,m=0,n=0;i=8;j=10;m+=i+;n-=-j;printf(i=%d,j=%d,m=%d,n=%d,i,j,m,n); 結(jié)果:i=9,j=9,m=8,n=-9 強制類型轉(zhuǎn)換 必要時可以在表達式中對數(shù)據(jù)類型進行強制轉(zhuǎn)換。注意轉(zhuǎn)換的只是表達式的值,而變量的數(shù)據(jù)類型仍然不變。例如main() int a;float i;i=13.6;a=(int)i%5;print

溫馨提示

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

最新文檔

評論

0/150

提交評論