第2章數(shù)據(jù)類(lèi)型、表達(dá)式和基本運(yùn)算_第1頁(yè)
第2章數(shù)據(jù)類(lèi)型、表達(dá)式和基本運(yùn)算_第2頁(yè)
第2章數(shù)據(jù)類(lèi)型、表達(dá)式和基本運(yùn)算_第3頁(yè)
第2章數(shù)據(jù)類(lèi)型、表達(dá)式和基本運(yùn)算_第4頁(yè)
第2章數(shù)據(jù)類(lèi)型、表達(dá)式和基本運(yùn)算_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

第2章數(shù)據(jù)類(lèi)型、表達(dá)式和基本運(yùn)算主講人:劉廣峰2.1數(shù)據(jù)類(lèi)型2.2常量2.2.1字面常量字面常量是指直接在程序中寫(xiě)出值的常量,又稱(chēng)為直接量。字面常量有整型常量,字符常量,邏輯常量,實(shí)型常量等。1.整型常量整型常量常用十進(jìn)制、八進(jìn)制或十六進(jìn)制方式來(lái)書(shū)寫(xiě)。十進(jìn)制整數(shù)。如-26、0、45、1364等。八進(jìn)制整數(shù)。以0開(kāi)頭,后跟若干個(gè)0~7的數(shù)字。如0123表示的十進(jìn)制數(shù)為1×82+2×8+3=83,+026表示2×8+6=22,而-035表示-(3×8+5)=-29。十六進(jìn)制整數(shù)。以0x或0X開(kāi)頭,后跟若干個(gè)0~9及a~f(或A~F),a~f分別表示十進(jìn)制整數(shù)10~15。如0xa61c6、0x8a等都是十六進(jìn)制數(shù)。0x1e3表示的十進(jìn)制整數(shù)為1×162+14×16+3=499。2.實(shí)型常量實(shí)數(shù)常量通常采用小數(shù)表示法或指數(shù)表示法。小數(shù)表示法。由整數(shù)部分、小數(shù)點(diǎn)“.”和小數(shù)部分構(gòu)成。如26.36、-8.6。小數(shù)點(diǎn)前、后僅為0時(shí),0可以省略。例如.1664、-64.分別表示0.1664和-64.0,但小數(shù)點(diǎn)不可以省略。指數(shù)表示法。格式為:<數(shù)字部分>E<指數(shù)部分>,數(shù)字部分采用小數(shù)表示法,中間的E也可以為小寫(xiě)e,指數(shù)部分只能是十進(jìn)制整數(shù),表示基數(shù)為10的指數(shù)。如6.022E3或6.022e3表示6022。注意:字母e(或E)前一定要有數(shù)字,其后一定要是整數(shù)。如0.6e,E8,1.23e9等都不是正確的表示形式。3.字符型常量字符型常量是用一對(duì)單引號(hào)(‘’)括起來(lái)的一個(gè)字符。字符型常量也可以是由一對(duì)單引號(hào)(‘’)括起來(lái)的一個(gè)字符編碼,此時(shí)必須采用轉(zhuǎn)義序列(以反斜杠“\”開(kāi)頭)來(lái)書(shū)寫(xiě)編碼。編碼可以采用八進(jìn)制或十六進(jìn)制表示。八進(jìn)制。格式為‘\ddd’,ddd為1~3位8進(jìn)制數(shù)。十六進(jìn)制。格式為‘\xhh’,hh為1~2位16進(jìn)制數(shù),x也可以為大寫(xiě)X。例如字符‘a(chǎn)’的編碼為97,要表示字符‘a(chǎn)’有三種方法:‘a(chǎn)’、‘\141’和‘\x65’。另外有些字符常量還可以采用特殊的轉(zhuǎn)義序列表示,如‘\n’(表示換行符)、‘\t’(表示水平制表符)、‘\b’(表示退格符Backspace)。即單引號(hào)內(nèi)以反斜杠“\”開(kāi)頭,加上一個(gè)特殊的轉(zhuǎn)義字符符

號(hào)含

義符

號(hào)含

義\a響鈴\v縱向制表\b退格\'單引號(hào)\f換頁(yè)\"雙引號(hào)\n換行\(zhòng)\反斜杠\r回車(chē)\0字符串結(jié)束符\t橫向制表

例2.1輸出各種類(lèi)型的字面常量。#include<iostream>usingnamespacestd;intmain(){ cout<<16<<''<<016<<''<<0x16<<endl;//連續(xù)輸出多個(gè)輸出項(xiàng) cout<<100<<''<<0145<<''<<0x65<<'\n'; cout<<258<<''<<134u<<''<<2048ul<<''<<127L<<'\012'; cout<<1.25<<''<<-.364<<''<<-3.74E12<<''<<897.4L<<endl; return0;}4.字符串常量字符串常量是用雙引號(hào)(“”)括起來(lái)的字符序列,序列中每個(gè)字符的書(shū)寫(xiě)方式與字符常量的書(shū)寫(xiě)方式基本相同,可以為字符本身或轉(zhuǎn)義字符序列,可以是英文字符,也可以是中文字符。2.2.2符號(hào)常量如果在程序中經(jīng)常用到某些常數(shù),則可以用一些符號(hào)來(lái)表示這些常數(shù)。在C++語(yǔ)言中,可以用標(biāo)識(shí)符表示一個(gè)常量,即給常量起一個(gè)名,其格式為:const<類(lèi)型名><常量名>=<常量值>;例2.2利用符號(hào)常量,計(jì)算并輸出半徑為6的圓的周長(zhǎng)和面積。#include<iostream>usingnamespacestd;intmain(){ constfloatPI=3.14; constintR=6; cout<<"圓的周長(zhǎng)為:"<<2*PI*R<<endl; cout<<"圓的面積為:"<<PI*R*R<<endl; return0;}2.3變量1.變量的定義

