第2章數(shù)據(jù)的存儲(chǔ)與運(yùn)算_第1頁
第2章數(shù)據(jù)的存儲(chǔ)與運(yùn)算_第2頁
第2章數(shù)據(jù)的存儲(chǔ)與運(yùn)算_第3頁
第2章數(shù)據(jù)的存儲(chǔ)與運(yùn)算_第4頁
第2章數(shù)據(jù)的存儲(chǔ)與運(yùn)算_第5頁
已閱讀5頁,還剩83頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、2.1 數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲(chǔ)的數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲(chǔ)的2.2 整型數(shù)據(jù)的運(yùn)算與分析整型數(shù)據(jù)的運(yùn)算與分析2.3 實(shí)型數(shù)據(jù)的運(yùn)算與分析實(shí)型數(shù)據(jù)的運(yùn)算與分析2.4 字符型數(shù)據(jù)的運(yùn)算字符型數(shù)據(jù)的運(yùn)算2.5 符號(hào)常量符號(hào)常量2.6 算術(shù)運(yùn)算符和算術(shù)表達(dá)式算術(shù)運(yùn)算符和算術(shù)表達(dá)式2.7 C運(yùn)算符和運(yùn)算符和C表達(dá)式表達(dá)式2.8 提高部分提高部分2.1 數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲(chǔ)的數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲(chǔ)的2.1.1 數(shù)據(jù)在計(jì)算機(jī)中是以二進(jìn)制形式存儲(chǔ)的數(shù)據(jù)在計(jì)算機(jī)中是以二進(jìn)制形式存儲(chǔ)的2.1.2 位、字節(jié)和地址位、字節(jié)和地址2.1.3 不同類型數(shù)據(jù)的存儲(chǔ)方式不同類型數(shù)據(jù)的存儲(chǔ)方式P16計(jì)算機(jī)內(nèi)部的信息都是用

2、計(jì)算機(jī)內(nèi)部的信息都是用二進(jìn)制二進(jìn)制表示表示計(jì)算機(jī)存儲(chǔ)器是用半導(dǎo)體集成電路構(gòu)成的計(jì)算機(jī)存儲(chǔ)器是用半導(dǎo)體集成電路構(gòu)成的有兩種穩(wěn)定的工作狀態(tài):有兩種穩(wěn)定的工作狀態(tài):“導(dǎo)導(dǎo)” 與與“截截止止”,即電脈沖的,即電脈沖的“有有”與與“無無”分別用分別用“1”和和“0”表示表示2.1.1 數(shù)據(jù)在計(jì)算機(jī)中是數(shù)據(jù)在計(jì)算機(jī)中是以二進(jìn)制形式存儲(chǔ)的以二進(jìn)制形式存儲(chǔ)的P16若相鄰的若相鄰的8個(gè)二極管元件中第個(gè)二極管元件中第1,3,5,7個(gè)元個(gè)元件處于件處于“導(dǎo)通導(dǎo)通”狀態(tài),第狀態(tài),第2,4,6,8個(gè)元件處個(gè)元件處于于“截止截止”狀態(tài),用狀態(tài),用“10101010”表示表示 導(dǎo)通導(dǎo)通 截止截止 導(dǎo)通導(dǎo)通 截止截止 導(dǎo)通導(dǎo)

3、通 截止截止 導(dǎo)通導(dǎo)通 截止截止 1 0 1 0 1 0 1 0 2.1.1 數(shù)據(jù)在計(jì)算機(jī)中是數(shù)據(jù)在計(jì)算機(jī)中是以二進(jìn)制形式存儲(chǔ)的以二進(jìn)制形式存儲(chǔ)的P162.1.1 數(shù)據(jù)在計(jì)算機(jī)中是數(shù)據(jù)在計(jì)算機(jī)中是以二進(jìn)制形式存儲(chǔ)的以二進(jìn)制形式存儲(chǔ)的P16十進(jìn)制數(shù)十進(jìn)制數(shù)二進(jìn)制數(shù)二進(jìn)制數(shù)0 00 01 11 12 210103 311114 41001005 5101101十進(jìn)制數(shù)十進(jìn)制數(shù)二進(jìn)制數(shù)二進(jìn)制數(shù)6 61101107 71111118 8100010009 91001100110101010101001232021202110102.1.2 位、字節(jié)和地址位、字節(jié)和地址位位(bit) ,又稱,又稱“比特

4、比特” 。每一個(gè)二極管元。每一個(gè)二極管元件稱為一個(gè)件稱為一個(gè)“二進(jìn)制位二進(jìn)制位”,是,是存儲(chǔ)信息的最存儲(chǔ)信息的最小單位小單位。它的值是。它的值是“1”或或“0”字節(jié)字節(jié)(byte) ,又稱,又稱“拜特拜特” 。一般將。一般將8個(gè)個(gè)“二進(jìn)制位二進(jìn)制位”組織成一組,稱為組織成一組,稱為“字節(jié)字節(jié)”。這是人們這是人們最常用的存儲(chǔ)單位最常用的存儲(chǔ)單位P172001200220032004200520062.1.2 位、字節(jié)和地址位、字節(jié)和地址地址地址。計(jì)算機(jī)的存儲(chǔ)器包含許多存儲(chǔ)單元,。計(jì)算機(jī)的存儲(chǔ)器包含許多存儲(chǔ)單元,操作系統(tǒng)把所有存儲(chǔ)單元以字節(jié)為單位編號(hào)操作系統(tǒng)把所有存儲(chǔ)單元以字節(jié)為單位編號(hào)P1734

