資源描述:
《數(shù)據(jù)的存儲(chǔ)與運(yùn)算備課講稿.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、數(shù)據(jù)的存儲(chǔ)與運(yùn)算2.2整型數(shù)據(jù)的運(yùn)算與分析2.2.1例2.1雞兔同籠在一個(gè)籠子里同時(shí)養(yǎng)著一些雞和兔,你想了解有多少只雞和多少只兔,主人對(duì)你說(shuō):我只告訴你雞和兔的總頭數(shù)是16和總腳數(shù)是40,你能不能自己計(jì)算有多少只雞和多少只兔?編寫(xiě)程序:#includevoidmain(){intf,h,x,y;h=16;f=40;y=(f-2*h)/2;x=h-y;printf(“%d%d”,x,y);}2.2.2整形常量與整形變量(1)在程序運(yùn)行過(guò)程中,值不能被改變的量稱(chēng)為常量。常量可分為不同的類(lèi)型,如0,-1為整型常量;0.5,-1
2、.5為實(shí)型常量;'A','#'為字符型常量;“Abc”為字符串常量,這些常量都是直接常量。2.2整型數(shù)據(jù)的運(yùn)算與分析(2)所謂變量,就是在程序運(yùn)行過(guò)程中值可以發(fā)生變化的量,它的作用是用來(lái)存放常量的。變量定義的一般形式為:類(lèi)型說(shuō)明符變量名1,變量名2,變量名3,……;如:inta,b,c;floatA,B,C;2.2整型數(shù)據(jù)的運(yùn)算與分析(3)變量名的取名規(guī)則1)只能由字母、數(shù)字和下劃線三種字符組成;2)第一個(gè)字符必須為字母或下劃線。3)大小寫(xiě)字母代表不同的字符,通常變量名用小寫(xiě)字母表示。4)變量名盡量簡(jiǎn)單易記、見(jiàn)名之意。5)在同一程序的同一函數(shù)
3、中,不同的變量不能取相同的變量名,以免混淆。2.2整型數(shù)據(jù)的運(yùn)算與分析(4)變量必須“先定義,后使用”1)根據(jù)定義時(shí)的類(lèi)型,編譯系統(tǒng)為變量分配相應(yīng)的存儲(chǔ)單元。例:int型,若為T(mén)urboC編譯系統(tǒng),則為每個(gè)整形變量分配2個(gè)字節(jié)若為VisualC++,則分配4個(gè)字節(jié)。2)凡未被事先定義的,系統(tǒng)不把它認(rèn)作變量名,保證程序中變量名使用的正確性。3)指定了每一變量屬于一個(gè)類(lèi)型,便于在編譯時(shí)檢查在程序中要求對(duì)該變量進(jìn)行的運(yùn)算是否正確。2.2整型數(shù)據(jù)的運(yùn)算與分析(5)整型常量C語(yǔ)言中整型常數(shù)有3種不同的表示形式:(1)十進(jìn)制,例如25,789,888。(
4、2)八進(jìn)制,為了與十進(jìn)制數(shù)有所區(qū)別,在八進(jìn)制整數(shù)前加一個(gè)標(biāo)識(shí)符“0”,例如0123,0777,-0145。(3)十六進(jìn)制,為了和其他進(jìn)制數(shù)有所區(qū)別,在十六進(jìn)制整數(shù)前面加一個(gè)標(biāo)識(shí)符“0X”,例如0X123,0X658。2.2整型數(shù)據(jù)的運(yùn)算與分析(6)整型變量數(shù)據(jù)在內(nèi)存中是以二進(jìn)制形式存放的。如果聲明了一個(gè)整型變量k:intk;/*聲明為整型變量*/k=12;/*給變量賦以整數(shù)值12*/2.2整型數(shù)據(jù)的運(yùn)算與分析每個(gè)整型變量在內(nèi)存中占2個(gè)字節(jié)也就是16位,十進(jìn)制整數(shù)12的二進(jìn)制形式為1100,在內(nèi)存中以下圖形式存放:2.2整型數(shù)據(jù)的運(yùn)算與分析2.
5、3實(shí)型數(shù)據(jù)的運(yùn)算與分析例2.2分期付款的計(jì)算張先生為購(gòu)房,向銀行貸款,貸款額為D元,每月準(zhǔn)備還P元,月利率為R,求需要多少個(gè)月可以還清。已知計(jì)算公式為M是還清貸款所需月數(shù)。今假設(shè)D=324500元,P=3245元,R=0.8%。編程求還貸月數(shù)M和總共還多少錢(qián)?編寫(xiě)程序:#include#includevoidmain(){intd,p;floatr,m;d=324500;p=3245;r=0.008;m=(log10(p)-log10(p-d*r))/log10(1+r);printf(“month=%f
6、”,m);printf(“total=%f”,m*p);}2.3實(shí)型數(shù)據(jù)的運(yùn)算與分析實(shí)型常量(浮點(diǎn)數(shù))C語(yǔ)言中的實(shí)型常量如同其他高級(jí)語(yǔ)言中的實(shí)數(shù),是由整數(shù)、小數(shù)和指數(shù)3部分組成,它的表示方法有兩種:(1)十進(jìn)制小數(shù)形式:由數(shù)字和小數(shù)點(diǎn)組成。例如4.87,-89.556,123.,123.0‘,0.0。(2)指數(shù)形式:用科學(xué)記數(shù)法來(lái)表示。例如24.13e4,-5.45E9,56.3e-4都是合法的實(shí)型數(shù)的表示方法。56.3e-4=56.3×10-4注意:字母e(E)之前必須有數(shù)字,且e后面的指數(shù)必須為整數(shù)。實(shí)型變量1.分類(lèi):?jiǎn)尉葘?shí)型變量(
7、float型)雙精度實(shí)型變量(double型)長(zhǎng)雙精度實(shí)型變量(longdouble型)一般占4個(gè)字節(jié)的單精度數(shù)據(jù)的有效位數(shù)為7位,雙精度數(shù)據(jù)的有效位數(shù)為15~16位。2.3實(shí)型數(shù)據(jù)的運(yùn)算與分析2.實(shí)型數(shù)據(jù)的舍入誤差例2.3#includevoidmain(){floatp;P=3.141592612;Printf(“a=%f”,p);}運(yùn)行結(jié)果為:a=3.141593注意:在用計(jì)算機(jī)進(jìn)行計(jì)算時(shí),必須建立工程觀點(diǎn)。2.3實(shí)型數(shù)據(jù)的運(yùn)算與分析3.把實(shí)數(shù)按雙精度數(shù)處理C編譯系統(tǒng)一般都把程序中的實(shí)數(shù)常量處理成雙精度類(lèi)型,分配
8、8個(gè)字節(jié),以提高精度。對(duì)例2.3進(jìn)行改進(jìn)。注意:在程序中,對(duì)實(shí)型變量最好都定義成double型。2.3實(shí)型數(shù)據(jù)的運(yùn)算與分析例2.4逐個(gè)輸出英文字母C,H,I,N,A