計算機計算機二級C語言輔導 第二章_第1頁
計算機計算機二級C語言輔導 第二章_第2頁
計算機計算機二級C語言輔導 第二章_第3頁
計算機計算機二級C語言輔導 第二章_第4頁
計算機計算機二級C語言輔導 第二章_第5頁
已閱讀5頁,還剩45頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

§2.2常量、變量和標識符(

-、標識符\

和其他高級語言一樣,用來標識常量名、變量名、函數(shù)名、數(shù)組名、類型名

文件名等對象的有效字符序列稱為標識符。簡單的說,標識符就是一個名字。

1.標識符的命名規(guī)則

(1)C語言規(guī)定標識符只能由字母(大小寫均可)

、數(shù)字和下劃線3種字符組成。

(2)第1個字符必須為字母或下劃線。

2、組成:

(1)只能由字母、數(shù)字、下劃線

標識符有什么組成,目第一個字母必須是

字母或下劃線。

組成?

(2)大小寫敏感

(3)不能使用關(guān)鍵字

(4)長度:最長32個字符

⑸命名原則:

見名知意(name、time)

不宜混淆如1與I,。與0

3.注忌事項卡

(1)標識符的命名是區(qū)分大小寫的,例如NAME、name及Name為3個不同的標工

習慣上變量名用小寫字母表示,符號常量一般使用大寫英文字母。、

(2)C語言中的關(guān)鍵字是一類特殊的標識符,它們具有特定的含義,已被C語言

本身使用,不能用作變量名、常量名、函數(shù)名等。

(3)C語言中提供了大量的庫函數(shù)與頭文件,這些庫函數(shù)名和頭文件中定義的一

些標識符都統(tǒng)稱為預定義標識符。用戶定義標識符時應(yīng)注意避免和預定義標

識符重名。

4.標識符的分類

(1)關(guān)鍵字V

關(guān)鍵字在程序中代表著固定的含義,不能另作他用。如用來說明變量類或

標識符char、float以及for、if等都已有專門的用途,它們不能用作變量名

或函數(shù)名。

autobreakcasecharconstcontinuedefaultdo

doubleelseenumexternfloatforgotoif

intlongregisterreturnshortsignedsizeofstatic」

structswitchtypedefunionunsignedvoidvolatilewhile、

注:C語言的關(guān)鍵字都是小寫的。

(2)預定義標識符V

預定義標識符在C語言中也有特定的含義,如庫函數(shù)的名字和預編譯顯

理命令等。C語言語法允許用戶把這類標識符另作他用,但是失去了在

系統(tǒng)中規(guī)定的原意。為了避免誤解,建議用戶不要把這些預定義標識符

另作它用。

(3)用戶標識符N

由用戶根據(jù)需要定義的標識符稱為用戶標識符。一般用來給變量、函數(shù)N

組或文件等命名。、

如果用戶標識符與關(guān)鍵字相同,程序會給出出錯信息;若與預定義標識符

同,則預定義標識符將失去原來的含義。

※重點提示:

標識符的命名規(guī)則:(1)C語言規(guī)定標識符只能由字母(大小寫均可,但區(qū)

分大小寫)、數(shù)字和下劃線3種字符組成(2)第1個字符必須為字母或下劃線

(3)已被C語言本身使用,不能用作變量名、常量名、函數(shù)名等。

—、基本數(shù)據(jù)類型

數(shù)據(jù)為什么有]

類型之分?]

處理規(guī)律相

同,存儲格式、取值范圍也相

A^3數(shù)據(jù)類型

富的麴據(jù)德蟄,曹眼要遂復禁曲據(jù)據(jù)蟄構(gòu)

,整型

基本類型J字符型

浮點型(實型)

雙精度型

C

數(shù)

數(shù)組類型言

據(jù)

類構(gòu)造類型?結(jié)構(gòu)類型

數(shù)

共用體類型據(jù)

空舉刑

指針類型

在計算機中存儲的數(shù)據(jù),按存1

分,可分為:

?常量?車量

1、常量類型

十進制:以非0開始

八進制:以“0“開始

整型常量

十六進制:以“Ox“開始

類,」\數(shù)形式表示

實型常量v

指數(shù)形式表示

字符型常量

1、常量

在程序執(zhí)行過程中,其值始終不

變的量,常量不占用存儲空間。

整型常數(shù)、實型常數(shù)、字符常數(shù)。

符號常量

用一個符號名來表示一個常量。符合標示符的命名規(guī)則。

IT整型常量

是由數(shù)字串組成的數(shù)據(jù)。

?進制常數(shù)、八進制常數(shù)和十六進制常數(shù)。

十六進制數(shù)

例如:0x120x0-0xc4

12實型常量

規(guī)定:實型常量只能用十進制形式表示,不能用八進制或十六進制君垂3

