資源描述:
《c語言第2章數(shù)據(jù)的存儲與運(yùn)算》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第二章數(shù)據(jù)的存儲與運(yùn)算本章要點(diǎn)數(shù)據(jù)的描述規(guī)則數(shù)據(jù)的操作規(guī)則主要內(nèi)容2.1數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲的2.2整型數(shù)據(jù)的運(yùn)算與分析2.3實(shí)型數(shù)據(jù)的運(yùn)算與分析2.4字符型數(shù)據(jù)的運(yùn)算2.5符號常量2.6算術(shù)運(yùn)算符和算術(shù)表達(dá)式2.7C運(yùn)算符和C表達(dá)式2.8提高部分2.1數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲的2.1.1數(shù)據(jù)在計(jì)算機(jī)中是以二進(jìn)制形式存儲的計(jì)算機(jī)內(nèi)部的信息都是用二進(jìn)制來表示的。二進(jìn)制數(shù)的特點(diǎn)是“逢二進(jìn)一”。每一位的值只有0和1兩種可能。例如:十進(jìn)制數(shù)10,用二進(jìn)制表示是1010。它的含義是:每一個(gè)二進(jìn)位代表不同的冪,最右邊一位代表2的0次方,最右邊第二位代表2的1次方,以此類推。顯然一個(gè)很大
2、的整數(shù)可能需要幾十個(gè)“二進(jìn)制位”來表示2.1數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲的2.1.2位、字節(jié)和地址位:又稱“比特”(bit)。每一個(gè)物理元件稱為一個(gè)“二進(jìn)制位”,是存儲信息的最小單位。它的值是“1”或“0”。字節(jié):又稱“拜特”(byte)。一般將8個(gè)“二進(jìn)制位”組織成一組,稱為“字節(jié)”。地址:計(jì)算機(jī)的存儲器包含許多存儲單元,操作系統(tǒng)把所有存儲單元以字節(jié)為單位編號。2.1數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲的2.1.3不同類型數(shù)據(jù)的存儲方式整數(shù)的存儲方式十進(jìn)制整數(shù)先轉(zhuǎn)換為二進(jìn)制形式。例如:整數(shù)10以二進(jìn)制形式表示是1010,直接把它存放在存儲單元中。實(shí)數(shù)的存儲形式實(shí)數(shù)采用指數(shù)形式存儲,例如:12
3、3.456可以寫成標(biāo)準(zhǔn)化指數(shù)形式0.123456,它包括前后兩個(gè)部分,前面部分是數(shù)值部分,后面部分是指數(shù)部分。0.123456數(shù)值部分指數(shù)部分說明:標(biāo)準(zhǔn)化指數(shù)形式:其數(shù)值部分是一個(gè)小數(shù),小數(shù)點(diǎn)前的數(shù)字是零,小數(shù)點(diǎn)后的第一位數(shù)字不是零。一個(gè)實(shí)數(shù)可以有多種指數(shù)表示形式,但只有一種屬于標(biāo)準(zhǔn)化指數(shù)形式2.1數(shù)據(jù)在計(jì)算機(jī)中是怎樣存儲的3.字符的存儲方式字符包括字母(如A,a,X,x)、專用字符(如$,@,%,#)等。計(jì)算機(jī)并不是將該字符本身存放到存儲單元中(存儲單元只能存儲二進(jìn)制信息),而是將字符的代碼存儲到相應(yīng)的存儲單元中。(具體說是代碼的二進(jìn)制形式)附錄B是字符與代碼的對照表,這是國
4、際通用的ASCII代碼.2.2整型數(shù)據(jù)的運(yùn)算與分析雞兔同籠:在一個(gè)籠子里同時(shí)養(yǎng)著一些雞和兔子,你想了解有多少只雞和多少只兔,主人對你說:我只告訴你雞和兔的總頭數(shù)是16,總腳數(shù)是40,你能不能自己計(jì)算有多少只雞和多少只兔?設(shè):x--雞數(shù)量y--兔數(shù)量,h--總頭數(shù)f--總腳數(shù)有方程式:例題2.1解題思路x+y=h(1)2x+4y=f(2)求x和y的公式:(2)式-2*(1)式:2y=f–2hy=2.2.1整型數(shù)據(jù)運(yùn)算程序舉例和分析2.2整型數(shù)據(jù)的運(yùn)算與分析#includevoidmain(){inth,f,x,y;/*定義整型變量h,f,x,y*/h=16;/*
5、對整型變量h賦值,使h的值等于16*/f=40;/*對整型變量f賦值,使h的值等于40*/y=(f-2*h)/2;/*對表達(dá)式(f-2*h)/2進(jìn)行運(yùn)算,把結(jié)果賦給y*/x=h-y;/*對表達(dá)式h-y進(jìn)行運(yùn)算,把結(jié)果賦給x*/printf("%d%d",x,y);/*輸出雞的個(gè)數(shù)和兔的個(gè)數(shù)*/}編寫程序說明:1、運(yùn)行時(shí)顯示:124??2、程序改進(jìn):printf("%d,%d",x,y);3、再改進(jìn):printf("cock=%d,rabbit=%d",x,y);注意用計(jì)算機(jī)解題,必須由人們事先分析題目要求,找出解題思路和具體處理步驟.計(jì)算機(jī)完全是根據(jù)人們事先規(guī)定的指
6、令進(jìn)行工作的.程序就是用來告訴計(jì)算機(jī)要做什么、先作什么、后做什么.有人認(rèn)為計(jì)算機(jī)是萬能的,以為將方程式輸入計(jì)算機(jī),計(jì)算機(jī)就能夠給出方程解,這在C語言里是行不通的,是不合乎C語言的語法和語義的,是因?yàn)椴涣私庥?jì)算機(jī)的工作方式而引起的一種誤解.2.2整型數(shù)據(jù)的運(yùn)算與分析(1)常量在程序運(yùn)行過程中,其值不能被改變的量稱為常量常量區(qū)分為不同的類型:整型100,125,-100,0實(shí)型3.14,0.125,-3.789字符型'a','b','2'字符串"a","ab","1232"2.2.2整型常量和整型變量2.2整型數(shù)據(jù)的運(yùn)算與分析(2)變量變量代表內(nèi)存中具有特定屬性的一個(gè)存儲單元,它用
7、來存放數(shù)據(jù),這就是變量的值,在程序運(yùn)行期間,這些值是可以改變的。不同類型的變量的存儲特性是不一樣的。變量名實(shí)際上是與變量地址相對應(yīng)的,在對程序編譯連接時(shí),由編譯系統(tǒng)給每一個(gè)變量名分配對應(yīng)的內(nèi)存地址。從變量中取值,實(shí)際上是通過變量名找到相應(yīng)的內(nèi)存地址,從該存儲單元中讀取數(shù)據(jù)值。地址2.2整型數(shù)據(jù)的運(yùn)算與分析#includevoidmain(){inth,f,x,y;/*定義整型變量h,f,x,y*/h=16;/*對整型變量h賦值,使h的值等于16*/f=40;/*對整型變量f