5、57892.1.3 不同類型數(shù)據(jù)的存儲(chǔ)方式不同類型數(shù)據(jù)的存儲(chǔ)方式整數(shù)的存儲(chǔ)方式整數(shù)的存儲(chǔ)方式u一個(gè)十進(jìn)制整數(shù),先轉(zhuǎn)換為二進(jìn)制形式一個(gè)十進(jìn)制整數(shù),先轉(zhuǎn)換為二進(jìn)制形式u如整數(shù)如整數(shù)10,以二進(jìn)制形式表示是,以二進(jìn)制形式表示是1010P180 0 0 0 1 0 1 00 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0用一字節(jié)存放用一字節(jié)存放用兩字節(jié)存放用兩字節(jié)存放負(fù)數(shù)負(fù)數(shù)按按補(bǔ)碼補(bǔ)碼形式形式存放存放2.1.3 不同類型數(shù)據(jù)的存儲(chǔ)方式不同類型數(shù)據(jù)的存儲(chǔ)方式實(shí)數(shù)的存儲(chǔ)形式實(shí)數(shù)的存儲(chǔ)形式u對(duì)于實(shí)數(shù),一律采用指數(shù)形式存儲(chǔ)對(duì)于實(shí)數(shù),一律采用指數(shù)形式存儲(chǔ)u123.456標(biāo)準(zhǔn)化指數(shù)形式標(biāo)準(zhǔn)化指數(shù)形式

6、為為0.123456 103P18+.12345+3數(shù)符數(shù)符 數(shù)值部分?jǐn)?shù)值部分指數(shù)符號(hào)指數(shù)符號(hào)指數(shù)指數(shù)2.1.3 不同類型數(shù)據(jù)的存儲(chǔ)方式不同類型數(shù)據(jù)的存儲(chǔ)方式字符的存儲(chǔ)方式字符的存儲(chǔ)方式u對(duì)于字符,按對(duì)于字符,按ASCII代碼代碼存放存放uA的的ASCII代碼是代碼是65(1000001)P180 1 0 0 0 0 0 12.2 整型數(shù)據(jù)的運(yùn)算與分析整型數(shù)據(jù)的運(yùn)算與分析2.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析2.2.2 整型常量與整型變量整型常量與整型變量P192.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析 例例2.1 雞兔同雞兔同籠籠。在一個(gè)蘢子里

7、同時(shí)養(yǎng)著。在一個(gè)蘢子里同時(shí)養(yǎng)著一些雞和兔子,你想了解有多少只雞和多一些雞和兔子,你想了解有多少只雞和多少只兔,主人對(duì)你說:我只告訴你雞和兔少只兔,主人對(duì)你說:我只告訴你雞和兔的總頭數(shù)是的總頭數(shù)是16和和總腳數(shù)是總腳數(shù)是40,你能不能,你能不能自己計(jì)算有多少只雞和多少只兔自己計(jì)算有多少只雞和多少只兔?P192.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析解題思路:解題思路:u設(shè)設(shè)x代表雞的數(shù)量,代表雞的數(shù)量,y代表兔的數(shù)量,總頭代表兔的數(shù)量,總頭數(shù)為數(shù)為h,總腳數(shù)為,總腳數(shù)為fu列出下面的方程式:列出下面的方程式: x + y = h (1) 2x + 4y = f (2)u解方

8、程得到:解方程得到:P1922hfyyhx2.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析#include void main() int h,f,x,y; h=16; f=40; y=(f-2* h)/2; x=h-y; printf(“%d%dn”,x,y); P19定義整型變量定義整型變量h,f,x,y使使h的值等于的值等于16使使f的值等于的值等于40計(jì)算兔的個(gè)數(shù)計(jì)算兔的個(gè)數(shù)計(jì)算雞的個(gè)數(shù)計(jì)算雞的個(gè)數(shù)2.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析#include void main() int h,f,x,y; h=16; f=40; y=(f-2* h

9、)/2; x=h-y; printf(“%d%dn”,x,y); P19輸出雞和兔個(gè)數(shù)輸出雞和兔個(gè)數(shù)124%d,%d2.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析#include void main() int h,f,x,y; h=16; f=40; y=(f-2* h)/2; x=h-y; printf(“%d%dn”,x,y); P19輸出雞和兔個(gè)數(shù)輸出雞和兔個(gè)數(shù)12,4%d,%dcock=%d, rabbit=%d2.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析#include void main() int h,f,x,y; h=16; f=40;

10、y=(f-2* h)/2; x=h-y; printf(“%d%dn”,x,y); P19輸出雞和兔個(gè)數(shù)輸出雞和兔個(gè)數(shù)12,4cock=%d, rabbit=%dcock=12, rabbit=42.2.1 整型數(shù)據(jù)運(yùn)算程序舉例和分析整型數(shù)據(jù)運(yùn)算程序舉例和分析定義變量的一般形式是:定義變量的一般形式是: 類型名類型名 變量名變量名;u例如:例如:int h,f,x,y;u變量都必須在使用前定義,指定變量都必須在使用前定義,指定其其類型類型u賦值:賦值:h=37; f=88;P192.2.2 整型常量與整型變量整型常量與整型變量常量和變量常量和變量u常量是指在程序運(yùn)行過程中其值不能常量是指在程序

