第2章 C語(yǔ)言初步知識(shí)_第1頁(yè)
第2章 C語(yǔ)言初步知識(shí)_第2頁(yè)
第2章 C語(yǔ)言初步知識(shí)_第3頁(yè)
第2章 C語(yǔ)言初步知識(shí)_第4頁(yè)
第2章 C語(yǔ)言初步知識(shí)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

二C語(yǔ)言程序設(shè)計(jì)的初步知識(shí)

前言

構(gòu)成C語(yǔ)言程序的兩個(gè)主要因素是數(shù)據(jù)和操作。計(jì)算機(jī)中用來(lái)處理問(wèn)題的是程序,其主要操作對(duì)象是數(shù)據(jù)。當(dāng)程序執(zhí)行后,操作的結(jié)果又會(huì)改變數(shù)據(jù)。數(shù)據(jù)類(lèi)型就是對(duì)程序所處理的數(shù)據(jù)按照其性質(zhì)、表達(dá)方式、構(gòu)造特點(diǎn)、存儲(chǔ)范圍等劃分為的不同種類(lèi)。本章主要介紹C語(yǔ)言程序中的數(shù)據(jù)類(lèi)型、常量、變量、運(yùn)算符、表達(dá)式、不同類(lèi)型數(shù)據(jù)間的運(yùn)算等內(nèi)容。C語(yǔ)言中的數(shù)據(jù)類(lèi)型一般分為基本類(lèi)型、構(gòu)造類(lèi)型、指針類(lèi)型和空類(lèi)型四大類(lèi)。C語(yǔ)言的數(shù)據(jù)類(lèi)型2.1C語(yǔ)言數(shù)據(jù)類(lèi)型

就是給程序中的實(shí)體(變量、常量、函數(shù)、類(lèi)型、數(shù)組、結(jié)構(gòu)體等)所起的標(biāo)志性的名稱(chēng)。其主要作用就是“標(biāo)識(shí)”,區(qū)分C程序中的不同類(lèi)型的對(duì)象。2.2.1系統(tǒng)定義標(biāo)識(shí)符

系統(tǒng)定義標(biāo)識(shí)符是指由系統(tǒng)定義的,具有固定名字和特定含義的,不能用于其他用途的標(biāo)識(shí)符。如int、main、printf2.2.2用戶(hù)定義標(biāo)識(shí)符

自定義標(biāo)識(shí)符是指用戶(hù)在對(duì)自己使用的程序中的操作對(duì)象進(jìn)行命名,來(lái)對(duì)各個(gè)對(duì)象進(jìn)行區(qū)分所確定的這個(gè)名稱(chēng)。例如:正確的標(biāo)識(shí)符舉例:M,sum1,_total,ab_1_2

錯(cuò)誤的標(biāo)識(shí)符舉例:11abc,for,-abc,$12

標(biāo)識(shí)符2.2標(biāo)識(shí)符

常量是指在程序運(yùn)行中值不能發(fā)生改變的量。

整型常量又稱(chēng)為整數(shù)。整型數(shù)還可以分為長(zhǎng)整型數(shù)(longint)、短整型數(shù)(shortint)、無(wú)符號(hào)整型數(shù)(unsignedint)三種。

實(shí)型常量又稱(chēng)為實(shí)數(shù)或者浮點(diǎn)數(shù)。實(shí)型常量用小數(shù)形式和指數(shù)形式表示。實(shí)型常量還可以分為單精度實(shí)型(float)和雙精度實(shí)型(double)兩種。還有一種長(zhǎng)雙精度型(longdouble)用的較少。

字符常量是用單引號(hào)‘’括起來(lái)的一個(gè)字符。如‘a(chǎn)’,‘B’等都是字符常量。

常量2.32.3.3字符常量2.3.2實(shí)型常量2.3.1整型常量C語(yǔ)言中常見(jiàn)的轉(zhuǎn)義字符功能表如下表所示。字符形式

含義\n換行,當(dāng)前位置移到下一行開(kāi)頭\r回車(chē),當(dāng)前位置移到本行開(kāi)頭\f換頁(yè),當(dāng)前位置移到下頁(yè)開(kāi)頭\t水平制表,橫向跳格\b退格,當(dāng)前位置移到前一列\(zhòng)v垂直制表,豎向跳格\’單引號(hào)字符\”雙引號(hào)字符\\反斜杠字符\ddd1到3位8進(jìn)制數(shù)表示的字符\xhh1到2位16進(jìn)制數(shù)表示的字符