實數(shù)在C語言中又稱浮點數(shù),它有兩種表示形式:飛

1.十進制〃'數(shù)形式:由0一9數(shù)字和〃'數(shù)點組成(注意必須有〃'數(shù)點)如:.1分

0.123,123.0,123.,0.0

2.指數(shù)形式:就是用dEn的形式表示自然表示法的實型常數(shù),其中:d為

值部分;n為指數(shù)部分,必須為整數(shù)。

注意:1、e或E之前必須有數(shù)字,。后面必須有數(shù)字且指數(shù)

必須為整數(shù)。e3,2.Ie3.5,e□

2、實數(shù)在用指數(shù)形式輸出時是按規(guī)范化的指數(shù)形式

輸出。

:C語言中一些以開頭的字符串具有特殊意義,,這些字符串

稱為,用單引號括起。

常用的以'\'開頭的特殊字符如表2.3所示。

字符形式功能?

換行\(zhòng)

\n

\t橫向跳格(跳到下一個輸出區(qū))

\v豎向跳格

\b退格

\r回車

\f走紙換頁

\\反斜杠字符

\,單引號字符

雙引號字符

\a報警

空值

\0____________________

埔里\ddd1到3位8進制數(shù)所代表的字符

M\xhh____________

1到2位16進制數(shù)所代表的字符

1-4字符串常量

每個字符串尾自動加一個,\0,作為字符串結(jié)束標志.

字符串“hello”在內(nèi)存中:he11

例空串\0

?字符常量與字符串常量不同

球IaIa”a

沒有字符串變量,用字符串用數(shù)組存放

2、變量

在程序中對變量的訪問(存入,讀?。?/p>

都是通過變量名進行的。變量在內(nèi)存占據(jù)

存儲空間,變量實質(zhì)上是代表內(nèi)存中的某

個存儲單元。

abcde

口口口□□

實質(zhì):把數(shù)據(jù)7存入c所代表的存儲單元中。

□2、變量、

?在C語言程序中,所有的變量必須加以說明,沒有任何隱含

的變量。變量說明主要是指出變量的名稱,確定變量的數(shù)據(jù)類

型。

?在C語言程序中,變量必須

“先定義、后使用”。

數(shù)據(jù)類型變量”,變量2,…,變量n];

inta,b,c;

變量類型

基本型:用“int”表示

短整型:用“short”表示

整型變量<

長整形:用“l(fā)ong”表示

無符號型:用“unsigned”表示

類單精度型:用“float”表示

實型變量

、上雙精度型:用“double”表示

字符型變量:用“char”表示

基本數(shù)據(jù)類型的修飾符

修飾符含義

signed帶符號修飾符

unsigned無符號修飾符

long長型修飾符

short短型修飾符

表1

2-1短整型

[-Ishortint變量名表;

shortinti,j,k;

IBBlshortn;

當n二5時:

當n二-5時:

2字節(jié)(16位):-32768—32767

shortinta=123;

2-2基本整型

[ZZ]int變量名表;

inti,j,k;

IZZIintn=5;〃定義變量同時進行初始化

011

當n=5時:001

當n=-5時:111]

4字節(jié)(32位):-231-231

2-3長整型

[ZZ]longint變量名表;

IZZIlonginti,j,k;

longn;

11

當n=5時:0o01

當n=-5時:111]

31-31

4字節(jié)(32位):-22

longinti=1234567;

2-4無符號整數(shù)

IZZIunsignedint變量名表;

unsignedinti,j,k;

IZZIunsignedn;

當n=5時:

2字節(jié)(16位):0—65535大于等于零

unsignedintn=-29;

unsignedintn=1234;

2一5實型數(shù)據(jù)

實型數(shù)分類實型數(shù)據(jù)(又稱:浮點型)

產(chǎn)單精度:float:占4字節(jié),提供7位有效數(shù)字

雙精度

Vdouble:占8字節(jié),提供15?16位有效數(shù)字

floata,b,c;

doublex,y;

例f1oata;