11、運(yùn)行過程中其值不能改變的量改變的量u變量是指在程序運(yùn)行過程中其值可以變量是指在程序運(yùn)行過程中其值可以改變的量改變的量P222.2.2 整型常量與整型變量整型常量與整型變量常量和變量常量和變量u要注意區(qū)別要注意區(qū)別變量名變量名和和變量值變量值P2216h2000存儲(chǔ)單元存儲(chǔ)單元變量名變量名變量地址變量地址變量值變量值2.2.2 整型常量與整型變量整型常量與整型變量常量和變量常量和變量u要注意區(qū)別變量名和變量值要注意區(qū)別變量名和變量值P2216h2000執(zhí)行執(zhí)行h=37;372.2.2 整型常量與整型變量整型常量與整型變量u變量名的取名規(guī)則變量名的取名規(guī)則l變量名第一個(gè)字符必須是字母或下劃線,變量

12、名第一個(gè)字符必須是字母或下劃線,其后字符必須是字母、數(shù)字或下劃線其后字符必須是字母、數(shù)字或下劃線P22合法合法:sum,average, _total, Class, day, month, Student_name,tan,li_ling不合法不合法:Zhang-sun,Students, $123,33,3D642.2.2 整型常量與整型變量整型常量與整型變量變量名的取名規(guī)則變量名的取名規(guī)則l變量名第一個(gè)字符必須是字母或下劃線,變量名第一個(gè)字符必須是字母或下劃線,其后字符必須是字母、數(shù)字或下劃線其后字符必須是字母、數(shù)字或下劃線l大小寫字母代表不同的字符,一般,程序大小寫字母代表不同的字符,

13、一般,程序中的變量名用小寫字母表示中的變量名用小寫字母表示l變量名的長度不是無限的變量名的長度不是無限的l變量名盡量簡單易記、見名知意變量名盡量簡單易記、見名知意l在同一函數(shù)中,不同變量不能取相同名在同一函數(shù)中,不同變量不能取相同名P222.2.2 整型常量與整型變量整型常量與整型變量變量必須變量必須“先定義,后使用先定義,后使用”l根據(jù)定義變量時(shí)指定的類型,編譯系統(tǒng)為根據(jù)定義變量時(shí)指定的類型,編譯系統(tǒng)為變量分配相應(yīng)的存儲(chǔ)單元變量分配相應(yīng)的存儲(chǔ)單元l凡未被事先定義的,系統(tǒng)不把它認(rèn)作變量凡未被事先定義的,系統(tǒng)不把它認(rèn)作變量名,保證程序中變量名使用得正確名,保證程序中變量名使用得正確l指定了每一變

14、量屬于一個(gè)類型,就便于在指定了每一變量屬于一個(gè)類型,就便于在編譯時(shí)據(jù)此檢查在程序中要求對(duì)該變量進(jìn)編譯時(shí)據(jù)此檢查在程序中要求對(duì)該變量進(jìn)行的運(yùn)算是否合法行的運(yùn)算是否合法P222.2.2 整型常量與整型變量整型常量與整型變量u變量類型相當(dāng)于建造房屋的圖紙變量類型相當(dāng)于建造房屋的圖紙,按照同一,按照同一套圖紙可以建造出許多套外形和結(jié)構(gòu)完全相套圖紙可以建造出許多套外形和結(jié)構(gòu)完全相同的房屋,它們具有相同的特征同的房屋,它們具有相同的特征u類型是抽象的,變量是具體的類型是抽象的,變量是具體的u圖紙相當(dāng)于一系列的規(guī)則和要求,依照它進(jìn)圖紙相當(dāng)于一系列的規(guī)則和要求,依照它進(jìn)行施工。但光有圖紙是不能住人的,只有建行

15、施工。但光有圖紙是不能住人的,只有建成的房屋才能住人成的房屋才能住人u類型不占存儲(chǔ)單元類型不占存儲(chǔ)單元,不能用來存儲(chǔ)數(shù)據(jù),而,不能用來存儲(chǔ)數(shù)據(jù),而變量占存儲(chǔ)單元變量占存儲(chǔ)單元,可以用來存儲(chǔ)數(shù)據(jù),可以用來存儲(chǔ)數(shù)據(jù)P222.2.2 整型常量與整型變量整型常量與整型變量整型常量的表示形式整型常量的表示形式u除了常用的十進(jìn)制形式外,還允許使用除了常用的十進(jìn)制形式外,還允許使用八進(jìn)八進(jìn)制制形式和形式和十六進(jìn)制十六進(jìn)制形式表示的數(shù)形式表示的數(shù)整型變量的種類整型變量的種類u基本整型,類型名為基本整型,類型名為intu長整型,類型名為長整型,類型名為long intu短整型,類型名為短整型,類型名為short