多個(gè)單獨(dú)的字符構(gòu)成字符串。C語(yǔ)言允許的字符串常量是由一對(duì)雙引號(hào)“”括起來(lái)的字符序列。例如“A”,“CHINA”,“1234”,“howareyou”等均為合法的字符串常量。

C語(yǔ)言中,若使用符號(hào)來(lái)替代常量,該符號(hào)成為符號(hào)常量。符號(hào)常量在使用前必須先定義,其定義的格式如下:

#define(符號(hào)常量名)(常量)例如:#defineNULL0

2.3.4字符串常量2.3.5符號(hào)常量

符號(hào)常量名常量變量是指在程序運(yùn)行過(guò)程中值可以發(fā)生改變的量。

C語(yǔ)言規(guī)定,變量定義的格式為:+

例如:inta;

/*定義整型變量a*/

floatb;

/*定義單精度實(shí)型變量b*/

變量名實(shí)際上是一個(gè)符號(hào)地址,系統(tǒng)在編譯時(shí)給每一個(gè)變量名分配一個(gè)內(nèi)存地址。程序若想從變量中取值,實(shí)際上是通過(guò)變量名來(lái)找到相應(yīng)存儲(chǔ)地址后,從存儲(chǔ)單元中讀取數(shù)據(jù)。(1)整型變量

在使用整型變量時(shí)一定要注意數(shù)值的范圍,超過(guò)該變量允許的使用范圍將導(dǎo)致錯(cuò)誤的結(jié)果。定義整型變量同樣遵守變量的定義。(2)實(shí)型變量(3)字符型變量在C語(yǔ)言中,字符型與整型的界限不是很分明的,在一個(gè)字節(jié)內(nèi)是可互相轉(zhuǎn)換的,也就是說(shuō)整形數(shù)據(jù)和字符型數(shù)據(jù)是通用的。

變量2.4變量名表數(shù)據(jù)類(lèi)型符2.4.1變量名稱(chēng)2.4.2變量的類(lèi)型

變量經(jīng)過(guò)定義后,在使用之前用戶(hù)就要給變量賦值。C語(yǔ)言中是通過(guò)賦值運(yùn)算符或者賦值語(yǔ)句給變量賦值。變量賦值的格式為:例如:inti;

i=9;/*先定義整型變量i,再給i初值為9*/

C語(yǔ)言中可以在給變量下定義的同時(shí)為變量賦值,叫做變量的初始化。

其格式為:例如下面幾個(gè)初始化:

inti=8;/*定義整型變量i,初值為8*/floatt=1.5;/*定義實(shí)型變量t,初值為1.5*/

charc1=’y’;/*定義字符型變量c1,初值為字符為y*/

我們也可以只對(duì)部分變量賦初值:

inta,b,i=8;/*定義3個(gè)整型變量a,b,i,只給i初值為8*/

2.4.3變量的賦值變量名=表達(dá)式類(lèi)型變量名=表達(dá)式

運(yùn)算在C語(yǔ)言中是用表達(dá)式來(lái)完成的。表達(dá)式就是由運(yùn)算符將運(yùn)算對(duì)象按照一定的語(yǔ)法規(guī)則連接起來(lái)的式子。

(1)算術(shù)運(yùn)算符算術(shù)運(yùn)算符分為兩大類(lèi):基本的算術(shù)運(yùn)算符和自增自減運(yùn)算符。其中基本的算術(shù)運(yùn)算符有:

+(加法運(yùn)算符,運(yùn)算功能為求和)

-(減法運(yùn)算符,運(yùn)算功能為求差)

×(乘法運(yùn)算符,運(yùn)算功能為求積)

/(除法運(yùn)算符,運(yùn)算功能為求商)

%(求余運(yùn)算符,運(yùn)算功能為取模)

(2)算術(shù)表達(dá)式用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象連接起來(lái),符合C語(yǔ)言語(yǔ)法規(guī)則的式子稱(chēng)為算術(shù)表達(dá)式。在進(jìn)行算術(shù)表達(dá)式運(yùn)算時(shí)候,要注意算術(shù)運(yùn)算符的優(yōu)先級(jí)和結(jié)合性。