C++語(yǔ)言是一個(gè)強(qiáng)類(lèi)型的語(yǔ)言,規(guī)定對(duì)于變量,都必須先定義后使用。變量定義的格式為:<類(lèi)型名><變量名>[=<初始值>];例如:charch='b',ch1;2.變量三要素從上面可以看出,一個(gè)變量具有三個(gè)要素:數(shù)據(jù)類(lèi)型、名稱(chēng)、值。數(shù)據(jù)類(lèi)型決定了系統(tǒng)為該變量所分配的存儲(chǔ)單元的大小,對(duì)于下面定義的變量sum:intsum=0;sum占用4個(gè)字節(jié)的存儲(chǔ)單元。類(lèi)型同時(shí)也決定了以后可以對(duì)該類(lèi)型的變量進(jìn)行什么樣的操作。2.4數(shù)據(jù)的輸入/輸出C++語(yǔ)言中沒(méi)有提供專(zhuān)門(mén)的輸入輸出語(yǔ)句,所有的輸入輸出都是調(diào)用標(biāo)準(zhǔn)庫(kù)函數(shù)中的輸入輸出函數(shù)來(lái)實(shí)現(xiàn)的。在使用時(shí),應(yīng)在源程序的開(kāi)頭使用如下語(yǔ)句:#include<iostream>usingnamespacestd;數(shù)據(jù)的輸入輸入數(shù)據(jù)時(shí),提取運(yùn)算符>>和cin結(jié)合在一起使用,可從鍵盤(pán)輸入數(shù)據(jù)。格式:cin>>變量名1>>變量名2>>...>>變量n;數(shù)據(jù)的輸出輸出數(shù)據(jù)時(shí),通過(guò)插入運(yùn)算符<<和cout結(jié)合在一起使用,可向顯示器屏幕輸出數(shù)據(jù)。格式:cout<<表達(dá)式1<<表達(dá)式2<<...<<表達(dá)式n;2.4運(yùn)算符和表達(dá)式運(yùn)算符也稱(chēng)為操作符,是用來(lái)描述對(duì)數(shù)據(jù)所進(jìn)行的運(yùn)算的符號(hào)。C++語(yǔ)言運(yùn)算符根據(jù)所帶的操作數(shù)的個(gè)數(shù)可以分為:?jiǎn)文窟\(yùn)算符(一個(gè)操作數(shù))、雙目運(yùn)算符(兩個(gè)操作數(shù))、三目運(yùn)算符(三個(gè)操作數(shù))。根據(jù)運(yùn)算符的功能可以分為:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符、賦值運(yùn)算符、逗號(hào)運(yùn)算符以及其他運(yùn)算符。表達(dá)式是由變量、常量、運(yùn)算符、函數(shù)、()等按一定規(guī)則組成的式子。表達(dá)式書(shū)寫(xiě)規(guī)則:表達(dá)式必須滿(mǎn)足運(yùn)算符、標(biāo)識(shí)符的使用規(guī)則,無(wú)上標(biāo)、下標(biāo)之分。括號(hào)必須成對(duì)使用,只能使用圓括號(hào)。乘號(hào)不能省略。2.4.1算術(shù)運(yùn)算符及算術(shù)表達(dá)式/(除)運(yùn)算符兩個(gè)數(shù)相除的結(jié)果同操作數(shù)的類(lèi)型有關(guān)。若兩個(gè)操作數(shù)都為整型,則結(jié)果為整型。若至少一個(gè)操作數(shù)的類(lèi)型為浮點(diǎn)型,則結(jié)果為浮點(diǎn)型: inta=53; cout<<a/2<<endl; //輸出26 cout<<7/2<<endl;; //輸出3 cout<<7.0/2<<endl;; //輸出3.5%(取余)運(yùn)算符取余又稱(chēng)為求模運(yùn)算,就是取除法的余數(shù),要求其兩個(gè)操作數(shù)均為整型。例如: cout<<11%4<<endl; //輸出3 cout<<33%3<<endl; //輸出0 cout<<-11%2<<endl;//輸出-1 cout<<11%-2<<endl;//輸出1 cout<<4.0%3<<endl;//錯(cuò)誤,%兩邊都必須為整型操作數(shù)++、--(自增、自減)運(yùn)算符其功能是將操作數(shù)增加1或減少1。它們可以放在操作數(shù)的前面也可以放在后面。例如:inta=100; a++; //等價(jià)于a=a+1 cout<<"a="<<a<<endl;//輸出a=101 ++a; //等價(jià)于a=a+1 cout<<"a="<<a<<endl;//輸出a=102; --a; //等價(jià)于a=a-1 cout<<"a="<<a<<endl; //輸出a=101 a--; //等價(jià)于a=a-1 cout<<"a="<<a<<endl;//輸出a=100例2.3從鍵盤(pán)輸入華氏溫度,轉(zhuǎn)換成攝氏溫度并輸出#include<iostream>usingnamespacestd;intmain(){intC,F;//提示用戶(hù)輸入華氏溫度cout<<"請(qǐng)輸入華氏溫度:"<<endl;//從鍵盤(pán)讀取華氏溫度cin>>F;//計(jì)算攝氏溫度C=5*(F-32)/9;//顯示結(jié)果cout<<"攝氏溫度為"<<C<<"度"<<endl;return0;}2.4.2賦值運(yùn)算符及賦值表達(dá)式運(yùn)算符運(yùn)