16、 intuP222.3 實(shí)型數(shù)據(jù)的運(yùn)算與分析實(shí)型數(shù)據(jù)的運(yùn)算與分析2.3.1 實(shí)型數(shù)據(jù)的運(yùn)算舉例實(shí)型數(shù)據(jù)的運(yùn)算舉例2.3.2 實(shí)型常量的表示形式實(shí)型常量的表示形式2.3.3 實(shí)型變量實(shí)型變量P242.3.1 實(shí)型數(shù)據(jù)的運(yùn)算舉例實(shí)型數(shù)據(jù)的運(yùn)算舉例 例例2.2 分期付款的計(jì)算。張先生為購房,分期付款的計(jì)算。張先生為購房,向銀行貸款,貸款額為向銀行貸款,貸款額為D元,每月準(zhǔn)備元,每月準(zhǔn)備還還P元,月利率為元,月利率為R,求需要多少個(gè)月才,求需要多少個(gè)月才能還清。能還清。P24)1log()log()log(rrdppmm是還清貸款所需月數(shù)是還清貸款所需月數(shù)d=324500,p=3245,r=0.8%2

17、.3.1 實(shí)型數(shù)據(jù)的運(yùn)算舉例實(shí)型數(shù)據(jù)的運(yùn)算舉例(1)d和和p是整數(shù),是整數(shù),r是一個(gè)小數(shù),因此程是一個(gè)小數(shù),因此程序中要分別定義整型變量和實(shí)型變量。序中要分別定義整型變量和實(shí)型變量。(2)公式中用到對(duì)數(shù)公式中用到對(duì)數(shù)log,這個(gè)對(duì)數(shù)是以,這個(gè)對(duì)數(shù)是以10為底的。對(duì)數(shù)為底的。對(duì)數(shù)log的函數(shù)的函數(shù)log10P242.3.1 實(shí)型數(shù)據(jù)的運(yùn)算舉例實(shí)型數(shù)據(jù)的運(yùn)算舉例#include #include void main() int d,p; float r,m; d=324500; p=3245; r=0.008; m=(log10(p)-log10(p-d*r)/log10(1+r); printf

18、(“month=%fn”,m); printf(“total=%fn”,m*p); P24用到用到數(shù)學(xué)函數(shù)數(shù)學(xué)函數(shù)時(shí)時(shí)定義整型變量定義整型變量d,p定義定義實(shí)實(shí)型變量型變量r,m賦值賦值求求m的值的值2.3.1 實(shí)型數(shù)據(jù)的運(yùn)算舉例實(shí)型數(shù)據(jù)的運(yùn)算舉例#include #include void main() int d,p; float r,m; d=324500; p=3245; r=0.008; m=(log10(p)-log10(p-d*r)/log10(1+r); printf(“month=%fn”,m); printf(“total=%fn”,m*p); P24輸出輸出m的值的值計(jì)算

19、并輸出還款數(shù)計(jì)算并輸出還款數(shù)total=655436.127930month=201.983404輸出實(shí)數(shù)時(shí)輸出實(shí)數(shù)時(shí)2.3.1 實(shí)型數(shù)據(jù)的運(yùn)算舉例實(shí)型數(shù)據(jù)的運(yùn)算舉例#include #include void main() int d=324500,p=3245; double r=0.008,m; m=(log10(p)-log10(p-d*r)/log10(1+r); printf(“month=%fn”,m); printf(“total=%fn”,m*p); P24定義變量時(shí)賦初值定義變量時(shí)賦初值定義定義double型無警告錯(cuò)型無警告錯(cuò)2.3.2 實(shí)型常量的表示形式實(shí)型常量的表示形式

20、實(shí)數(shù)在計(jì)算機(jī)語言中常稱為浮點(diǎn)數(shù)實(shí)數(shù)在計(jì)算機(jī)語言中常稱為浮點(diǎn)數(shù)u十進(jìn)制小數(shù)形式十進(jìn)制小數(shù)形式 如:如:0.123, 123.23, 0.0u指數(shù)形式指數(shù)形式 如:如:123e3或或123E3P262.3.3 實(shí)型變量實(shí)型變量實(shí)型變量的分類實(shí)型變量的分類u單精度實(shí)型變量(單精度實(shí)型變量(float型)型)u雙精度實(shí)型變量(雙精度實(shí)型變量(double型)型)u長雙精度實(shí)型變量(長雙精度實(shí)型變量(long double型)型)P272.3.3 實(shí)型變量實(shí)型變量實(shí)型變量的分類實(shí)型變量的分類實(shí)型數(shù)據(jù)的舍入誤差實(shí)型數(shù)據(jù)的舍入誤差u實(shí)型變量是由有限的存儲(chǔ)單元組成的實(shí)型變量是由有限的存儲(chǔ)單元組成的u能提供的有

21、效數(shù)字總是有限的能提供的有效數(shù)字總是有限的u在有效位以外的數(shù)字將被舍去在有效位以外的數(shù)字將被舍去u會(huì)產(chǎn)生一些誤差會(huì)產(chǎn)生一些誤差P272.3.3 實(shí)型變量實(shí)型變量實(shí)型變量的分類實(shí)型變量的分類實(shí)型數(shù)據(jù)的舍入誤差實(shí)型數(shù)據(jù)的舍入誤差例例2.3 實(shí)型數(shù)據(jù)的舍入誤差實(shí)型數(shù)據(jù)的舍入誤差P27#include void main() float a; a = 1234.1415926; printf(a=%fn,a);a=1234.1416027位有效位位有效位2.3.3 實(shí)型變量實(shí)型變量實(shí)型變量的分類實(shí)型變量的分類實(shí)型數(shù)據(jù)的舍入誤差實(shí)型數(shù)據(jù)的舍入誤差把實(shí)數(shù)按雙精度數(shù)處理把實(shí)數(shù)按雙精度數(shù)處理u把程序中的實(shí)常量

22、處理成雙精度型,分配把程序中的實(shí)常量處理成雙精度型,分配8個(gè)個(gè)字節(jié),以提高精度。字節(jié),以提高精度。P27a = 1234.1415926;雙精度雙精度單精度單精度編譯時(shí)有警告編譯時(shí)有警告最好:最好:double a;2.4 字符型數(shù)據(jù)的運(yùn)算字符型數(shù)據(jù)的運(yùn)算2.4.1 字符數(shù)據(jù)運(yùn)算的簡單例子字符數(shù)據(jù)運(yùn)算的簡單例子2.4.2 字符常量和字符變量字符常量和字符變量2.4.3 字符串常量字符串常量P292.4.1 字符數(shù)據(jù)運(yùn)算的簡單例子字符數(shù)據(jù)運(yùn)算的簡單例子 例例2.4 逐個(gè)輸出英文字母逐個(gè)輸出英文字母C,H,I,N,A。然后按反序輸出,即然后按反序輸出,即A,N,I,H,C。P29#include

23、void main() char a=C,b=H,c=I,d=N,e=A; printf(“%c%c%c%c%cn”,a,b,c,d,e); printf(“%c%c%c%c%cn”,e,d,c,b,a); 定義字符變量定義字符變量2.4.1 字符數(shù)據(jù)運(yùn)算的簡單例子字符數(shù)據(jù)運(yùn)算的簡單例子 例例2.4 逐個(gè)輸出英文字母逐個(gè)輸出英文字母C,H,I,N,A。然后按反序輸出,即然后按反序輸出,即A,N,I,H,C。P29#include void main() char a=C,b=H,c=I,d=N,e=A; printf(“%c%c%c%c%cn”,a,b,c,d,e); printf(“%c%c

24、%c%c%cn”,e,d,c,b,a); 用單撇號(hào)括起來用單撇號(hào)括起來輸出字符輸出字符CHINA ANIHC2.4.2 字符常量和字符變量字符常量和字符變量字符常量字符常量u字符常量是用單撇號(hào)括起來的一個(gè)字符字符常量是用單撇號(hào)括起來的一個(gè)字符u英文字母可以作為字符常量英文字母可以作為字符常量u鍵盤上的字符都可以作為字符常量鍵盤上的字符都可以作為字符常量u小寫字母和大寫字母是不同的字符常量小寫字母和大寫字母是不同的字符常量P292.4.2 字符常量和字符變量字符常量和字符變量轉(zhuǎn)義字符轉(zhuǎn)義字符u轉(zhuǎn)義字符必須以反斜杠轉(zhuǎn)義字符必須以反斜杠“”開頭開頭u“”后只能有一個(gè)字符后只能有一個(gè)字符(或代表字符的

25、或代表字符的8進(jìn)進(jìn)制或制或16進(jìn)制數(shù)進(jìn)制數(shù))P292.4.2 字符常量和字符變量字符常量和字符變量t 跳到下一個(gè)輸出區(qū)跳到下一個(gè)輸出區(qū)b 消除前一個(gè)已輸出的字符消除前一個(gè)已輸出的字符r 將當(dāng)前的輸出位置返回在本行開頭將當(dāng)前的輸出位置返回在本行開頭f 將當(dāng)前的輸出位置移到下頁的開頭將當(dāng)前的輸出位置移到下頁的開頭0 常用于字符串中,作為串結(jié)束標(biāo)志常用于字符串中,作為串結(jié)束標(biāo)志 代表一個(gè)反斜杠字符代表一個(gè)反斜杠字符“” 代表一個(gè)單撤號(hào)字符代表一個(gè)單撤號(hào)字符” 代表一個(gè)雙撤號(hào)字符代表一個(gè)雙撤號(hào)字符ddd 13位位8進(jìn)制數(shù)所代表的字符進(jìn)制數(shù)所代表的字符xhh 12位位16進(jìn)制數(shù)所代表的字符進(jìn)制數(shù)所代表的