運(yùn)算符與表達(dá)式2.52.5.1算術(shù)運(yùn)算符和算術(shù)表達(dá)式(1)賦值運(yùn)算符

C語(yǔ)言中一共有10種復(fù)合賦值運(yùn)算符。復(fù)合賦值運(yùn)算符可以簡(jiǎn)化程序,并且提高編譯效率。使用賦值運(yùn)算符時(shí)候要注意:一是賦值運(yùn)算符兩邊的數(shù)據(jù)類(lèi)型要求一致;二是賦值運(yùn)算符和復(fù)合賦值運(yùn)算符的優(yōu)先級(jí)只高于逗號(hào)運(yùn)算符,且結(jié)合方向均為“從右向左”。

(2)賦值表達(dá)式賦值表達(dá)式的一般格式為:變量賦值運(yùn)算符表達(dá)式例如:a=3;這個(gè)賦值表達(dá)式是將賦值表達(dá)式右端的值3賦給左邊的變量a。其中賦值表達(dá)式也可以包含復(fù)合賦值運(yùn)算符。使用賦值表達(dá)式時(shí)要注意賦值表達(dá)式左右兩邊的數(shù)據(jù)類(lèi)型要一致。若類(lèi)型不同還要進(jìn)行類(lèi)型轉(zhuǎn)換。

(1)關(guān)系運(yùn)算符關(guān)系運(yùn)算符主要用于比較兩個(gè)運(yùn)算對(duì)象的大小。C語(yǔ)言中的關(guān)系運(yùn)算符主要有以下6個(gè):

2.5.2賦值運(yùn)算符和賦值表達(dá)式2.5.3關(guān)系運(yùn)算符和關(guān)系表達(dá)式

>;大于運(yùn)算符

>=;大于等于運(yùn)算符

<;小于運(yùn)算符

<=;小于等于運(yùn)算符

==;等于運(yùn)算符

!=;不等于運(yùn)算符

在使用這6個(gè)關(guān)系運(yùn)算符時(shí)候,要注意兩點(diǎn):

是前面的四個(gè)運(yùn)算符(>;>=;<;<=)的優(yōu)先級(jí)高于后面兩個(gè)運(yùn)算符(==;!=)。

是關(guān)系運(yùn)算符的結(jié)合性是“自左向右”。關(guān)系運(yùn)算符的優(yōu)先級(jí)比賦值運(yùn)算符高,但是比算術(shù)運(yùn)算符低。(2)關(guān)系表達(dá)式關(guān)系表達(dá)式是用關(guān)系運(yùn)算符將兩個(gè)或更多的運(yùn)算對(duì)象連接起來(lái)的式子。

關(guān)系表達(dá)式的格式為:表達(dá)式關(guān)系運(yùn)算符表達(dá)式(1)邏輯運(yùn)算符邏輯運(yùn)算符是來(lái)進(jìn)行邏輯關(guān)系運(yùn)算的運(yùn)算符。C語(yǔ)言有!(邏輯非)、&&(邏輯與)、||(邏輯或)等三種邏輯運(yùn)算符。使用邏輯運(yùn)算符時(shí)候要注意其優(yōu)先順序。(2)邏輯表達(dá)式由邏輯運(yùn)算符將運(yùn)算對(duì)象連接起來(lái)的式子成為邏輯表達(dá)式。邏輯表達(dá)式的值有“真”和“假”兩種,我們分別用“1”和“0”來(lái)表示。(1)條件運(yùn)算符

條件運(yùn)算符由問(wèn)號(hào)“?”和冒號(hào)“:”組成,連接三個(gè)運(yùn)算對(duì)象,在兩個(gè)表達(dá)式中選擇一個(gè)的操作。

(2)條件表達(dá)式

用條件運(yùn)算符將運(yùn)算對(duì)象連接起來(lái)的式資叫條件表達(dá)式。

條件表達(dá)式的格式:表達(dá)式1?表達(dá)式2:表達(dá)式32.5.4邏輯運(yùn)算符和邏輯表達(dá)式2.5.5條件運(yùn)算符和條件表達(dá)式(1)逗號(hào)運(yùn)算符

