- 輕松學(xué)編程:中小學(xué)C++零基礎(chǔ)入門(mén)
- 楊博洋 王建元 張登奎主編
- 2052字
- 2022-07-29 13:56:47
1.3 變量與賦值
引入
蒜頭君:在做一些復(fù)雜的運(yùn)算時(shí),通常需要將當(dāng)前的數(shù)值臨時(shí)保存起來(lái),在后面的表達(dá)式里繼續(xù)參與計(jì)算,那么C++有什么方式可以讓我將數(shù)值臨時(shí)存儲(chǔ)嗎?
花椰妹:快來(lái)試試用變量吧!
講解
變量(variables)是C++語(yǔ)言中非常重要的概念,可以將它看作一個(gè)“盒子”,每個(gè)“盒子”中都可以?xún)?chǔ)存一定的數(shù)值。這個(gè)盒子本身有兩個(gè)重要的屬性:變量類(lèi)型(variable type)和變量名(variable name)。
1.變量類(lèi)型
它說(shuō)明了每個(gè)“盒子”是多大的,約定裝什么樣的東西。“盒子”有許多不同的類(lèi)型,如“盒子”可以是只能裝下蘋(píng)果的小盒子,也可以是裝下西瓜的大盒子等。“盒子”的類(lèi)型一旦創(chuàng)建就不能修改,但“盒子”里的數(shù)值是可以改變的。
2.變量名
它說(shuō)明了可以怎么稱(chēng)呼這個(gè)“盒子”,每個(gè)“盒子”都有一個(gè)屬于自己的變量名。同樣地,變量名一旦創(chuàng)建,以后也不能修改(注意,變量名必須以字母或下畫(huà)線_開(kāi)頭,中間只能包含字母、_和數(shù)字)。
圖1.1所示的這個(gè)“盒子”是一個(gè)名為number的int類(lèi)型變量,它的變量值為2。int類(lèi)型表示的是整數(shù)(integer),通常占4字節(jié)大小。

圖1.1 “盒子”
引入
蒜頭君:那么我要如何使用int類(lèi)型的變量呢?
花椰妹:通過(guò)聲明語(yǔ)句和賦值語(yǔ)句對(duì)int類(lèi)型的變量進(jìn)行定義之后就可以使用了。
講解
變量有兩個(gè)重要屬性:變量類(lèi)型和變量名。這兩個(gè)屬性都是在聲明語(yǔ)句中進(jìn)行定義的。例如,想聲明一個(gè)類(lèi)型為int、變量名為number的變量,就可以采用如下的方法:
int number;
聲明語(yǔ)句就是由變量類(lèi)型、變量名及分號(hào)組成的。int表示這個(gè)變量的類(lèi)型,number表示這個(gè)變量的名稱(chēng)。
在賦值語(yǔ)句中要學(xué)習(xí)一個(gè)符號(hào)——=。請(qǐng)注意,在這里不叫它“等于號(hào)”,而叫它“賦值運(yùn)算符”,它可以將它右側(cè)的一個(gè)值賦值給左側(cè)的一個(gè)變量,讓變量這個(gè)“盒子”里面裝上右側(cè)的值。例如:
number = 2;
請(qǐng)注意,在變量的聲明語(yǔ)句中可以直接對(duì)變量進(jìn)行賦值,可以采用如下的寫(xiě)法:
int number = 2;
同一個(gè)變量名在整個(gè)代碼段中只能被聲明一次,在進(jìn)行聲明之后,可以進(jìn)行多次的賦值操作,并且變量在賦值之后才能參與其他運(yùn)算或輸出。在輸出變量的值時(shí),只需要在cout<<后直接跟變量名就可以了,不需要再像前面一樣在代碼中加雙引號(hào)。例如:
cout << number << endl;
示例代碼

通過(guò)剛才的幾行代碼,就完成了圖1.2所示的一個(gè)過(guò)程。

圖1.2 賦值過(guò)程
引入
蒜頭君:C++中只能對(duì)整數(shù)類(lèi)型進(jìn)行運(yùn)算嗎?
花椰妹:當(dāng)然不是了,如果需要用變量存儲(chǔ)非整數(shù)的數(shù)值,如3.5這樣的小數(shù),可以采用浮點(diǎn)數(shù)類(lèi)型。
講解
在進(jìn)行除法運(yùn)算時(shí),有時(shí)候會(huì)出現(xiàn)不能整除的情況,在數(shù)學(xué)上通常采用小數(shù)來(lái)表示,如3÷2=1.5,C++中通常采用浮點(diǎn)類(lèi)型變量來(lái)表示這類(lèi)小數(shù)。
C++中有兩種浮點(diǎn)類(lèi)型,分別為float類(lèi)型(單精度浮點(diǎn)數(shù)類(lèi)型)和double類(lèi)型(雙精度浮點(diǎn)數(shù)類(lèi)型)。那么這兩種類(lèi)型有什么區(qū)別呢?
double類(lèi)型比f(wàn)loat類(lèi)型要大一些,它能夠表示的數(shù)據(jù)范圍也遠(yuǎn)遠(yuǎn)大于float類(lèi)型,如圖1.3所示。在初學(xué)C++時(shí)盡可能都采用高精度double類(lèi)型來(lái)存儲(chǔ)小數(shù)。