26、字符P292.4.2 字符常量和字符變量字符常量和字符變量字符變量字符變量u用來存放字符常量用來存放字符常量u只能放一個(gè)字符只能放一個(gè)字符u字符變量的定義形式:字符變量的定義形式: char 字符變量列表字符變量列表;P292.4.2 字符常量和字符變量字符常量和字符變量字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用uchar c=a;與與char c=97;等價(jià)等價(jià)P292.4.2 字符常量和字符變量字符常量和字符變量字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用u例例2.5 將兩個(gè)整數(shù)分別賦給兩個(gè)字符變量將兩個(gè)整數(shù)分別賦給兩個(gè)字符變量,再將字符數(shù)

27、據(jù)按字符和整數(shù)形式輸出。,再將字符數(shù)據(jù)按字符和整數(shù)形式輸出。 #include void main() char c1=97,c2=98; printf(“%c %cn”,c1,c2); printf(“%d %dn”,c1,c2); P29char c1=a,c2=b;a b97 982.4.2 字符常量和字符變量字符常量和字符變量字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用u例例2.5 將兩個(gè)整數(shù)分別賦給兩個(gè)字符變量將兩個(gè)整數(shù)分別賦給兩個(gè)字符變量,再將字符數(shù)據(jù)按字符和整數(shù)形式輸出。,再將字符數(shù)據(jù)按字符和整數(shù)形式輸出。字符字符a的存儲(chǔ)(用的存儲(chǔ)(用ASCII代碼存放)

