C語言設(shè)計(jì)課件:第3章 數(shù)據(jù)類型等_第1頁
C語言設(shè)計(jì)課件:第3章 數(shù)據(jù)類型等_第2頁
C語言設(shè)計(jì)課件:第3章 數(shù)據(jù)類型等_第3頁
C語言設(shè)計(jì)課件:第3章 數(shù)據(jù)類型等_第4頁
C語言設(shè)計(jì)課件:第3章 數(shù)據(jù)類型等_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第3章 數(shù)據(jù)類型、運(yùn)算符與表達(dá)式,C語言的標(biāo)識符,英語中的某個(gè)單詞中允許出現(xiàn)的字符有哪些? 大寫字母AZ 小寫字母a z,C語言的標(biāo)識符,C語言中的標(biāo)識符中允許出現(xiàn)的字符有哪些? 大寫字母: AZ 小寫字母: a z 數(shù)字: 09 下劃線: _,C語言的標(biāo)識符-關(guān)鍵字,1、關(guān)鍵字 keyword,由ANSI標(biāo)準(zhǔn)定義的C關(guān)鍵字共32個(gè): auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned contin

2、ue forsigned void default goto sizeofvolatile do if while static,C語言的標(biāo)識符-用戶自定義字,用戶自定義字的命名規(guī)則: (1) 由字母、數(shù)字及下劃線組成,且不能以數(shù)字開頭; (2) 不能與關(guān)鍵字同名 (3) 盡量“見名知義” 例:下列用戶自定義字,是否合法?為什么? area if score student_no 2day month_3 int _sum no*3 /*定義變量 r、v*/ printf(n enter r:); scanf(%f, ,常量:在程序的運(yùn)行過程中其值不能被改變的量。如程序中的3, 4(他們又稱直

3、接常量),變量:在程序的運(yùn)行過程中其值可以被改變的量。如 r ,v,符號常量:用一個(gè)標(biāo)識符代表一個(gè)有特定含義的常量。如 PI,習(xí)慣上,符號常量標(biāo)識符用大寫字母,變量標(biāo)識符用小寫字母,以示區(qū)別,其目的是方便程序的閱讀。,常量,常量:常數(shù),或代表固定不變值的名字 直接常量:如:3.1415926,書寫簡單,但是可讀性差、容易出錯(cuò)。 符號常量:通常用預(yù)處理命令define 為常量命名,如: define PI 3.1415926 符號常量的好處:見名思義、一改全改 例: 整型常量: 10 2 10000 實(shí)型常量: 0.2 3.14 3. .14 字符常量: * a A 3 ,變量,變量是由程序命名

4、的一塊計(jì)算機(jī)內(nèi)存區(qū)域; 變量用來存儲一個(gè)可以變化的數(shù)值; 變量名是一個(gè)標(biāo)識符,按標(biāo)識符命名規(guī)則命名變量,盡量能見名知義; 將一個(gè)值存儲到某個(gè)變量名所代表的內(nèi)存單元中,叫做賦值; 要掌握的知識: 變量的定義 變量的初始化,變量,注意:變量必須先定義后使用 原因: 系統(tǒng)根據(jù)變量的類型為其分配合適的存儲單元。 如: float r,v; 系統(tǒng)給 r , v 各分配大小為 4B 的單元。 編譯系統(tǒng)根據(jù)變量的類型進(jìn)行語法檢查。 如: r %5 是非法的表達(dá)式。,變量的定義,定義變量:類型說明符 變量名表; 例: int i; int i,j,k; float h; float f,g; char c;

5、char c,d;,變量的賦值,例: int i,j,k; float f,g; char c,d; i2; ij2; kj; f=3.1; d=a; 變量賦值前其初始值是不定值。,3.8 算術(shù)運(yùn)算符與算術(shù)表達(dá)式,種類:+ - * / % 都是雙目運(yùn)算符 + - 優(yōu)先級為:4 * / % 優(yōu)先級為:3 結(jié)合性:左結(jié)合 例:3+6-4 3*5%2 8-2*3 運(yùn)算符優(yōu)先級和結(jié)合方向表 附錄C,算術(shù)表達(dá)式書寫與數(shù)學(xué)中不同,C語言算術(shù)表達(dá)式的乘號(*)不能省略。 例如:數(shù)學(xué)式b2-4ac,相應(yīng)的C表達(dá)式應(yīng)該寫成:b*b-4*a*c。 C語言表達(dá)式中只能出現(xiàn)字符集允許的字符。 例如,數(shù)學(xué)r2相應(yīng)的C表

6、達(dá)式應(yīng)該寫成:PI*r*r。(其中PI是已經(jīng)定義的符號常量) C語言算術(shù)表達(dá)式中的分子分母應(yīng)寫成如下形式。 例如,(a+b)/(c+d)。 C語言算術(shù)表達(dá)式只使用圓括號改變運(yùn)算的優(yōu)先順序??梢允褂枚鄬訄A括號,此時(shí)左右括號必須配對,運(yùn)算時(shí)從內(nèi)層括號開始,由內(nèi)向外依次計(jì)算表達(dá)式的值。,自增自減運(yùn)算符,將變量i的值取出,加上1后的結(jié)果再保存到i對應(yīng)的內(nèi)存中,用表達(dá)式如何表示? ii1; i+;,語句執(zhí)行過程中,有一個(gè)隱含的賦值操作,即i的值會增加1。,前綴和后綴表示,、- 運(yùn)算符有前綴表示和后綴表示兩種方式: 前綴表示:i 、-i 后綴表示:i、i-,、的前綴表示,先使變量的值增(或減),然后再以變

7、化后的值參與其它運(yùn)算,即先增減、后運(yùn)算。 例: int i=2,j,m=5,n; j=2+(+i); n=3*(-m);,、的后綴表示,變量先參與其它運(yùn)算,然后再使變量的值增(或減),即先運(yùn)算、后增減。 例: int i=2,j,m=5,n; j=2+(i+); n=3*(m-);,前綴和后綴表示,如果、表達(dá)式單獨(dú)作為一條語句,程序運(yùn)行結(jié)果兩者沒有區(qū)別。 如:int i=3; i+; / 等價(jià)于+i; 如果、表達(dá)式作為一條語句中的一個(gè)組成部分,程序運(yùn)行結(jié)果兩者有區(qū)別。 如:int i=3,j; j=i+; /與 j=+i; 不等價(jià),3.9 賦值運(yùn)算符和賦值表達(dá)式,賦值運(yùn)算符的含義:將賦值運(yùn)算符

8、右邊表達(dá)式的值送到左邊變量名所代表的存儲單元中。 如:a=b+1; x=x+1; 求值規(guī)則:賦值表達(dá)式的值就是賦值號右邊表達(dá)式的值,如:a=(b=3*2)+1; 優(yōu)先級:14 。賦值運(yùn)算符的優(yōu)先級小于算術(shù)運(yùn)算符,如:a=b+1; 結(jié)合性:賦值運(yùn)算符的結(jié)合性是自右至左,如:int a,b=2; a=b=3;,3.7 不同數(shù)據(jù)類型間的混合運(yùn)算,算術(shù)運(yùn)算中的隱含類型轉(zhuǎn)換: 3+5/2 3+5/2.0 3.0+5/2 8+A a+2.0*3,賦值運(yùn)算中的隱含轉(zhuǎn)換 float f,g; int i, j; f=5/2; i=3.5; g=f+i; j=g/2;,思考:隱含轉(zhuǎn)換的規(guī)律,強(qiáng)制類型轉(zhuǎn)換(顯式轉(zhuǎn)換) float f,g; int i, j; f=(float)5/2; i=3.5; g=(int)f+i; f、g的值各是多少 j=(int)g/2; j、g的值各是多少,3.10 逗號運(yùn)算符和逗號表達(dá)式,語法: 表達(dá)式1,表達(dá)式2,表達(dá)式n 求值規(guī)則:從左至右依次計(jì)算各個(gè)表達(dá)

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論