圖1.3 兩種浮點(diǎn)類(lèi)型
練習(xí)
設(shè)計(jì)一個(gè)程序來(lái)計(jì)算正方形的周長(zhǎng)和面積。用double類(lèi)型定義一個(gè)變量length,用來(lái)存儲(chǔ)正方形的邊長(zhǎng),然后輸出當(dāng)邊長(zhǎng)為2.5時(shí),這個(gè)正方形的周長(zhǎng)和面積。
講解
首先寫(xiě)出C++的基本代碼框架:

在第四行聲明一個(gè)double類(lèi)型的變量length并將2.5賦值給length,然后通過(guò)正方形的周長(zhǎng)公式和面積公式,輸出這兩個(gè)表達(dá)式的值就可以了。聰明的你,思考一下如何輸出正方形的周長(zhǎng)和面積。
正方形的周長(zhǎng)公式:4×length。
正方形的面積公式:length×length。
示例代碼

知識(shí)點(diǎn)
(1)變量:能儲(chǔ)存計(jì)算結(jié)果或能表示值的抽象概念。變量類(lèi)型是存儲(chǔ)的數(shù)據(jù)類(lèi)型;變量名是以字母或下畫(huà)線開(kāi)頭的字母、數(shù)字和下畫(huà)線的組合,為了便于記憶通常會(huì)采用單詞或縮寫(xiě)來(lái)表示;變量值是變量當(dāng)前存儲(chǔ)的數(shù)值。
(2)int:整數(shù)類(lèi)型。整數(shù)的英文(integer)縮寫(xiě)。在一般的計(jì)算機(jī)中,一個(gè)int占用4字節(jié),即32比特,數(shù)據(jù)范圍為-2147483648~+2147483647。
(3)float:?jiǎn)尉雀↑c(diǎn)數(shù)類(lèi)型。其占用4字節(jié),包括一個(gè)符號(hào)位、一個(gè)8位指數(shù)和一個(gè)23位尾數(shù),數(shù)據(jù)范圍為-3.4×1038~+3.4×1038,通常包含7位有效數(shù)字。
(4)double:雙精度浮點(diǎn)數(shù)類(lèi)型。其占用8字節(jié),包括一個(gè)8位指數(shù)和一個(gè)23位尾數(shù),數(shù)據(jù)范圍為-1.8×10308~1.8×10308,通常包含15位有效數(shù)字。
(5)聲明:當(dāng)一個(gè)計(jì)算機(jī)程序需要調(diào)用內(nèi)存空間時(shí),對(duì)內(nèi)存發(fā)出的“占位”指令稱(chēng)為“聲明”。在C++程序中,所有變量在使用之前都必須先聲明。
(6)賦值:將一個(gè)數(shù)值復(fù)制給變量的過(guò)程。賦值符號(hào)“=”的意義是將右側(cè)的數(shù)值復(fù)制給左側(cè)的變量。
拓展閱讀
1024的故事
蒜頭君成為了蒜廠的一名光榮的程序員,每天和程序相伴。一天,小土豆找蒜頭君借點(diǎn)錢(qián)。
小土豆:蒜頭君,能不能借我點(diǎn)錢(qián)?
蒜頭君:借多少?
小土豆:一千塊就夠啦。
蒜頭君:喏,給你湊個(gè)整,1024元。
現(xiàn)在問(wèn)題來(lái)了,為什么1000不整,而1024整呢?在計(jì)算機(jī)中,1024是一個(gè)非常重要的數(shù)字。由于計(jì)算機(jī)中都是以二進(jìn)制存儲(chǔ)數(shù)據(jù)的,因此,數(shù)據(jù)的大小一般都以2的某次方為單位。
回憶之前操作計(jì)算機(jī)的經(jīng)歷,是不是對(duì)KB、MB、GB這些文件大小的單位有印象呢?在計(jì)算機(jī)中,數(shù)據(jù)大小的最小單位是字節(jié)(Byte),一般縮寫(xiě)為B。以下是常見(jiàn)大小單位之間的換算規(guī)則:
1KB=1024B
1MB=1024KB
1GB=1024MB
而1024剛好是2的10次方,并且恰好還和10的3次方非常接近,所以就作為數(shù)據(jù)大小的換算因數(shù)了。現(xiàn)在,你知道為什么對(duì)于程序員來(lái)說(shuō)1024是一個(gè)非常“整”的數(shù)了吧!
- 全閱讀課本(五·上)
- 預(yù)見(jiàn)學(xué)習(xí),遇見(jiàn)成長(zhǎng):學(xué)校開(kāi)展項(xiàng)目學(xué)習(xí)的實(shí)踐與探索
- 教你打門(mén)球(學(xué)生球類(lèi)運(yùn)動(dòng)學(xué)習(xí)手冊(cè))
- 寂寞圣哲
- 影響中國(guó)學(xué)生的經(jīng)典寓言故事之六
- 一認(rèn)真你就記住了:高考英語(yǔ)詞匯速記手冊(cè)
- 德育引論
- 數(shù)學(xué)思維:小班(下)(共6冊(cè))
- 威武正氣的故事
- 周計(jì)劃:小學(xué)英語(yǔ)閱讀強(qiáng)化訓(xùn)練(三年級(jí))(第二版)
- 可愛(ài)的中國(guó)
- 教你踢足球(學(xué)生球類(lèi)運(yùn)動(dòng)學(xué)習(xí)手冊(cè))
- 昆蟲(chóng)記
- 小學(xué)主題教育36課
- 初中寫(xiě)作讀本