28、代碼存放) P2901100001按按%c輸出:輸出:a按按%d輸出:輸出:97printf(“%c %cn”,97+1,a+1); 輸出什么?輸出什么?2.4.2 字符常量和字符變量字符常量和字符變量字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用u例例2.5 將兩個(gè)整數(shù)分別賦給兩個(gè)字符變量將兩個(gè)整數(shù)分別賦給兩個(gè)字符變量,再將字符數(shù)據(jù)按字符和整數(shù)形式輸出。,再將字符數(shù)據(jù)按字符和整數(shù)形式輸出。P29b bprintf(“%d %dn”,97+1,a+1); 輸出什么?輸出什么?98 982.4.2 字符常量和字符變量字符常量和字符變量字符數(shù)據(jù)與整型數(shù)據(jù)在一定條件下通用字符數(shù)

29、據(jù)與整型數(shù)據(jù)在一定條件下通用u例例2.6 將小寫字母轉(zhuǎn)換為大寫字母。將小寫字母轉(zhuǎn)換為大寫字母。 #include void main() char c1=a,c2=b; c1=c1-32; c2=c2-32; printf(%c,%cn,c1,c2); P29a97 A65b98 B66c99 C67規(guī)律是?規(guī)律是?A,B2.4.3 字符串常量字符串常量字符串常量是一對(duì)雙撇號(hào)括起來的字符字符串常量是一對(duì)雙撇號(hào)括起來的字符序列序列How do you do. CHINAa都是合法的字符串都是合法的字符串P332.4.3 字符串常量字符串常量字符串常量是一對(duì)雙撇號(hào)括起來的字符字符串常量是一對(duì)雙撇號(hào)

30、括起來的字符序列序列u是字符常量是字符常量u是字符串常量是字符串常量u二者的含義是不同的二者的含義是不同的P33char c;c=a;正確正確char c;c=”a”;錯(cuò)誤錯(cuò)誤存放字符存放字符a的存儲(chǔ)單元的存儲(chǔ)單元存放字符串存放字符串”a”的存儲(chǔ)單元的存儲(chǔ)單元a0a2.5 符號(hào)常量符號(hào)常量2.5.1 符號(hào)常量符號(hào)常量的作用的作用2.5.2 符號(hào)常量的性質(zhì)和使用方法符號(hào)常量的性質(zhì)和使用方法P342.5.1 符號(hào)常量符號(hào)常量的作用的作用 例例2.7求以求以r為半徑的圓周長為半徑的圓周長c和圓面積和圓面積s,再求以,再求以r為半徑的圓球體積為半徑的圓球體積v。P35rc22rs334rv c=2*3

31、.1415926*r; s=3.1415926*r*r; v=4/3*3.1415926*r*r*r;#include void main()double r=3.67,c,s,v; c= 2 * 3.1415926 *r; s= 3.1415926 * r*r ; v= 4/3 * 3.1415926 * r*r*r ; printf(“c=%fns=%fnv=%fn”,c,s,v);c=23.059290s=42.313797v=155.291633有錯(cuò)有錯(cuò)4.0/3.0#include void main()double r=3.67,c,s,v; c= 2 * 3.1415926 *r

32、; s= 3.1415926 * r*r ; v= 4.0/3.0 * 3.1415926 * r*r*r ; printf(“c=%fns=%fnv=%fn”,c,s,v);c=23.059290s=42.313797v=207.055511pow(r,2)pow(r,3)#include #include #include void main()double r=3.67,c,s,v; c= 2 * 3.1415926 *r; s= 3.1415926 * pow(r,2); v= 4.0/3.0 * 3.1415926 *pow(r,3); printf(“c=%fns=%fnv=%fn

33、”,c,s,v);c=23.059290s=42.313797v=207.055511#define PI 3.1415926PIPIPI#include #include void main()double r=3.67,c,s,v; c= 2 * PI *r; s= PI * pow(r,2); v= 4.0/3.0 * PI *pow(r,3); printf(“c=%fns=%fnv=%fn”,c,s,v);c=23.059290s=42.313797v=207.055511#define PI 3.1415926符號(hào)常量符號(hào)常量2.5.2 符號(hào)常量的性質(zhì)和使用方法符號(hào)常量的性質(zhì)和使用

34、方法#define不是不是C語句,行末沒有分號(hào)語句,行末沒有分號(hào)#define是一個(gè)是一個(gè)“預(yù)編譯命令預(yù)編譯命令”符號(hào)常量符號(hào)常量一般一般用大寫用大寫,以示以示與變量與變量區(qū)別區(qū)別好處:好處:u含義清楚含義清楚u在需要改變一個(gè)常量時(shí)能做到在需要改變一個(gè)常量時(shí)能做到“一改全改一改全改”u用符號(hào)常量能保護(hù)所代表的數(shù)據(jù)不被破壞用符號(hào)常量能保護(hù)所代表的數(shù)據(jù)不被破壞P362.6 算術(shù)運(yùn)算符和算術(shù)表達(dá)式算術(shù)運(yùn)算符和算術(shù)表達(dá)式2.6.1 算術(shù)運(yùn)算符算術(shù)運(yùn)算符2.6.2 算術(shù)表達(dá)式算術(shù)表達(dá)式P382.6.1 算術(shù)運(yùn)算符算術(shù)運(yùn)算符P381.基本的算術(shù)運(yùn)算符基本的算術(shù)運(yùn)算符:+ :加法運(yùn)算符加法運(yùn)算符 - :減法