在C語(yǔ)言中,逗號(hào)“,”是一種運(yùn)算符,可以用來(lái)連接多個(gè)表達(dá)式,逗號(hào)運(yùn)算符的優(yōu)先級(jí)別是所有運(yùn)算符中最低的。(2)逗號(hào)表達(dá)式

用逗號(hào)分隔符將各種類(lèi)型的表達(dá)式連接起來(lái)的式稱(chēng)為逗號(hào)表達(dá)式。

逗號(hào)表達(dá)式的一般格式為:

逗號(hào)運(yùn)算符的規(guī)則是從左至右進(jìn)行各個(gè)表達(dá)式的計(jì)算,最后的一個(gè)表達(dá)式的值就是整個(gè)逗號(hào)表達(dá)式的值。例如:

x=(a=3,b=a+1,c=b*2)該表達(dá)式的值為x=8。2.5.6逗號(hào)運(yùn)算符合逗號(hào)表達(dá)式表達(dá)式1,表達(dá)式2,···,表達(dá)式X的值

自增運(yùn)算符“++”和自減運(yùn)算符“--”,它們的結(jié)合方向是“自右至左”。它們的作用是使運(yùn)算對(duì)象的值加“1”或減“1”。例如:a++相當(dāng)于賦值語(yǔ)句a=a+1,使變量a的值增加1;

a--相當(dāng)于賦值語(yǔ)句a=a-1,使變量a的值減去1.

自增、自減運(yùn)算符的運(yùn)算對(duì)象只能是單個(gè)的變量。根據(jù)自增、自減運(yùn)算符位置的不同將其分為兩類(lèi)。(1)如果自增、自減運(yùn)算符出現(xiàn)在變量的前面,如(++a)則稱(chēng)為前置運(yùn)算;(2)如果自增、自減運(yùn)算符出現(xiàn)在變量的前面,如(a++)則稱(chēng)為后置運(yùn)算。前置和后置兩種不同的表示方法最終會(huì)使自增自減運(yùn)算方式不同。++i或--i指在使用之前先使i的值加1或減1;而i++或i--指在使用i之后,再使i的值加1或減1;2.6自增運(yùn)算符、自減運(yùn)算符及C語(yǔ)言運(yùn)算符的優(yōu)先級(jí)別2.62.6.1自增、自減運(yùn)算符

當(dāng)C程序中同一個(gè)表達(dá)式同時(shí)有多個(gè)運(yùn)算符時(shí),運(yùn)算就應(yīng)有一個(gè)先后順序,我們稱(chēng)為優(yōu)先級(jí)。

C語(yǔ)言規(guī)定:(1)C程序先進(jìn)行表達(dá)式中優(yōu)先級(jí)高的運(yùn)算符的運(yùn)算,后進(jìn)行優(yōu)先級(jí)低的運(yùn)算符的運(yùn)算。(2)一個(gè)表達(dá)式中,各運(yùn)算符優(yōu)先級(jí)別先相同的情況下,運(yùn)算次序由結(jié)合方向來(lái)決定。

C語(yǔ)言中各運(yùn)算符優(yōu)先級(jí)大致為:

初等運(yùn)算符>單目運(yùn)算符>算術(shù)運(yùn)算符>關(guān)系運(yùn)算符>邏輯運(yùn)算符>條件運(yùn)算符>賦值運(yùn)算符>逗號(hào)運(yùn)算符

2.6.2C語(yǔ)言運(yùn)算符的優(yōu)先級(jí)與結(jié)合性***

C語(yǔ)言表達(dá)式中,將不同類(lèi)型的數(shù)據(jù),轉(zhuǎn)換成為相同類(lèi)型后再進(jìn)行計(jì)算,我們將這種由一種類(lèi)型變量的轉(zhuǎn)換稱(chēng)為類(lèi)型轉(zhuǎn)換。(1)自動(dòng)類(lèi)型轉(zhuǎn)換C語(yǔ)言允許不同類(lèi)型的數(shù)據(jù)進(jìn)行混合運(yùn)算。在進(jìn)行計(jì)算時(shí)C編譯系統(tǒng)先自動(dòng)的將不同類(lèi)型的數(shù)據(jù)轉(zhuǎn)換為同一類(lèi)型,然后進(jìn)行計(jì)算。轉(zhuǎn)換規(guī)則如圖2-3所示

double←float

long

unsigned

↑int←char,short

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論