算操作數(shù)個(gè)數(shù)=簡(jiǎn)單賦值,如a=100雙目+=加賦值,如a+=100即a=a+100雙目-=減賦值,如a-=100即a=a-100雙目*=乘賦值,如a*=100即a=a*100雙目/=除賦值,如a/=100即a=a/100雙目%=取模賦值,如a%=100即a=a%100雙目&=按位與賦值,如a&=100即a=a&100雙目|=按位或賦值,如a|=100即a=a|100雙目^=按位異或賦值,如a^=100即a=a^100雙目<<=向左移位賦值,如a<<=2即a=a<<2雙目>>=向右移位賦值,如a>>=3即a=a>>3雙目2.4.3sizeof運(yùn)算符及表達(dá)式在程序中,若要獲取變量占用的存儲(chǔ)單元大小,應(yīng)該使用sizeof運(yùn)算符來(lái)獲取,格式為:sizeof(<類(lèi)型名>)//或者:sizeof(<表達(dá)式>)例2.4輸出bool、char、int、short、long、float、long、double型變量占用的字節(jié)數(shù)。#include<iostream>usingnamespacestd;intmain(){ cout<<"sizeofbool:"<<sizeof(bool)<<endl; cout<<"sizeofchar:"<<sizeof(char)<<endl; cout<<"sizeofshort:"<<sizeof(short)<<endl; cout<<"sizeofint:"<<sizeof(int)<<endl; cout<<"sizeoflong:"<<sizeof(long)<<endl; cout<<"sizeoffloat:"<<sizeof(float)<<endl; cout<<"sizeofdouble:"<<sizeof(double)<<endl; cout<<"sizeoflongdouble:"<<sizeof(longdouble)<<endl; return0;}2.4.4逗號(hào)運(yùn)算符及逗號(hào)表達(dá)式逗號(hào)運(yùn)算符用來(lái)將兩個(gè)表達(dá)式連接起來(lái),逗號(hào)表達(dá)式的一般表達(dá)形式為:<表達(dá)式1>,<表達(dá)式2>,<表達(dá)式3>,...,<表達(dá)式n>2.4.5關(guān)系運(yùn)算符及關(guān)系表達(dá)式運(yùn)算符運(yùn)

算操作數(shù)個(gè)數(shù)<

小于,如4<3雙目>

大于,如a>b雙目==等于,如a==b雙目<=小于等于,如i<=12雙目>=大于等于,如v>=120雙目!=不等于,如rate!=1雙目2.4.6邏輯運(yùn)算符及邏輯表達(dá)式運(yùn)算符運(yùn)

算操作數(shù)個(gè)數(shù)&&邏輯與,如a>3&&b<4雙目||邏輯或,如len>100||len<200雙目!邏輯非,如!(flag==0)單目特別注意:在C++中求邏輯表達(dá)式結(jié)果的過(guò)程中,由若干邏輯運(yùn)算組成的表達(dá)式,從左至右,只要由部分運(yùn)算能確定整個(gè)邏輯表達(dá)式的值,后面的運(yùn)算就不再進(jìn)行,這就是邏輯表達(dá)式的求值優(yōu)化副作用。2.4.7條件運(yùn)算符及條件表達(dá)式條件運(yùn)算符(?:)有時(shí)也稱(chēng)為三目運(yùn)算符,其基本語(yǔ)法為:e1?e2:e3其中e1、e2、e3為3個(gè)表達(dá)式,條件運(yùn)算符的處理過(guò)程為:計(jì)算表達(dá)式e1的值,若e1的值為true,則計(jì)算表達(dá)式e2,結(jié)果作為整個(gè)表達(dá)式的值返回;否則計(jì)算并返回表達(dá)式e3的值。如求a、b兩個(gè)量中最大的值,可用表達(dá)式:(a>b)?a:b2.6運(yùn)算符的優(yōu)先級(jí)和結(jié)合性2.7 類(lèi)型轉(zhuǎn)換2.7.1 自動(dòng)類(lèi)型

溫馨提示

  • 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)論