35、運(yùn)算符減法運(yùn)算符* :乘法運(yùn)算符乘法運(yùn)算符/ :除法運(yùn)算符除法運(yùn)算符% :求余運(yùn)算符求余運(yùn)算符(要求要求兩側(cè)均兩側(cè)均為整數(shù)。為整數(shù)。如如19%4,結(jié)果為,結(jié)果為3 )2.6.1 算術(shù)運(yùn)算符算術(shù)運(yùn)算符P38兩個(gè)整數(shù)相除的結(jié)果為整數(shù)兩個(gè)整數(shù)相除的結(jié)果為整數(shù)u如如5/3的結(jié)果值為,舍去小數(shù)部分的結(jié)果值為,舍去小數(shù)部分u如果除數(shù)或被除數(shù)中有一個(gè)為負(fù)值,舍入方如果除數(shù)或被除數(shù)中有一個(gè)為負(fù)值,舍入方向不固定向不固定。例如,例如,-5/3,有的系統(tǒng)中得到,有的系統(tǒng)中得到的結(jié)果為的結(jié)果為-1,在有的系統(tǒng)中則得到結(jié)果為,在有的系統(tǒng)中則得到結(jié)果為-2uVC+采取采取“向零取整向零取整”的方法的方法u如如5/3=1

36、,-5/3=-1,取整后向零靠攏,取整后向零靠攏2.6.1 算術(shù)運(yùn)算符算術(shù)運(yùn)算符P38如果參加如果參加+、-、*、/ 運(yùn)算的兩個(gè)數(shù)中有運(yùn)算的兩個(gè)數(shù)中有一個(gè)數(shù)為一個(gè)數(shù)為float或或double型,則結(jié)果都是型,則結(jié)果都是double型,因?yàn)橄到y(tǒng)將所有型,因?yàn)橄到y(tǒng)將所有float型數(shù)據(jù)型數(shù)據(jù)都先轉(zhuǎn)換為都先轉(zhuǎn)換為double型,然后進(jìn)行運(yùn)算。型,然后進(jìn)行運(yùn)算。這是為了提高運(yùn)算精度這是為了提高運(yùn)算精度。2.6.1 算術(shù)運(yùn)算符算術(shù)運(yùn)算符P382. 自增、自減運(yùn)算符:自增、自減運(yùn)算符:作用是使變量的值增或減作用是使變量的值增或減u+i,-i:在使用:在使用i之前,先使之前,先使i的值加(減)的值加(減)

37、1ui+,i-:在使用:在使用i之后,使之后,使i的值加(減)的值加(減)12.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象(也稱用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象(也稱操作數(shù))連接起來的、符合語法規(guī)則操作數(shù))連接起來的、符合語法規(guī)則的式子,稱為算術(shù)表達(dá)式的式子,稱為算術(shù)表達(dá)式運(yùn)算對(duì)象包括常量、變量、函數(shù)等運(yùn)算對(duì)象包括常量、變量、函數(shù)等2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39各類數(shù)值型數(shù)據(jù)各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算間的混合運(yùn)算uchar和和short型轉(zhuǎn)換為型轉(zhuǎn)換為int型型ufloat型一律轉(zhuǎn)換為型一律轉(zhuǎn)換為double型型u整型整型 (包括包括int,short,long) 數(shù)據(jù)

38、與數(shù)據(jù)與double型型數(shù)據(jù)進(jìn)行運(yùn)算,先將整型轉(zhuǎn)換為數(shù)據(jù)進(jìn)行運(yùn)算,先將整型轉(zhuǎn)換為double型型2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39各類數(shù)值型數(shù)據(jù)各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算間的混合運(yùn)算 10 + a + i * f - d / e先將先將a轉(zhuǎn)換成整數(shù)轉(zhuǎn)換成整數(shù)97,運(yùn)算結(jié)果為,運(yùn)算結(jié)果為107i為整型為整型f為為float型型d為為double型型e為為long型型2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39各類數(shù)值型數(shù)據(jù)各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算間的混合運(yùn)算 10 + a + i * f - d / e107先將先將i與與f轉(zhuǎn)成轉(zhuǎn)成double型,運(yùn)算結(jié)果為型,運(yùn)算結(jié)果為double型型i為整型

39、為整型f為為float型型d為為double型型e為為long型型2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39各類數(shù)值型數(shù)據(jù)各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算間的混合運(yùn)算 10 + a + i * f - d / e107double型型先將先將107轉(zhuǎn)換成雙精度轉(zhuǎn)換成雙精度型型,結(jié)果為,結(jié)果為double型型i為整型為整型f為為float型型d為為double型型e為為long型型2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39各類數(shù)值型數(shù)據(jù)各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算間的混合運(yùn)算 10 + a + i * f - d / e107double型型double型型轉(zhuǎn)換為轉(zhuǎn)換為double型型double型型最終結(jié)果為

40、最終結(jié)果為double型型i為整型為整型f為為float型型d為為double型型e為為long型型2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換u在表達(dá)式中也可以利用在表達(dá)式中也可以利用“強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換”運(yùn)算運(yùn)算符將數(shù)據(jù)轉(zhuǎn)換成所需的類型符將數(shù)據(jù)轉(zhuǎn)換成所需的類型(double)a (將轉(zhuǎn)換成(將轉(zhuǎn)換成double類型)類型)(int) (x+y) (將(將x+y的值轉(zhuǎn)換成的值轉(zhuǎn)換成int型)型) (float)(5%3)(將(將5%3的值轉(zhuǎn)換成的值轉(zhuǎn)換成float型)型)2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換u強(qiáng)制類型轉(zhuǎn)換的一般形式為強(qiáng)制類型轉(zhuǎn)

