版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第2章數(shù)據(jù)類型、運算符和表達式第2章數(shù)據(jù)類型、運算符和表達式2.1C語言字符集、關(guān)鍵字和標識符2.2數(shù)據(jù)和數(shù)據(jù)類型2.3運算符和表達式2.1C語言字符集、關(guān)鍵字和標識符字符集:C語言允許使用字符的集合字符集的組成:26個小寫字母abcdefghi......z26個大寫字母ABCDEFG......Z10個數(shù)字0~9
其他符號+-*/=,._:;?\”’~|&^!%#()[]{}<>空格(SPACE)
制表符(Tab)2.1C語言字符集、關(guān)鍵字和標識符關(guān)鍵字:C語言中預(yù)定的具有特定含義的詞,也稱保留字。共有32個。分四類:類型說明:int,long,float,…。語句定義:if…else,while,for…。存儲類:auto,static,…。長度運算符:sizeof2.1C語言字符集、關(guān)鍵字和標識符標識符:用來標識變量、符號常量、數(shù)組、函數(shù)的名字。組成:只能由英文字母、數(shù)字和下劃線組成。第一個字符不能是數(shù)字,只能是字母或下劃線。VC6.0中有效長度為1~255個字符。例如:x,m1,average,k123,_1,…5AN,WA-11,alot,$11,π,β,α,…2.1C語言字符集、關(guān)鍵字和標識符標識符嚴格區(qū)分大小寫例如:ABC,abc
是不同的標識符不能和C語言的關(guān)鍵字、用戶定義的函數(shù)名以及系統(tǒng)庫函數(shù)同名。C的“.h”頭文件中經(jīng)常使用以下劃線開頭的內(nèi)部變量名,因此用戶最好避免使用這類標識符。取名應(yīng)盡可能見名知意。如:alfa,aver,pi,bata
等。例:
以下各標識符組中,合法的用戶標識符分別為:(1)A)
PAd
B)
scanf
C)voidD)4aP#Da10maxtemp(2)A)
b-b
B)
CCP
C)
hiy
D)
_isw
abc
float
<fr>
INT(3)A)
_0123
B)
del_word
C)
list
D)
keep%
ssiped
signed*jerwind2.2.1
常量常量在程序執(zhí)行期間其值保持不變的量C語言有以下幾種類型的常量:整型常量實型(浮點型)常量字符常量字符串常量
有三種形式:十進制整數(shù):八進制整數(shù):由數(shù)字0
開頭十六進制整數(shù):由前綴0x
或
0X
開頭1.整型常量如:
014-0110177777如:0x110XAFBDE√0X00FFH
如:
11,-13,0,
65535,
…√1,000
21/3
104
54.10*3
0199××整數(shù)又可分為:長整型整數(shù):用后綴L/l表示。
012L,65536L,0XCL無符號整數(shù):用后綴U/u表示。
017u,
0xfdbU無符號長整數(shù):
用后綴UL/ul
表示。
15uL實型常量又稱實數(shù),指帶有小數(shù)部分的數(shù)。C語言中的實數(shù)是以十進制表示的,有兩種表示形式:十進制小數(shù)形式:由數(shù)字、數(shù)符和小數(shù)點組成。例:0.123,.123,123.,0.0,-2.5,…
指數(shù)形式:
又稱科學(xué)記數(shù)法。用E(或e)表示以10為底的指數(shù)。
如:100000000→1×108→1E+80.0000125→1.25×10-5→1.25E-05
0.91×10-3
→
0.91E-03尾數(shù)部分指數(shù)部分字母E/e前必須有數(shù)字,而E后面的階碼必須為整數(shù)。
2.
實型常量——浮點數(shù)
例:下列不合法的指數(shù)形式:①單獨的小數(shù)點和單獨的指數(shù)部分
如:.E-5E10
②階碼只能是整數(shù),不能帶小數(shù)點。
如:1234E1.52.E6.5e
(2*3)E-35*E4③1012不能寫成E12,必須寫成:1E121.0E123.
字符常量字符常量:是用單引號括起來的一個字符如:‘a(chǎn)’,‘A’,‘9’,‘+’,‘?’,‘’
合法
“a”,‘99999’,‘’
非法在內(nèi)存中,
字符常量以ASCII碼存儲,一個字符占一個字節(jié)。由于字符常量是按整數(shù)存儲的,可以像整數(shù)一樣在程序中參與相關(guān)的運算。如:‘a(chǎn)’-32;//執(zhí)行結(jié)果97-32=65
‘9’-9;
//執(zhí)行結(jié)果57-9=48以“\”開頭的字符序列,有特定的含義。如:‘\\’
表示輸出一個反斜杠符
‘\”’
表示輸出一個雙引號
\ddd
(ddd表示八進制的ASCII碼)
\xhh
(hh表示十六進制的ASCII碼)例:
‘\n’(回車換行)→‘\12’→
‘\xa’
‘A’→‘\101’
→
‘\x41’注:
‘\0’或‘\000’是代表ASCII碼為0的字符,即空字符(NULL),
表示整數(shù)0。轉(zhuǎn)義字符【例2.1】轉(zhuǎn)義字符的應(yīng)用
#include
<stdio.h>
void
main()
{
printf(“a\tb\nc\bd\100\x40\n”);
}
abd@@輸出到顯示屏字符串常量:用一對雙引號括起的字符序列。例:
“CHINA”,“a”,“$12.5”,“”,“w\x53\\\np\103q”
字符串長度:字符串中所有字符的個數(shù)系統(tǒng)自動在每個字符串的末尾加上一個空字符NULL,即’\0’
作為字符串的結(jié)束。’\0’是一個ASCII碼為0的字符。例:“CHINA”在內(nèi)存中所占的字節(jié)為:4.
字符串常量字符常量由單引號括起來,字符串常量由雙引號括起來。
字符串常量和字符常量的主要區(qū)別:字符常量只能是單個字符,字符串常量可以含有多個字符。字符常量占一個字節(jié),字符串常量占的字節(jié)數(shù)等于字符個數(shù)加1。比較:’A’與”A”的區(qū)別若輸出的字符串中含雙引號(”),則要使用轉(zhuǎn)義字符(\”)。例:printf(“hesaid\“Iamastudent.\”\n”);輸出:hesaid“Iamastudent.”‘A’A占一個字節(jié)“A”A占兩個字節(jié)\05.符號常量符號常量:用標識符表示的常量格式:
#define標識符常量功能:用該標識符代表后面的常量值例:#definePI3.1415926
#defineSTAR‘*’預(yù)處理命令#define也稱為宏定義,一個#define命令只能定義一個符號常量,
用一行書寫,
不用分號結(jié)尾。
#include
<stdio.h>
#define
PI
3.1415926
//用預(yù)處理命令定義符號常量
voidmain(){floatr,
area,
l
;//定義變量類型為實型
scanf(“%f”,
&r);//輸入r的值
area=PI*r*r;
l=2*PI*r;
printf(“area=%f\nl=%f\n”,
area,
l
);}【例2.2】求半徑為r的圓面積和圓周長說明:符號常量名習(xí)慣用大寫字母表示該命令通常放在文件頭在程序中,符號常量不允許重新賦值。例:#definePI3.1415926
PI=5.6;
×
或scanf(“%f”,&PI);×5.符號常量整型:包括有、無符號的基本整型、短整型、長整型實型:包括單精度實型、雙精度實型float,double字符型:用于表示和存儲ASCII字符。char
2.1數(shù)據(jù)類型基本類型構(gòu)造類型指針類型空類型自定義是C語言數(shù)據(jù)類型的基本型,其值不可再分解為其他類型。一種特殊的數(shù)據(jù)類型,其值為某個量的內(nèi)存地址。一種無返回值函數(shù)的數(shù)據(jù)類型。void用新的類型名替代已有類型名使用。用typedef定義一種由單種或多種數(shù)據(jù)類型構(gòu)造而成的數(shù)據(jù)類型。數(shù)組結(jié)構(gòu)共用體枚舉類型C語言的基本數(shù)據(jù)類型2.2.2變量
變量概述
整型變量
實型變量
字符型變量
變量初始化int
x=23;23FF022BytesRAM變量概述變量:在程序執(zhí)行期間其值可以改變的量變量在使用之前必須被聲明每一個變量有名字,類型,長度和值。對變量賦值過程是“覆蓋”過程,用新值去替換舊值。從內(nèi)存中讀出變量的值,該變量保持不變。90x=90;printf(“%d”,x);定義變量的形式:
類型說明符變量名表;
例:
inta,b;/*定義兩個整型變量a和b*/charc;/*定義字符型變量c*/floatf1,f2;
//定義單精度實型變量f1和f2變量概述變量類型(type)變量名(name)是一個標識符1.整型變量─用來存放整型數(shù)據(jù)的變量整型變量的分類表類型名稱類型說明符字節(jié)數(shù)數(shù)值范圍基本整型int2-32768~32767短整型short[int]2-32768~32767長整型long[int]4-2147483648~2147483647無符號基本整型unsigned[int]20~65535無符號短整型unsignedshort
[int]20~65535無符號長整型unsignedlong[int]40~4294967295與操作系統(tǒng)、編譯系統(tǒng)、機器字長有關(guān)。有符號的整數(shù)─最高位是符號位正整數(shù)在內(nèi)存中以二進制原碼形式存放。負整數(shù)在內(nèi)存中以二進制補碼的形式存放。有符號正整數(shù)
10
0000000000001010符號位0000000000001010RAM有符號負整數(shù)
-101111111111110110符號位1111111111110110RAM-10的原碼100000000000101011111111111101011111111111110110按位取反加1后得到-10的補碼無符號整數(shù)無符號整數(shù)的所有二進制位全部用來存放數(shù)值,不能存放負數(shù)。
無符號整數(shù)65535u111111
11111111111111111111111111RAM例:求50的三次方#include
<stdio.h>voidmain(){shortint
x;
x=50*50*50;
printf(“%d\n”,
x
);}程序運行結(jié)果為:
-6072(錯)將以上程序改為:#include<stdio.h>
voidmain(){
intx
;
x=50*50*50
;
printf(“%d\n”,
x);}運行結(jié)果:125000因此,在定義整型變量時,要注意數(shù)據(jù)類型允許的數(shù)值范圍。用來存放實型數(shù)據(jù)的變量分單精度型、雙精度型和長雙精度型三類
2.實型變量
#include<stdio.h>voidmain(){floatf;//f為單精度實型變量
doubled;//d為雙精度實型變量
f=33333.33333;
d=33333333333333.333333;
printf(“f=%f\nd=%f\n”,f,d);
}
輸出結(jié)果:
f=33333.332031
d=33333333333333.332000【例2.3】實型變量的使用無效數(shù)字3.字符變量用來存放字符常量的變量例:char
c1,c2,c3;c1=‘A’;c2=‘\n’;c3=97;每個字符變量分配一個字節(jié)用于存放一個字符。
(存放的是字符的ASCII碼值)字符數(shù)據(jù)與整型數(shù)據(jù)可相互賦值,直接運算。可以把字符變量按整型量輸出,也允許把整型量按字符量輸出。‘A’的ASCII碼(值)為65‘\n’的ASCII碼(值)為100100000100001010c1c2
#include
<stdio.h>
voidmain(){int
a=‘b’;
//給一個整型變量賦一個字符值
char
c1=97;
//給一個字符變量賦一個整數(shù)值
c1=c1-32;//將小寫字母轉(zhuǎn)換為大寫字母
printf(“%d
%d\n”,
a,
c1);
printf(“%c%c\n”,
a,
c1);}輸出結(jié)果:
9865bA【例2.4】字符型變量的使用注意:只能將一個字符常數(shù)賦給一個字符變量,不能把一個字符串常量賦予字符變量。
例:charc=“abc”;在C語言中沒有字符串變量
(但可以用一個字符數(shù)組來存放一個字符串常量)×4.變量的初始化在說明變量的同時給變量賦初值格式:
類型說明符變量
=常數(shù);例:inta=5;//定義并初始化
charc1=‘a(chǎn)’,c2=‘B’;doublearea,r=23.e-2;
intx=10,y=10,z=10;//不能寫成intx=y=z=10;inta;a=5;
//賦初值2.2.3標準函數(shù)
C編譯系統(tǒng)提供的庫函數(shù)包括:輸入輸出函數(shù)、數(shù)學(xué)函數(shù)、字符和字符串函數(shù)等。數(shù)學(xué)函數(shù)x為弧度,doublex,doublesin(x)cos(x)sin(x)
cos(x)exp(x)log(x)log10(x)fabs(x)pow(x,y)sqrt(x)area=√s(s-a)(s-b)(s-c),s=(a+b+c)/2#include<stdio.h>
#include<math.h>
【例2.5】求三角形面積//預(yù)編譯命令,將系統(tǒng)提供的數(shù)學(xué)函數(shù)//作為頭文件包含到用戶源文件中voidmain(){doublea,b,c,s,area;
scanf(“%lf,%lf,%lf”,
&a,&b,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));
printf(“theareais%6.2f\n”,area);}運行本節(jié)介紹算術(shù)運算符賦值運算符逗號運算符邏輯運算符條件運算符求字節(jié)運算符位邏輯運算符位移動運算符位自反運算符強制類型轉(zhuǎn)換運算符指針運算符下標運算符分量運算符基本運算符位運算符特殊運算符C運算符2.3運算符和表達式2.3.1
算術(shù)運算符與算術(shù)表達式2.3.2
不同數(shù)據(jù)類型的轉(zhuǎn)換與運算
2.3.3
關(guān)系運算符與關(guān)系表達式2.3.4
邏輯運算符與邏輯表達式2.3.5
條件運算符與條件表達式2.3.6
賦值運算符與賦值表達式
2.3.7
逗號運算符與逗號表達式2.3基本運算符及其表達式1.基本算術(shù)運算符算術(shù)運算符用于各類數(shù)值運算。包括基本算術(shù)運算符、自增運算符、自減運算符。下表為基本算術(shù)運算符。
1在C語言中,規(guī)定了運算符的優(yōu)先級和結(jié)合性。優(yōu)先級:
C語言中,運算符的優(yōu)先級共分為15級。1級最高,15級最低。表達式求值時,先做優(yōu)先級高的操作。如:d=a+b*c;
當運算符的優(yōu)先級別相同時,運算次序由結(jié)合性決定。結(jié)合性:
左結(jié)合性(先左后右)例:
d=3*5/4;
右結(jié)合性(先右后左)例:
d=a=3;/運算符①整數(shù)相除截去余數(shù),此運算為整除。
5/2=2(≠2.5)1/3+1/3+1/3=0②
對于浮點數(shù)則為通常意義的除法
5.0/2.0=2.51./3+1./3+1./3=1%模運算符用于計算兩個數(shù)相除后得到的余數(shù)。如:
a%b
求a除以b以后得到的余數(shù)。運算對象只能是整型量,其結(jié)果也是整型量。如:5%2=13%3=03%5=3
‘A’%2=13.0+10.0%5
所得結(jié)果的符號與運算符左側(cè)操作數(shù)的符號相同×-5%2=-15%-2=12.自增、自減運算符含義運算符優(yōu)先級結(jié)合性功能自增++2右結(jié)合使變量的值增1自減--2右結(jié)合使變量的值減1使用形式
++i或--i
變量i先自增或自減1,再引用i。
i++或i--
先使用變量i,再自增或自減1。
例:
x=10;y=++x;
此時,y=11若:x=10;y=x++
;
則y=10
在這兩種情況下,x都被置為11。K=3;j=5;i=3;m=(++k)*j;n=(i++)*j;例:m=k=204n=i=154【例2.7】自增、自減運算符的使用。#include<stdio.h>voidmain(){inti=6,a,b;
printf(“%d\n”,
++i
);
printf(“%d\n”,
i++
);a=--i;
printf(“%d\n”,a);b=i--;
printf(“%d\n”,b);
printf(“%d\n”,
-i++);
printf(“i=%d\n”,i);}i=?7777-67注意:自增、自減運算只能用于變量,不能用于常量和表達式。例:
i++
為合法的運算
++6,++(a+b)
為非法的運算自增、自減運算符是兩個+或兩個-的一個整體,中間不能有空格。如果有多于兩個+或兩個-連寫的情況,則編譯首先識別前兩個+或-為增量或減量運算符。表達式x+++y等價于(x++)+y自增、自減運算符的運算順序是右結(jié)合,因此對-i++應(yīng)理解為:-(i++),而(-i)++是非法的。例:i=3;
printf(“%d”,-i++);
輸出:-3【例2.8】自增、自減運算符的使用#include
<stdio.h>
voidmain(){inti,j,
k
;
i=1;
j=1;
k=i+++j;
printf(“i=%d,j=%d,k=%d\n”,i,j,k);}程序運行結(jié)果:i=2,j=1,k=2k=(i++)+j;由算術(shù)運算符和括號將運算對象(如常量、變量、函數(shù)等)連接起來的一個有值的式子。例:‘A’*2-sqrt(4.)/-d
(d=2)表達式求值的優(yōu)先次序:
()函數(shù)
+、-*、/、%+、-
高低
3.算術(shù)表達式①“/”號,如:→(a+b)/(c+d)②“*”不能省略,如:2(a+b)→2*(a+b)
③括號只能使用圓括號,且成對出現(xiàn),不能使用[]
和{}。如:
a[x+b(y+c)]→a*(x+b*(y+c))
書寫問題:⑴LN(-X)→例:將下列數(shù)學(xué)式子寫成C算術(shù)表達式log(sqrt(a+x*x
)-x
)⑵
│a│e-st
→abs(a)*exp(-s*t)⑶
→sqrt(fabs(sin(x*3.14/180)))⑷
xy
→pow(x,
y)
A>3*x^n/(2*x-1)B>3*x**n/(2*x-1)C>3*pow(x,n
)*(1/(2*x-1))D>3*pow(n,x)/(2*x-1)例:與數(shù)學(xué)式子3乘以x的n次方除以(2x-1)對應(yīng)的C語言表達式是____?!?.3.2不同數(shù)據(jù)類型間的轉(zhuǎn)換與運算在C程序中,當不同類型的量進行運算時,要轉(zhuǎn)換成同一種類型然后再進行運算。例:
10+‘a(chǎn)’+1.5-8765.1234*‘b’轉(zhuǎn)換方式:
自動轉(zhuǎn)換:數(shù)據(jù)類型自動由低級向高級轉(zhuǎn)換。強制轉(zhuǎn)換:將表達式的運算結(jié)果強制轉(zhuǎn)換成指定的數(shù)據(jù)類型。自動類型轉(zhuǎn)換這種類型轉(zhuǎn)換由編譯系統(tǒng)自動完成轉(zhuǎn)換規(guī)則:floatdoublelongunsignedintcharshort低高說明:1.橫向的箭頭表示必定的轉(zhuǎn)換。2.縱向的箭頭表示當運算對象類型不同時轉(zhuǎn)換的方向。例:floatf=3.5;intn=6;longk=21;doubless=f*n+k/2;強制類型轉(zhuǎn)換格式:
(數(shù)據(jù)類型說明符)(表達式)注意:強制轉(zhuǎn)換屬單目運算,運算優(yōu)先級為2。強制轉(zhuǎn)換得到的是中間結(jié)果類型,原變量類型不變。數(shù)據(jù)類型說明符和表達式都必須加括號(單個變量除外)例:intx,y;floatz;(float)(x+y);(int)z+x
;
(float)(5%3);
(將5%3的值轉(zhuǎn)換為float型)#include<stdio.h>voidmain(){int
x=8;
float
f=6.85;
printf(“(float)x=%f,x=%d\n”,(float)x,x
);
printf(“(int)f=%d,f=%f\n”,(int)f
,f
);}【例2.12】強制類型轉(zhuǎn)換的應(yīng)用(float)x=8.000000,x=8(int)f=6,f=6.850000X,f的類型并未改變2,%4,f
);2.3.3關(guān)系運算(比較運算)即比較兩個量的大小,比較的結(jié)果為“真”或“假”。例:a>3
如果a=8,則結(jié)果為“真”;如果a=1,則結(jié)果為“假”。1.關(guān)系運算符含義運算符優(yōu)先級結(jié)合性小于<6左結(jié)合小于等于<=大于>大于等于>=等于==7不等于!=2.
關(guān)系表達式用關(guān)系運算符將兩個表達式連接起來的式子。格式:
<表達式1><關(guān)系運算符><表達式2>
其中:表達式1和表達式2可以是任意表達式。例:
m+n<=20,測試此關(guān)系是否成立,成立為真,不成立為假。成立——關(guān)系表達式的值為1;不成立——關(guān)系表達式的值為0。例:
5>(4<5)
‘a(chǎn)’>‘b’+3
(a=4)>=(b=6)5>2>7>8值為:
1000例2.13讀下列程序#include<stdio.h>voidmain(){int
a,b,c;
a=b=c=10;
a=b==c;
printf
(“%d,%d,%d\n”,
a
,b,c);
a==(b=c++*2
);
printf
(
“%d,%d,%d\n”,
a
,b,c);
a=b>c>=100
;
printf
(
“%d,%d,%d\n”,
a,b,c);
}輸出結(jié)果:1,10,101,20,110,20,11關(guān)系運算的不足關(guān)系表達式只能表達簡單的關(guān)系,如:
sum>=1500y!=z
即只能對一個條件進行測試。
而以下關(guān)系:
0<x<5
則不能用關(guān)系表達式表示。
x>0&&x<52.3.4
邏輯運算符與邏輯表達式1.邏輯運算符
C邏輯運算符含義運算符優(yōu)先級結(jié)合性邏輯非!2右結(jié)合邏輯與&&11左結(jié)合邏輯或||12左結(jié)合邏輯運算真值表a!a1001aba&&b111100010000aba||b111101011000特點:
全真為真,
其余為假。
特點:全假為假,
其余為真。邏輯非!邏輯與&&邏輯或‖2.邏輯表達式用邏輯運算符將表達式連接起來的式子。形式:[<表達式1>]<邏輯運算符><表達式2>
表達式1和表達式2可以是任何表達式如:
5>3&&2||4-!’a’邏輯表達式的值整數(shù)1:true
0:false判斷時,0代表“假”,非0即表示“真”。將下面的條件用C語言的邏輯表達式表示例1:1≤x≤10且x≠7
x>=1&&x<=10&&x!=7例2:y能被4整除,但不能被100整除或y能被400整除。
y%4==0&&y%100!=0||y%400==0運算順序:
()→!→算術(shù)運算→關(guān)系運算→&&→||→賦值運算例:若
a=2,b=‘a(chǎn)’,c=5,f=3.0c>3&&8<4-!0f/3&&a-b
!(b-‘a(chǎn)’
)
(a=7)>6&&(b=-1)>60110邏輯與和邏輯或運算符邏輯與:
(表達式1)&&(表達式2)&&…
只有表達式1的值為“真”時才求表達式2的值
如:x=y=-1;
++x&&++y;
/*x=?y=?*/0-1
表達式邏輯或:
(表達式1)
||
(表達式2)
||…
只有表達式1為假時才判斷表達式2的值
例:
voidmain(){int
num=3;5>4||(num=0);
printf(“num=%d\n”,num);}
輸出:
num=3條件運算符:
?:
三目運算符、右結(jié)合、13級。條件表達式:
<表達式1>?<表達式2>:<表達式3>執(zhí)行過程:2.3.5條件運算符與條件表達式
例:
max=(a>b)?a∶b;
max=a>b?a∶b
;說明:在程序中常把條件表達式的值賦給某個變量,
如:
①將ch中字母轉(zhuǎn)換為小寫字母
char
ch=getchar();
ch=(ch>=‘A’&&ch<=‘Z’)?(ch+32):ch
;②將x
的絕對值賦給y
y=x>=0
?
x
:-x
;在條件表達式中,各表達式的類型可以不同,此時,條件表達式值的類型為表達式2和表達式3中較高的類型。
如:
x>y?1∶1.5
條件表達式的值為浮點型說明:說明:條件運算符可以嵌套,這種嵌套是右結(jié)合的。
例:
inta=15,b=20,c=25,d=30,e;
e=a>b?c:c>d?b:d;e=30例2.15讀以下程序,寫出運行結(jié)果。#include<stdio.h>voidmain(){int
a=1,
b=1,
c=1;
a=a+b
;
b=b+c
;
c=c+a
;
printf(“(1)%d\n”,a>b?a
:b
);
printf(“(2)%d\n”,
a>c?a--:c++);
(a>=b>=c)?printf(“a\n”):printf(“b\n”);
printf(“(4)%d,
%d,
%d\n”,a,b,c
);}運行結(jié)果:(1)2(2)3b(4)2,2,4賦值運算符分兩種:簡單賦值運算符:
=復(fù)合賦值運算符:如+=、-=、*=、/=、%=
等優(yōu)先級14,右結(jié)合性。賦值表達式:由賦值運算符連接起來式子作用:將表達式的值賦給變量2.3.6
賦值運算符和賦值表達式簡單賦值運算符為“=”;由“=”連接的式子為(簡單)賦值表達式。格式:<變量>
=
<表達式>
作用:把右邊表達式的值,賦給左邊的變量。例:k=i+++--j(i=2,j=3,k的值為)x=(a=5)+(b=8)(x的值為)
d=e=2.1執(zhí)行順序是:先計算,再賦值。413
1.簡單賦值運算符和賦值表達式例:
指出下列賦值表達式的錯誤
⑴-s=x+y⑵5=n⑶a=a*3=2
⑷w=3.64E2.1/5.87⑸cos(β)=a/sqrt(a*a+b*b)
⑹y=int(i)⑺k=12.3%4⑻a=a+7;賦值運算的類型轉(zhuǎn)換,規(guī)則為:實型數(shù)據(jù)賦給整型變量時,只取整數(shù)部分。
如:int
i=1.5*2/2;
(x的值為0.000000)
整型數(shù)據(jù)賦給實型變量時,以浮點形式取值。(i值為1
)如:floatx=1/4+1/4+1/4;字符型數(shù)據(jù)賦給整型變量時,整型變量的高位補的數(shù)與char的最高位相同,低八位為字符的ASCII碼值。整型數(shù)據(jù)賦給字符型時,只把低8位賦給字符變量。如:
K=‘A’
(k值為65)k:
0000000001000001例2-13:
void
main(){short
int
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)于一年級數(shù)學(xué)說課稿模板合集10篇
- 大學(xué)拔河比賽策劃書
- 經(jīng)理個人述職報告范文集錦9篇
- 2025年X射線管合作協(xié)議書
- 國旗下的講話期末復(fù)習(xí)制定一份合理的復(fù)習(xí)計劃參考講話
- 煤礦運輸應(yīng)急預(yù)案
- 武漢汽車租賃合同
- 舞蹈教室場地租賃合同書
- 2024年銷售協(xié)議補充條款明細
- 2024授權(quán)代理合同
- 2023年開封糧食產(chǎn)業(yè)集團有限公司招聘筆試真題
- 2024年全國“紀檢監(jiān)察”業(yè)務(wù)相關(guān)知識考試題庫(附含答案)
- 期末檢測卷(三)2024-2025學(xué)年人教PEP版英語四年級上冊(含答案無聽力原文無聽力音頻)
- 2024-2030年中國兒童內(nèi)衣行業(yè)運營狀況及投資前景預(yù)測報告
- 吉首大學(xué)《高等數(shù)學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 打印和復(fù)印服務(wù)協(xié)議
- 針灸習(xí)題庫(附參考答案)
- 前置胎盤手術(shù)配合
- 期末試卷(試題)-2024-2025學(xué)年五年級上冊數(shù)學(xué)北師大版
- 2024年中國電信服務(wù)合同標準文本
- 四川省成都市2023-2024學(xué)年高一上學(xué)期語文期末考試試卷(含答案)
評論
0/150
提交評論