a二linn,in;/*a=iiiin.iv

doubleb;

b=llllll.Ill;/*111V

2-6字符變量

[-Ichar變量名;

charcl,c2,c3;

IBBlcharc4;

II一個字符變量在內(nèi)存中占一個字節(jié)。字符變量

只能存放一個字符。字符在內(nèi)存中以ASCH碼

值的形式存儲,因此可以像整數(shù)一樣運算。

不能把字符串常量賦給字符變量。

沒有字符串變量,用字符串用數(shù)組存放

I-------1

?按作用域的不同,變量分為局部變量和全局變量。

?在函數(shù)內(nèi)部說明的變量稱為局部變量。局部變量僅由其被定義的模塊

內(nèi)部的語句所訪問。

?全局變量又稱全程變量或外部變量。全局變量貫穿整個程序,并且可

被任何一個模塊使用。

§2.5算術(shù)表達式

算術(shù)運算符

J關(guān)系運算符

按性質(zhì)分類

邏輯運算符

運s----

?單目運算符:一個運算對象

按操作個數(shù)分

雙目運算符:兩個運算對象

運算規(guī)則

1.運算的優(yōu)先順序為先*、/、%,后+、-

同等優(yōu)先級從左到右運算。優(yōu)先級別相同時,則按規(guī)定“自左至右”,即先左

右。

2.兩個類型相同的操作數(shù),運算結(jié)果類型

也相同。一一類型匹配的原則?。。?/p>

舉例:1/21.0/2.02.5*8.0

考點1

運算,則

3.兩個類型不同的操作數(shù),運算結(jié)果類型

與其中類型較高的類型相同。

舉例:1.0/21/2.02.5*8

4.求余運算(%)的運算結(jié)果其值為相除所得

余數(shù),而符號與被除數(shù)的符號相同。

注:運算對象都是整型。

考點2

舉例:-13%5二-313%(-5)=3

算術(shù)表達式

I定義!

其中:運算對象包括常量、變量、函數(shù)等。

a+b/c+d(a+b)/(c+d)

c+d

(a+b)/2c(a+b)/2*c

(a+b)/(2*c)

§2.5.3強制類型轉(zhuǎn)換

1、C語言允許雙精度、單精度、整型及字符數(shù)據(jù)之間混合運算

10+'a'+1.5-8765.1234□'b'

是允許的。

但有一個規(guī)則:先轉(zhuǎn)換成同一類型,再計算。

2、強制類型轉(zhuǎn)換表達式:(類型名)(表達式)

例:(double)(10%3)=l.0(int)(3.14)=3

轉(zhuǎn)換方法:double□float

覆)

unsigned

低int□char,short

圖中“□”

表示必定轉(zhuǎn)換。如‘a(chǎn)'+'b',先轉(zhuǎn)換為int。結(jié)果為into

§2.6賦值運算符

其他語言的賦值語句aC語言的賦值表達式

]變量名二表達式

I1.賦值。2.求表達式值。

1=1a=10

Y=l+3*sin(x)*cos(x)

賦值運算符的優(yōu)先級別只高于逗號

運算符比其他的運算符都低。

賦值運算的說明

1.“二”不是等于號,而是賦值運算符。

2.賦值運算符左邊必須是變量,不能是表

達式,并且賦值運算要由右向左進行。

A+B=3;A=2+C=3;

3.賦值運算符的右邊還可是一賦值表達式,

稱為多重賦值表達式。

4.賦值運算符右側(cè)表達式的值即為賦值表

達式的值。

■5.“二”是賦值運算符,不能寫成“二二”O(jiān)

§2.6.2復合賦值運算符

?定義:在賦值符“日之前加上其他運算符,可以構(gòu)成復合的運算

符。

例如:

x+二5等價于x=x+5

x*=y+8等價于x=x*(y+8)

x%二3等價于x二x%3

a*二b等價于a=a*b

復合賦值運算符

c語言可使用的復合賦值運算符有10種。

1、與算術(shù)運算符組合:+二-二、*二、/二、%=

2、與移運算符組合:〈(二、?=

3、位邏輯運算符組合:&二、△=、I=

復合賦值表達式格式:

〈變量名〉〈復合賦值運算符X表達式》\

復合的賦值表達式

等價語句V

復合賦值運算符表JA式

+二a=a+3;

a+=3

*二x*=y+8

%二

x%二3x=x%3;

復合賦值表達式

例如:x+=a+y*3等價于x=x+(a+y*3)

若a的初值為12,貝?。輆+二a-=a*a的求解過程為:

(1)先進行a-二a*a的運算,它相當于a=a-a*a=12T44=T32

(2)再進行a+=-132的運算,它相當于a=a+(-132)=-132T32二-264

§2.7增1和減1運算符

自增:使變量的值加1;

自減:使變量的值減1。

++i;/*在使用i之前使i加1*/

-i;/*在使用i之前使i減1*/

i++;/*在使用i之后使i加1*/

i—;/*在使用i之后使i減1*/

增1和減1運算符是單目運算符,且操作對

象只能是變量,不能是常量或表達式。

I例:I

j=3;

j=++i;/*先使i加1,再賦給j。執(zhí)行后j=4,i=4*/

j=3;

j=i++;/*先把i賦給j,再使i加1。執(zhí)行后:j=3,i=4*/

汪忌:

(TT++和一只能用于變量,不能用于常量和表達式。

例:

5++;

(a+b)++;

^defineONX;ONE++;

X

結(jié)合方向為“自右至左”

例:

(-i)++

—i++

負值運算符-和自增運算符優(yōu)先級相同

溫馨提示

  • 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

提交評論