版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
語(yǔ)言數(shù)據(jù)類型演示文稿第一頁(yè),共六十一頁(yè)。(優(yōu)選)語(yǔ)言數(shù)據(jù)類型第二頁(yè),共六十一頁(yè)。第二章數(shù)據(jù)類型、運(yùn)算符和表達(dá)式內(nèi)容提要數(shù)據(jù)類型常量與變量運(yùn)算符與表達(dá)式第三頁(yè),共六十一頁(yè)。2.1數(shù)據(jù)類型數(shù)據(jù)類型總表雙精度型double單精度型float短整型shortC數(shù)據(jù)類型基本類型指針類型空類型void字符類型char整型實(shí)型聚合類型枚舉類型enum數(shù)組結(jié)構(gòu)體struct共用體union長(zhǎng)整型long整型int數(shù)據(jù)類型決定:1.數(shù)據(jù)占內(nèi)存字節(jié)數(shù)2.數(shù)據(jù)取值范圍3.其上可進(jìn)行的操作第四頁(yè),共六十一頁(yè)。類型符號(hào)關(guān)鍵字?jǐn)?shù)的表示范圍所占位數(shù)整型字符型實(shí)型有無(wú)(signed)int16-32768~32767(signed)short16-32768~32767(signed)long32-2147483648~214748364716unsigned
int0~65535320~4294967295unsigned
longunsigned
short160~65535有float323.4e-38~3.4e38有double641.7e-308~1.7e308有char8-128~127無(wú)unsignedchar80~255說(shuō)明:數(shù)據(jù)類型所占字節(jié)數(shù)隨機(jī)器硬件不同而不同,
上表以IBMPC機(jī)為例。基本數(shù)據(jù)類型2.1數(shù)據(jù)類型第五頁(yè),共六十一頁(yè)。2.2
常量與變量數(shù)據(jù)是程序的處理對(duì)象C語(yǔ)言將數(shù)據(jù)分為常量與變量第六頁(yè),共六十一頁(yè)。2.2.1常量1.常量的定義及分類定義:程序運(yùn)行的過(guò)程中,其值不能改變的量。分類:整型常量實(shí)型常量字符常量字符串常量符號(hào)常量2.2
常量與變量第七頁(yè),共六十一頁(yè)。2.整型常量(既整常數(shù))三種形式:十進(jìn)制整數(shù):由數(shù)字0~9和正負(fù)號(hào)表示.如123,-456,0八進(jìn)制整數(shù):由數(shù)字0開(kāi)頭,后跟數(shù)字0~7表示.如0123,011十六進(jìn)制整數(shù):由0x開(kāi)頭,后跟0~9,a~f,A~F表示.如0x123,0Xff
轉(zhuǎn)換成十進(jìn)制數(shù)的方法:0123=1x82+2x81+3x80=(83)100x123=1x162+2x161+3x160=(291)100Xff=15x161+15x160=(255)102.2
常量與變量第八頁(yè),共六十一頁(yè)。整型常量的說(shuō)明(1)空白字符不可以出現(xiàn)在整數(shù)數(shù)字之間(2)根據(jù)其值所在范圍確定其數(shù)據(jù)類型(3)在整常量后加字母l或L,認(rèn)為它是
longint型常量例如
30000為int型65536
為longint型
79L、012L
為longint
型2.2
常量與變量第九頁(yè),共六十一頁(yè)。3.實(shí)型常量實(shí)常數(shù)或浮點(diǎn)數(shù),是一個(gè)十進(jìn)制表示的符號(hào)實(shí)數(shù)表示形式:十進(jìn)制小數(shù)形式
[digits].[digits]如0.123,.123,123.0,0.0,123.指數(shù)形式(包括整數(shù)部分、尾數(shù)部分和指數(shù)部分)
[digits][.digits][E|e[+|-]digits]
小數(shù)點(diǎn)之前是整數(shù)部分,小數(shù)點(diǎn)之后是尾數(shù)部分,小數(shù)點(diǎn)在沒(méi)有尾數(shù)時(shí)可省略。
如12.3e3,123E22.2
常量與變量第十頁(yè),共六十一頁(yè)。實(shí)型常量的說(shuō)明(1)實(shí)型常量采用十進(jìn)制小數(shù)形式表示時(shí),必須有小數(shù)點(diǎn)。例如:123.是實(shí)型常量,而123是整型常量(2)采用指數(shù)形式表示時(shí),在E或e之前必須要有數(shù)字,且之后的指數(shù)必須為整數(shù)。例如:E6、.e6、e等都是不合法的(3)實(shí)型常量的整數(shù)部分為0時(shí)可以省略,如下形式是允許的:.57,.0075e2,-.125,-.175E-2(4)所有的實(shí)型常量均被看作是雙精度類型(double)2.2
常量與變量第十一頁(yè),共六十一頁(yè)。4.字符常量定義:用單引號(hào)括起來(lái)的單個(gè)普通字符或轉(zhuǎn)義字符。分為一般字符常量和特殊字符常量一般字符常量:如’a’、’9’、’!’等。單引號(hào)只起定界作用并不表示字符本身,中間的字符可以是除單引號(hào)(’)和反斜杠(\)以外的數(shù)字、字母等C語(yǔ)言字符集中包含的所有可顯示字符。特殊字符常量(也叫轉(zhuǎn)義字符)是C語(yǔ)言中表示字符的一種特殊形式,其含義為將反斜杠(\)后面的字符轉(zhuǎn)換成另外的意義。2.2
常量與變量第十二頁(yè),共六十一頁(yè)。字符常量的值:該字符的ASCII碼值如‘A’——65,‘a(chǎn)’——97,
‘0’——48,‘\n’——10轉(zhuǎn)義字符及其含義:<轉(zhuǎn)義字符含義\n\v\r\a\‘\ddd\t\b\f\\\“\xhh轉(zhuǎn)義字符含義換行垂直制表回車響鈴單引號(hào)3位8進(jìn)制數(shù)代表的字符水平制表退格換頁(yè)反斜線雙引號(hào)2位16進(jìn)制數(shù)代表的字符2.2
常量與變量第十三頁(yè),共六十一頁(yè)。如‘\101’-----------‘A’‘\012’-----------’\n’‘\376’-----------’’‘\x61’-----------’a’‘\060’-----------’0’例轉(zhuǎn)義字符舉例
intmain(){printf("\101\x42C\n");printf("Isay:\"Howareyou?\"\n");printf("\\CProgram\\\n");printf("Turbo\'C\'");}運(yùn)行結(jié)果:(屏幕顯示)ABCIsay:”Howareyou?”\CProgram\Turbo‘C’2.2
常量與變量第十四頁(yè),共六十一頁(yè)。字符常量與字符串常量不同5.字符串常量定義:用雙引號(hào)(“”)括起來(lái)的字符序列存儲(chǔ):每個(gè)字符串尾自動(dòng)加一個(gè)‘\0’作為字符串結(jié)束標(biāo)志hello\0例字符串“hello”在內(nèi)存中a
a\0例‘a(chǎn)’“a”例空串“”\0例:charch;ch=“A”;例:charch;ch=‘A’;2.2
常量與變量第十五頁(yè),共六十一頁(yè)。6.符號(hào)常量
(1)標(biāo)識(shí)符定義:用來(lái)標(biāo)識(shí)變量、常量、函數(shù)等的字符序列組成:只能由字母、數(shù)字、下劃線組成,且第一個(gè)字母必須是字母或下劃線大小寫(xiě)敏感不能使用關(guān)鍵字長(zhǎng)度:最長(zhǎng)32個(gè)字符命名原則:見(jiàn)名知義不宜混淆如1與l,o與0例:判斷下列標(biāo)識(shí)符號(hào)合法性sumSumM.D.JohndayDate3daysstudent_name#33lotus_1_2_3chara>b_above$123M.D.John3days#33char$123a>b2.2
常量與變量第十六頁(yè),共六十一頁(yè)。
在C語(yǔ)言中,允許將程序中的常量定義為一個(gè)標(biāo)識(shí)符,稱為符號(hào)常量。在使用符號(hào)常量前必須先加以定義,一般情況下,符號(hào)常量使用大寫(xiě)英文字母表示。其定義的一般形式為:#define<符號(hào)常量名><常量>例如:#definePRICE352.2
常量與變量第十七頁(yè),共六十一頁(yè)。2.2.2變量概念:其值可以改變的量變量名與變量值變量定義的一般格式:數(shù)據(jù)類型變量1[,變量2,…,變量n];變量初始化:定義時(shí)賦初值變量的使用:先定義,后使用變量值3a變量名存儲(chǔ)單元決定分配字節(jié)數(shù)和數(shù)的表示范圍合法標(biāo)識(shí)符例:inta,b,c;floatdata;例:inta=2,b,c=4;floatdata=3.67;charch=‘A’;intx=1,y=1,z=1;
intx=y=z=1;╳main(){inta,b=2;floatdata;a=1;data=(a+b)*1.2;printf(“data=%f\n”,data);}變量定義main(){inta,b=2;a=1;floatdata;data=(a+b)*1.2;printf(“data=%f\n”,data);}2.2
常量與變量第十八頁(yè),共六十一頁(yè)。編譯程序根據(jù)變量定義為其分配指定字節(jié)的內(nèi)存單元…...地址inta=1,b=-3,c;abc2字節(jié)2字節(jié)2字節(jié)地址地址…...內(nèi)存1-3隨機(jī)數(shù)變量定義位置:一般放在函數(shù)開(kāi)頭2.2
常量與變量第十九頁(yè),共六十一頁(yè)。
與常量類似,變量也有不同的類型,一般可以分為以下三種類型:整型變量實(shí)型變量字符變量2.2
常量與變量第二十頁(yè),共六十一頁(yè)。1.整型變量
(1)整型變量的分類
基本型短整型長(zhǎng)整型無(wú)符號(hào)整型基本型:類型說(shuō)明符為int,在內(nèi)存中占2個(gè)字節(jié)。短整型:類型說(shuō)明符為shortint或short,所占字節(jié)和取值范圍均與基本型相同。長(zhǎng)整型:類型說(shuō)明符為longint或long,在內(nèi)存中占4個(gè)字節(jié)。無(wú)符號(hào)整型:類型說(shuō)明符為unsigned。ⅰ.無(wú)符號(hào)基本型:類型說(shuō)明符為 unsignedint或unsigned。ⅱ.無(wú)符號(hào)短整型:類型說(shuō)明符為 unsignedshort。ⅲ.無(wú)符號(hào)長(zhǎng)整型:類型說(shuō)明符為 unsignedlong。2.2
常量與變量第二十一頁(yè),共六十一頁(yè)。例2-1整型變量的使用#include<stdio.h>intmain(){intx,y,z;x=10;y=20;z=x+y;printf(“x+y=%d\n”,z);return0;}輸出結(jié)果:x+y=30(2)整型變量的定義與使用2.2
常量與變量第二十二頁(yè),共六十一頁(yè)。intx;x=10;則變量x的值10在內(nèi)存中的存放形式:intx;x=-10;則變量x的值10在內(nèi)存中的存放形式:(3)整型數(shù)據(jù)在內(nèi)存中的存放形式2.2
常量與變量第二十三頁(yè),共六十一頁(yè)。例2-2整型數(shù)據(jù)的溢出問(wèn)題#include<stdio.h>intmain(){intx,y;x=32767;y=x+1;printf("%d,%d\n",x,y);return0;}運(yùn)行結(jié)果:-32768原因:一個(gè)int型變量只能容納-32768到32767范圍內(nèi)的數(shù),無(wú)法表示超過(guò)這個(gè)范圍的數(shù)。(4)整型數(shù)據(jù)的溢出2.2
常量與變量第二十四頁(yè),共六十一頁(yè)。2.實(shí)型變量
(1)實(shí)型變量的分類單精度實(shí)型:類型說(shuō)明符為float,在內(nèi)存中占4個(gè)字節(jié),提供7位有效數(shù)字。雙精度實(shí)型:類型說(shuō)明符為double,在內(nèi)存中占8個(gè)字節(jié),提供15~16位有效數(shù)字。例floata;a=111111.111;/*a=111111.1*/doubleb;b=111111.111;/*b=111111.111*/2.2
常量與變量第二十五頁(yè),共六十一頁(yè)。例2-3實(shí)型變量的使用#include<stdio.h>intmain(){ floatx,y,z; x=10; y=20; z=x+y; printf(“x+y=%f\n”,z); return0;}運(yùn)行結(jié)果:x+y=30.000000(2)實(shí)型變量的定義與使用2.2
常量與變量第二十六頁(yè),共六十一頁(yè)。例a=‘D’;/*a=68;*/x=‘A’+5;/*x=65+5;*/s=‘!’+‘G’/*s=33+71;*/字符變量存放字符ASCII碼char與int數(shù)據(jù)間可進(jìn)行算術(shù)運(yùn)算沒(méi)有字符串變量,用字符數(shù)組存放(3)字符變量2.2
常量與變量第二十七頁(yè),共六十一頁(yè)。#include<stdio.h>intmain(){charc1,c2;/*定義c1,c2為字符型變量*/c1=97;c2=98;/*將整數(shù)97和98分別賦給c1和c2*/printf(”%c,%c\n”,c1,c2);/*以字符形式輸出c1和c2*/printf(”%d,%d”,c1,c2);/*輸出c1和c2的ASCII碼值*/printf(”%d”,c1+c2);return0;}運(yùn)行結(jié)果如下:a,b97,98
2.2
常量與變量第二十八頁(yè),共六十一頁(yè)。例#definePRICE12.5main(){intnum=3;floattotal;charch1,ch2=‘D’;total=num*PRICE;ch1=ch2-‘A’+‘a(chǎn)’;printf(“total=%f,ch1=%c\n”,total,ch1);}宏定義變量定義輸出結(jié)果運(yùn)行結(jié)果:total=37.500000,ch1=d(4)變量的初始化2.2
常量與變量第二十九頁(yè),共六十一頁(yè)。C運(yùn)算符算術(shù)運(yùn)算符:(+-*/%++--)關(guān)系運(yùn)算符:(<<===>>=!=)邏輯運(yùn)算符:((!&&||)位運(yùn)算符:(<<>>~|^&)賦值運(yùn)算符:(=及其擴(kuò)展)條件運(yùn)算符:(?:)逗號(hào)運(yùn)算符:(,)指針運(yùn)算符:(*&)求字節(jié)數(shù):(sizeof)強(qiáng)制類型轉(zhuǎn)換:(類型)分量運(yùn)算符:(.->)下標(biāo)運(yùn)算符:([])其它:(()-)運(yùn)算符的分類
2.3
運(yùn)算符與表達(dá)式第三十頁(yè),共六十一頁(yè)。定義:由常量、變量、函數(shù)、運(yùn)算符和括號(hào)組合起來(lái)的、符合C語(yǔ)法規(guī)則的式子稱為表達(dá)式。一個(gè)表達(dá)式有一個(gè)值以及其對(duì)應(yīng)的類型表達(dá)式求值首先進(jìn)行優(yōu)先級(jí)高的運(yùn)算再進(jìn)行優(yōu)先級(jí)低的運(yùn)算,然后對(duì)于優(yōu)先級(jí)相同的運(yùn)算按結(jié)合方向進(jìn)行運(yùn)算。結(jié)合方向:左結(jié)合、右結(jié)合例如:x-y+z(x-y)+z
x=y=zx=(y=z)
2.3
運(yùn)算符與表達(dá)式第三十一頁(yè),共六十一頁(yè)。算術(shù)運(yùn)算符及算術(shù)表達(dá)式1.基本算術(shù)運(yùn)算符:+-*/%結(jié)合方向:從左向右優(yōu)先級(jí):(高)-->*/%----->+-說(shuō)明:“-”可為單目運(yùn)算符時(shí),右結(jié)合性兩整數(shù)相除,結(jié)果為整數(shù),如果兩整數(shù)中有一個(gè)是負(fù)數(shù),舍入規(guī)則為“向零取整”如果運(yùn)算的兩個(gè)數(shù)中有一個(gè)是實(shí)型,則結(jié)果為double型%要求兩側(cè)均為整型數(shù)據(jù)例5/2=2
-5/2.0=-2.55%2=1
-5%2=-11%10=
15%1=
05.5%2()
2.3
運(yùn)算符與表達(dá)式第三十二頁(yè),共六十一頁(yè)。#include<stdio.h>intmain(){printf(”10-9/6*5=%d”,10–9/6*5);return0;}運(yùn)行結(jié)果如下:10-9/6*5=5
#include<stdio.h>main(){intx=5,y;y=++x;printf("%d\n",y);}輸出結(jié)果:6例2-5計(jì)算表達(dá)式10-9/6*5
2.3
運(yùn)算符與表達(dá)式第三十三頁(yè),共六十一頁(yè)。例2-6計(jì)算表達(dá)式10-3.0/2的值#include<stdio.h>intmain(){printf(”10-3.0/2=%f”,10-3.0/2);}運(yùn)行結(jié)果如下:10-3.0/2=8.500000
2.3
運(yùn)算符與表達(dá)式第三十四頁(yè),共六十一頁(yè)。2.算術(shù)表達(dá)式定義:用算術(shù)運(yùn)算符和括號(hào)將運(yùn)算對(duì)象連接起來(lái)的、符合C語(yǔ)法規(guī)則的式子稱為算術(shù)表達(dá)式。其中的運(yùn)算對(duì)象包括常量、變量、函數(shù)等。例如:x+y、(x*2)/y、sin(x)+sin(y)等都是算術(shù)表達(dá)式。doublefloatlongunsignedintchar,short高低
2.3
運(yùn)算符與表達(dá)式第三十五頁(yè),共六十一頁(yè)。(1)(x+y)×h÷2(2)s(s-a)(s-b)(s-c)(3)(x+1)2+(y-1)2在C語(yǔ)言中,其合法的算術(shù)表達(dá)式如下:(1)(x+y)*h/2.0(2)s*(s-a)*(s-b)*(s-c)(3)(x+1)*(x+1)+(y-1)*(y-1)例2-7寫(xiě)出下列數(shù)學(xué)表達(dá)式對(duì)應(yīng)的合法的C算術(shù)表達(dá)式
2.3
運(yùn)算符與表達(dá)式第三十六頁(yè),共六十一頁(yè)。種類:
<<=>=>==!=
結(jié)合方向:自左向右優(yōu)先級(jí)別:關(guān)系運(yùn)算符優(yōu)先級(jí)低于算術(shù)運(yùn)算符優(yōu)先級(jí)6(高)優(yōu)先級(jí)7(低)<<=>>===!=2.3.2關(guān)系運(yùn)算符及關(guān)系表達(dá)式1.關(guān)系運(yùn)算符例:c>a+b等價(jià)于c>(a+b)a>b!=c(a>b)!=ca==b<ca==(b<c)a=b>ca=(b>c)
2.3
運(yùn)算符與表達(dá)式第三十七頁(yè),共六十一頁(yè)。關(guān)系運(yùn)算結(jié)果:1(真)和0(假)
例2-8計(jì)算下列關(guān)系表達(dá)式的值(1)10>10(2)10>=10(3)10>10!=10(4)3*8-9!=5+7%3
2.3
運(yùn)算符與表達(dá)式第三十八頁(yè),共六十一頁(yè)。2.關(guān)系表達(dá)式關(guān)系表達(dá)式的值:是邏輯值“真(True)”或“假(False)”,用1或0表示關(guān)系表達(dá)式例子
inta=3,b=2,c=1,d,f;a>b(a>b)==cb+c<ad=a>bf=a>b>c//表達(dá)式值1//表達(dá)式值1//表達(dá)式值0//d=1//f=0例若a=0;b=0.5;x=0.3;
則a<=x<=b的值為0例inti=1,j=7,a;a=i+(j%4!=0);
則a=2例‘a(chǎn)’>0結(jié)果為‘A’>100結(jié)果為10
2.3
運(yùn)算符與表達(dá)式第三十九頁(yè),共六十一頁(yè)。種類:!&&||邏輯運(yùn)算真值表優(yōu)先級(jí)?。ǜ?)
&&(11)
||(低12)ab!a!ba&&ba||b真假真假假假真真真假假假假假真真假假真真真假真真邏輯運(yùn)算符及邏輯表達(dá)式1.邏輯運(yùn)算符
2.3
運(yùn)算符與表達(dá)式第四十頁(yè),共六十一頁(yè)。例a<=x&&x<=b
a>b&&x>ya==b||x==y!a||a>b//(a<=x)&&(x<=b)//(a>b)&&(x>y)//(a==b)||(x==y)//(!a)||(a>b)例2-9假設(shè)x=10,y=20,分析下列邏輯表達(dá)式。(1)!x(2)x&&y(3)!x||y(4)!x+5||10%y>=x-10<y【例2-10】寫(xiě)出滿足要求的合法的C邏輯表達(dá)式。(1)x表達(dá)0到9的字符(2)x和y都大于0(3)x是偶數(shù)并且x<100
2.3
運(yùn)算符與表達(dá)式第四十一頁(yè),共六十一頁(yè)。位運(yùn)算是指進(jìn)行二進(jìn)制位的運(yùn)算例如:將一個(gè)存儲(chǔ)單元中的各二進(jìn)制位左移、右移,兩個(gè)數(shù)按位相加等。說(shuō)明(1)位運(yùn)算符中除-以外,均為二目(元)運(yùn)算符,即要求兩側(cè)各有一個(gè)運(yùn)算量。(2)運(yùn)算量只能是整型或字符型的數(shù)據(jù),不能為實(shí)型數(shù)據(jù)。附:位運(yùn)算符運(yùn)算符含義運(yùn)算符含義&按位與~取反|按位或<<左移^按位異或>>右移
2.3
運(yùn)算符與表達(dá)式第四十二頁(yè),共六十一頁(yè)。位運(yùn)算中的“&”、“|”和“-”的真值表與邏輯運(yùn)算等價(jià),唯一不同的是位運(yùn)算是逐位進(jìn)行運(yùn)算的。^(異或位運(yùn)算符)的真值表:aba^b000101110011
2.3
運(yùn)算符與表達(dá)式第四十三頁(yè),共六十一頁(yè)。定義:用邏輯運(yùn)算符短路特性:邏輯表達(dá)式求解時(shí),并非所有的邏輯運(yùn)算符都被執(zhí)行,只是在必須執(zhí)行下一個(gè)邏輯運(yùn)算符才能求出表達(dá)式的解時(shí),才執(zhí)行該運(yùn)算符。例
a&&b&&c//只在a為真時(shí),才判別b的值;只在a、b都為真時(shí),才判別c的值例
a||b||c//只在a為假時(shí),才判別b的值;只在a、b都為假時(shí),才判別c的值例
a=1;b=2;c=3;d=4;m=1;n=1;(m=a>b)&&(n=c>d)//結(jié)果m=0,n=12.邏輯表達(dá)式
2.3
運(yùn)算符與表達(dá)式第四十四頁(yè),共六十一頁(yè)。1.賦值運(yùn)算符
賦值符號(hào)“=”就是賦值運(yùn)算符,它的作用是將一個(gè)數(shù)據(jù)賦給一個(gè)變量。例2-11假設(shè)變量x為整型,計(jì)算下列賦值表達(dá)式的值。(1)x=y=10(2)x=10+(y=20)(3)x=10+(y=20)/(z=30)2.3.4賦值運(yùn)算符及賦值表達(dá)式
2.3
運(yùn)算符與表達(dá)式第四十五頁(yè),共六十一頁(yè)。如果賦值運(yùn)算符兩側(cè)的數(shù)據(jù)類型不一致,但都是數(shù)值型或字符型時(shí),系統(tǒng)要進(jìn)行類型轉(zhuǎn)換。①將浮點(diǎn)型數(shù)據(jù)(包括單、雙精度)賦給整型變量時(shí),舍棄浮點(diǎn)數(shù)的小數(shù)部分。如:i為整型變量,執(zhí)行“i=3.56;”的結(jié)果是使i的值為3,以整數(shù)形式存儲(chǔ)在整型變量中。②將整型數(shù)據(jù)賦給單、雙精度變量時(shí),數(shù)值不變,但以浮點(diǎn)數(shù)形式存儲(chǔ)到變量中,即用0補(bǔ)足有效數(shù)字位。如:i為float型變量,執(zhí)行“i=3;”的結(jié)果i=3.000000,以單精度浮點(diǎn)數(shù)形式存儲(chǔ)到i中。賦值運(yùn)算符類型轉(zhuǎn)換
2.3
運(yùn)算符與表達(dá)式第四十六頁(yè),共六十一頁(yè)。③將一個(gè)double型數(shù)據(jù)賦給float變量時(shí),截取其前面7位有效數(shù)字,存放到float變量的存儲(chǔ)單元(4個(gè)字節(jié))中。但應(yīng)注意數(shù)值范圍不能溢出。如果將一個(gè)float型數(shù)據(jù)賦給double變量時(shí),數(shù)值不變,有效位數(shù)擴(kuò)展到16位,在內(nèi)存中以8個(gè)字節(jié)存儲(chǔ)。
2.3
運(yùn)算符與表達(dá)式第四十七頁(yè),共六十一頁(yè)。④字符型數(shù)據(jù)賦給整型變量時(shí),由于字符只占1個(gè)字節(jié),而整型變量為2個(gè)字節(jié),因此將字符數(shù)據(jù)(8?jìng)€(gè)二進(jìn)位)放到整型變量存儲(chǔ)單元的低8位中。第一種情況:
如果字符型為無(wú)符號(hào)的字符型,則將字符的8位放到整型變量低8位,高8位補(bǔ)零。第二種情況:
如果字符型為帶符號(hào)的,則將字符的8位放到整型變量低8位,高8位補(bǔ)符號(hào)位,即(符號(hào)擴(kuò)展)。若字符最高位為0,則整型變量高8位補(bǔ)0;若字符最高位為1,則高8位全補(bǔ)1。
2.3
運(yùn)算符與表達(dá)式第四十八頁(yè),共六十一頁(yè)。⑤將一個(gè)int、short、long型數(shù)據(jù)賦給一char型變量,只將其低8位原封不動(dòng)地送到char型變量(即截?cái)啵?。將帶符?hào)的整型數(shù)據(jù)(int型)賦給long型變量時(shí),要進(jìn)行符號(hào)擴(kuò)展,將整型數(shù)的16位送到long型低16位中;反之,若將一個(gè)long型數(shù)據(jù)賦給一個(gè)int型變量,只將long型數(shù)據(jù)中低16位原封不動(dòng)地送到整型變量(即截?cái)啵?/p>
2.3
運(yùn)算符與表達(dá)式第四十九頁(yè),共六十一頁(yè)。⑦將unsignedint型數(shù)據(jù)賦給longint型變量時(shí),不存在符號(hào)擴(kuò)展問(wèn)題,只需將高位補(bǔ)0即可。將unsignedint型數(shù)據(jù)賦給int型變量時(shí),將數(shù)據(jù)原封不動(dòng)的送到整型變量中,但如果數(shù)據(jù)范圍超過(guò)相應(yīng)整型的范圍,會(huì)出現(xiàn)錯(cuò)誤。⑧將非unsigned型數(shù)據(jù)賦給長(zhǎng)度相同的unsigned型變量,也是原樣照賦(連原有的符號(hào)位也作為數(shù)值一起傳送)。
2.3
運(yùn)算符與表達(dá)式第五十頁(yè),共六十一頁(yè)。定義:由賦值運(yùn)算符將一個(gè)變量和一個(gè)表達(dá)式連接起來(lái)的式子稱為賦值表達(dá)式。例如:x=10、x=y(tǒng)=10。說(shuō)明:賦值運(yùn)算符左側(cè)必須是變量,不能是常量或表達(dá)式。賦值轉(zhuǎn)換規(guī)則:使賦值號(hào)右邊表達(dá)式值自動(dòng)轉(zhuǎn)換成其左邊變量的類型。例
floatf;inti;i=10;f=i;則
f=10.0錯(cuò)誤:
3=x-2*y;a+b=3;2.賦值表達(dá)式
2.3
運(yùn)算符與表達(dá)式第五十一頁(yè),共六十一頁(yè)。賦值表達(dá)式的值與變量值相等,且可嵌套。例:
a=12;a+=a-=a*a//a=-264等價(jià)于a=a+(a=a-(a*a))a=b=c=5a=(b=5)a=5+(c=6)a=(b=4)+(c=6)a=(b=10)/(c=2)//表達(dá)式值為5,a,b,c值為5//表達(dá)式值為5,b=5;a=5//表達(dá)式值11,c=6,a=11//表達(dá)式值10,a=10,b=4,c=6//表達(dá)式值5,a=5,b=10,c=2
2.3
運(yùn)算符與表達(dá)式第五十二頁(yè),共六十一頁(yè)。復(fù)合的賦值運(yùn)算符在“=”前面加上其他運(yùn)算符種類+=-=*=/=%=
<<=>>=&=^=|=一般形式:變量雙目運(yùn)算符=表達(dá)式它等效于:變量=變量運(yùn)算符表達(dá)式a+=3a=a+3x*=y+8x=x*(y+8)x%=3x=x%3例2-12假設(shè)變量x=10,y=20,計(jì)算下列復(fù)合的賦值表達(dá)式的值。(1)x+=10(2)x*=y+20(3)x+=x-=x/10
2.3
運(yùn)算符與表達(dá)式第五十三頁(yè),共六十一頁(yè)。自增、自減運(yùn)算符++--作用:使變量值加1或減1優(yōu)先級(jí):++/--高于-(單目減)種類:前置++i,--i(先執(zhí)行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再執(zhí)行i+1或i-1)intx,y;x=10;y=++x;此時(shí),變
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年離婚法律知識(shí)普及:訴訟與協(xié)議離婚優(yōu)劣對(duì)比3篇
- 二零二五年物聯(lián)網(wǎng)數(shù)據(jù)采集與分析合同詳細(xì)條款3篇
- 2025年上半年鄭州上街區(qū)事業(yè)單位招考易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年上半年通遼市蘇木鄉(xiāng)鎮(zhèn)財(cái)政所招考易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年上半年連云港豐達(dá)公路工程養(yǎng)護(hù)限公司招聘100人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年上半年遼寧省阜新市公開(kāi)招聘高學(xué)歷和急需緊缺專業(yè)人才(第三批)易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年上半年遼寧省朝陽(yáng)事業(yè)單位面向2025年上半年“三支一扶”服務(wù)期滿人員招聘35人重點(diǎn)基礎(chǔ)提升(共500題)附帶答案詳解-1
- 2025年上半年遼寧撫順市望花區(qū)所屬事業(yè)單位招考筆試易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年上半年贛州章貢區(qū)人大常委會(huì)區(qū)人大代表聯(lián)絡(luò)服務(wù)中心招考(3人)易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025年上半年贛州市上猶縣城市管理局招考文秘工作人員易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 直播帶貨助農(nóng)現(xiàn)狀及發(fā)展對(duì)策研究-以抖音直播為例(開(kāi)題)
- 腰椎間盤(pán)突出疑難病例討論
- 《光伏發(fā)電工程工程量清單計(jì)價(jià)規(guī)范》
- 2023-2024學(xué)年度人教版四年級(jí)語(yǔ)文上冊(cè)寒假作業(yè)
- (完整版)保證藥品信息來(lái)源合法、真實(shí)、安全的管理措施、情況說(shuō)明及相關(guān)證明
- 營(yíng)銷專員績(jī)效考核指標(biāo)
- 陜西麟游風(fēng)電吊裝方案專家論證版
- 供應(yīng)商審核培訓(xùn)教程
- 【盒馬鮮生生鮮類產(chǎn)品配送服務(wù)問(wèn)題及優(yōu)化建議分析10000字(論文)】
- 肝硬化心衰患者的護(hù)理查房課件
- 2023年四川省樂(lè)山市中考數(shù)學(xué)試卷
評(píng)論
0/150
提交評(píng)論