41、換的一般形式為: (類型名)(表達(dá)式)(類型名)(表達(dá)式)例例2.8 強(qiáng)制類型轉(zhuǎn)換。強(qiáng)制類型轉(zhuǎn)換。#include void main ( ) float f=3.6; int i; i=(int)f; printf(f=%f,i=%dn,f,i);f3.600000,i=3不改變不改變f的值的值2.6.2.算術(shù)表達(dá)式算術(shù)表達(dá)式P39強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換u強(qiáng)制類型轉(zhuǎn)換的一般形式為強(qiáng)制類型轉(zhuǎn)換的一般形式為: (類型名)(表達(dá)式)(類型名)(表達(dá)式)有兩種類型轉(zhuǎn)換有兩種類型轉(zhuǎn)換u系統(tǒng)自動(dòng)進(jìn)行的類型轉(zhuǎn)換系統(tǒng)自動(dòng)進(jìn)行的類型轉(zhuǎn)換u強(qiáng)制類型轉(zhuǎn)換強(qiáng)制類型轉(zhuǎn)換2.7 C運(yùn)算符和運(yùn)算符和C表達(dá)式表達(dá)式2.7

42、.1 C運(yùn)算符運(yùn)算符2.7.2 C表達(dá)式表達(dá)式P41(1) 算術(shù)運(yùn)算符算術(shù)運(yùn)算符 (+ - * / %)(2) 關(guān)系運(yùn)算符關(guān)系運(yùn)算符 ( !)?。?3) 邏輯運(yùn)算符邏輯運(yùn)算符 (?。ǎ?|)(4) 位運(yùn)算符位運(yùn)算符 ( | )(5) 賦值運(yùn)算符賦值運(yùn)算符 (及其擴(kuò)展賦值運(yùn)算符)(及其擴(kuò)展賦值運(yùn)算符)(6) 條件運(yùn)算符條件運(yùn)算符 (?:)(?:)2.7.1 C運(yùn)算符運(yùn)算符P41(7) 逗號(hào)運(yùn)算符逗號(hào)運(yùn)算符 (,),)(8) 指針運(yùn)算符指針運(yùn)算符 (* )(9) 求字節(jié)數(shù)運(yùn)算符求字節(jié)數(shù)運(yùn)算符 (sizeof)(10) 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符強(qiáng)制類型轉(zhuǎn)換運(yùn)算符 ( (類型類型) )(11) 成員運(yùn)算符成

43、員運(yùn)算符 (.-)(12) 下標(biāo)運(yùn)算符下標(biāo)運(yùn)算符 ( )(13) 其他其他 (如函數(shù)調(diào)用運(yùn)算符()(如函數(shù)調(diào)用運(yùn)算符()2.7.1 C運(yùn)算符運(yùn)算符P41箅術(shù)表達(dá)式箅術(shù)表達(dá)式。如。如2+6.7*3.5+sin(0.5)關(guān)系表達(dá)式關(guān)系表達(dá)式。如。如x0,y0 & y0 (表示表示x0與與y0同時(shí)成立同時(shí)成立,&是邏輯運(yùn)算符,代表是邏輯運(yùn)算符,代表“與與”)賦值表達(dá)式賦值表達(dá)式。如。如a=5.6逗號(hào)表達(dá)式逗號(hào)表達(dá)式。如。如a=3,y=4,z=8 用逗號(hào)連接若干個(gè)用逗號(hào)連接若干個(gè)表達(dá)式,順序執(zhí)行這些表達(dá)式,整個(gè)逗號(hào)表達(dá)式的表達(dá)式,順序執(zhí)行這些表達(dá)式,整個(gè)逗號(hào)表達(dá)式的值是最后一個(gè)表達(dá)式的值值是最后一個(gè)表達(dá)式的值(今為今為8)2.7.2 C表達(dá)式表達(dá)式P422.8 提高部分提高部分2.8.1 求補(bǔ)碼的方法求補(bǔ)碼的方法2.8.2 整型常量的表示形式整型常量的表示形式2.8.3 整型變量的類型整型變量的類型2.8.4 整型常量的類型整型常量的類型2.8.5 C語言允許使用的數(shù)據(jù)結(jié)構(gòu)語言允許使用的數(shù)據(jù)結(jié)構(gòu)2.8.6 運(yùn)算符的優(yōu)先級(jí)與結(jié)合性運(yùn)算符的優(yōu)先級(jí)與結(jié)合性P422.8.1 求補(bǔ)碼的方法求補(bǔ)碼的方法計(jì)算機(jī)不論對(duì)正數(shù)和負(fù)數(shù)都按計(jì)算機(jī)不論對(duì)正數(shù)和負(fù)數(shù)都按“補(bǔ)碼補(bǔ)碼”形形式存放到存儲(chǔ)單元式存放到存儲(chǔ)單元對(duì)于正數(shù)來說,補(bǔ)碼就是該數(shù)的對(duì)于正數(shù)來說,補(bǔ)碼就是該數(shù)的“原原碼碼”

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論