版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
運算符與表達式第4章
4.1算術(shù)運算符和算術(shù)表達式4.2自增、自減運算4.3位運算4.4賦值運算4.5關(guān)系表達式與邏輯表達式4.6條件表達式與逗號表達式第四章運算符與表達式4.1算術(shù)運算符和算術(shù)表達式
運算符表達式
+3+5、+3-5-2、-3*3*5
/3/2(結(jié)果為1)
3/2.0,3.0/2,3.0/2.0(結(jié)果為1.5)%(求余)
7%4(結(jié)果為3)-9%5(結(jié)果為-4)
9%(-5)(結(jié)果為4
)
2.0%3(錯誤,2.0不是整數(shù))
字符以其ASCII碼參加運算:
'a'+1為98'b'-'a'為1'8'-'0'為8a/10+a%10(如a=24,則結(jié)果為6)
(b%100)/10(如b=4321,則結(jié)果為2)例如:設(shè)a為兩位整數(shù),求其各位數(shù)字之和。又如:求一個整數(shù)b的十位上的數(shù)字。字符ASCII碼字符ASCII碼A65a97B66b98C67c99D68d100E69e101F70f102G71g103H72h104I73i105J74j106K75k107L76l108M77m109N78n110O79o111P80p112Q81q113R82r114S83s115T84t116U85u117V86v118W87w119X88x120Y89y121Z90z122字符ASCII碼048149250351452553654755856957
若已定義x和y為double類型,則表達式x=1,y=x+3/2的值是().122.02.5ABCD提交單選題1分
若已定義x和y為double類型,則表達式x=1,y=x+3/2.0的值是().122.02.5ABCD提交單選題1分算術(shù)運算中的類型轉(zhuǎn)換自動轉(zhuǎn)換強制類型轉(zhuǎn)換
自動轉(zhuǎn)換doublefloatlongunsignedintchar,short低高例如:2+’a’+1.52+97+1.599+1.599.0+1.5100.5強制類型轉(zhuǎn)換
一般形式為:
(類型名)表達式例如:
(double)x(將x轉(zhuǎn)換成double類型)(double)x/y(將x轉(zhuǎn)換成double類型,再與y相除)(int)3.14%2(即3%2)
設(shè)f是單精度實型,i是雙精度實型,則表達式10+'a'+i*f值的數(shù)據(jù)類型為().
int
float
double
不確定ABCD提交單選題1分如何求一個整數(shù)每一位上的數(shù)字注意整數(shù)相除取整比如1+1/2+1/3+1/4+……+1/n作業(yè):將一個四位整數(shù)的個位與千位交換,百位與十位交換。1234—>43214.2自增、自減運算
如i=3;j=++i;j:4,i:4如i=3;j=i++;j:3,i:4運算符++--使用格式++ii的值先加1,后使用i++i的值先使用,后加1--ii的值先減1,后使用i--i的值先使用,后減1
執(zhí)行下列語句后變量x和y的值是().y=10;x=y++;
x=10,y=10
x=11,y=11
x=10,y=11
x=11,y=10ABCD提交單選題1分
3+a++,若a的初值為6,則表達式值為?a的值為?9,79,610,710,6ABCD提交單選題1分
++x*y-z,若x,y,z的值分別為3,4,5,則表達式和x的值最后分別為?11,411,37,47,3ABCD提交單選題1分4.3位運算
六
種位運算符&按位與運算符|按位或運算符^按位異或運算符<<二進制左移運算符>>二進制右移運算符~按位取反運算符按位與運算(&)
當對應(yīng)位均為1時,結(jié)果為1;否則為0。例如,12&10的運算如下:
12:00001100&10:00001010_________________
結(jié)果:00001000作用:保留某一位,用1和相應(yīng)位進行與運算。按位或運算(|)
對應(yīng)位均為0時,結(jié)果為0;否則結(jié)果為1。例如:
0123:01010011
|014:000011000123|014:01011111作用:指定某一位的值為1。按位異或運算(^)
當對應(yīng)位相同時,結(jié)果為0;否則為1。例如:00110011
^1100001111110000
按位取反運算(~)
使每一位上的0變1;1變0。例如:~0115是將八進制數(shù)115按位求反。即:
~01001101
_______________
結(jié)果:10110010左移運算(<<)
例如:
chara=6,b;b=a<<2;
用二進制數(shù)如下:
a:00000110(a=6)b=a<<2:00011000(b=24)返回目錄
short
a=-071400,b;b=a>>2;
符號位↓
a的二進制原碼表示:1111001100000000a的二進制反碼表示:1000110011111111a的二進制補碼表示:1000110100000000(機內(nèi)存儲形式)b=a>>2:1110001101000000(b的二進制補碼表示)b的二進制反碼表示:1110001100111111b的二進制原碼表示:1001110011000000b的八進制數(shù):-016300右移運算(>>)
右移時,右端(低位)移出的二進制數(shù)舍棄;左端(高位)移入的二進制數(shù)分兩種情況:對于無符號整數(shù)和正整數(shù),高位補0;對于負整數(shù),高位補1。若x=2,y=3則x&y的結(jié)果是().
0
2
3
5ABCD提交單選題1分
若a=1,b=2則a|b的值是().0123ABCD提交單選題1分
在位運算中,操作數(shù)每左移一位,其結(jié)果相當于().
操作數(shù)乘以2
操作數(shù)除以2
操作數(shù)除以4
操作數(shù)乘以4ABCD提交單選題1分變量名=表達式;4.4賦值運算
變量名=表達式
右結(jié)合賦值表達式賦值語句如a=3b=2*a+10如a=3;c=b=a+3;賦值時數(shù)據(jù)類型的轉(zhuǎn)換
當左右類型不同時,系統(tǒng)自動轉(zhuǎn)換。例如:
intn;n=3.1415;/*n的值為3*/
復(fù)合賦值運算+=-=*=/=%=<<=>>=&=^=|=a+=3a=a+3x*=y+8x=x*(y+8)x/=2*y-10x=x/(2*y-10)a&=ba=a&b
設(shè)a=12,且a定義為整型變量.執(zhí)行語句a+=a-=a*=a;后a的值為().
12
144
0
132ABCD提交單選題1分4.5關(guān)系表達式與邏輯表達式關(guān)系運算符>(大于)>=(大于等于)<(小于)<=(小于或等于)==(等于)!=(不等于)例如:a>ba+b>=b+c關(guān)系表達式成立,其值為1關(guān)系表達式不成立,其值為04.5.1關(guān)系運算
【例4.1】分析下面程序的運行結(jié)果。#include<stdio.h>intmain(){floatx,y=0.6;y=y*11;x=6+0.6;if(x==y)printf("OK,x==y");elseprintf("NO,x!=y");return0;}程序運行結(jié)果:NO,x!=y#include<math.h>fabs(x-y)<1e-5
下列運算符中是C語言關(guān)系運算符的是().
~
!
&
!=ABCD提交單選題1分運算結(jié)果:用1表示“真”,用0表示“假”。
在邏輯運算中,將非0值視為真、將0視為假。邏輯運算符!(邏輯非)&&(邏輯與)||(邏輯或)邏輯表達式
!aa&&ba||b4.5.2邏輯運算
注意:在邏輯表達式的求解中,并不是所有的邏輯運算符都被執(zhí)行,只有在必須執(zhí)行下一個邏輯運算符才能求出表達式的值時,才執(zhí)行該運算符。(1)a&&b則a、b的值分別為0、1(2)a||b則a、b的值分別為2、1inta=1,b=1;--a&&++binta=1,b=1;++a||++b
在C語言中,能代表邏輯值“真”的是().
True
大于0的數(shù)
非0整數(shù)
非0的數(shù)ABCD提交單選題1分
已知x=43,ch='A',y=0;則表達式(x>=y&&ch<'B'&&!y)的值是().
0
語法錯1
"假"ABCD提交單選題1分
intx=2,y=3,z=4;則表達式x+y>z&&y==z的值為().0123ABCD提交單選題1分4.6條件表達式與逗號表達式
【例4.3】用條件表達式求解下列問題。(1)求兩個變量a、b的最大值。解s=(a>b)?a:b;(2)求三個變量a、b、c的最大值。解s=(s=a>b?a:b)>c?s:c;(3)對字符變量ch,若為小寫字母,則改為大寫字母,其余字符不變。解
ch=(ch>=’a’&&ch<=’z’)?(ch-32):ch;(4)輸出整型變量x的絕對值。解(x>0)?printf(“%d”,x):printf(“%d”,-x);條件運算符
?:
條件表達式表達式1?
表達式2
:
表達式34.6.1條件表達式
【例4.3】任意輸入三個整數(shù),按從大到小輸出。#include<stdio.h>intmain(){inta,b,c,m,n,k;scanf("%d%d%d",&a,&b,&c);m=(m=a>b?a:b)>c?m:c;/*將a、b、c中的最大數(shù)賦給m*/n=(n=a<b?a:b)<c?n:c;/*將a、b、c中的最小數(shù)賦給n*/k=a+b+c-m-n;/*將a、b、c中的中間數(shù)賦給k*/printf("%d%d%d\n",m,k,n);/*從大到小輸出三個數(shù)*/return0;}程序運行情況:3-59↙93-5
經(jīng)過以下語句定義后,表達式z+=x>y?x:y的值為().intx=1,y=2,z=3;
2365ABCD提交單選題1分例如:(1)a=2+3,4*5;(2)inta=2,c;c=(b=a++,a+2);(3)inta=2,c;c=b=a++,a+2;逗號運算符
,
逗號表達式表達式1,表達式2,……,表達式n4.6.2逗號表達式
假設(shè)所有變量都為整型,表達式(a=2,b=5,a>b?a++:b++,a+b)的值是().7685ABCD提交單選題1分4.1算術(shù)運算符和算術(shù)表達式:+-*/%4.2自增、自減運算:++
--4.3位運算:&
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年寧波衛(wèi)生職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試參考題庫帶答案解析
- 2026年湛江幼兒師范??茖W(xué)校單招職業(yè)技能考試備考題庫帶答案解析
- 2026年上海興偉學(xué)院單招職業(yè)技能筆試參考題庫帶答案解析
- 2025-2030原發(fā)性醛固酮增多癥患者自我管理能力培養(yǎng)與健康促進研究
- 2025-2030醫(yī)療無人機配送網(wǎng)絡(luò)建設(shè)與應(yīng)急醫(yī)療體系協(xié)同報告
- 2025-2030醫(yī)用藥用輔料質(zhì)量控制要求與行業(yè)升級路徑分析報告
- 2025-2030制造軟件行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030制造工藝行業(yè)市場供需情形及品牌發(fā)展資本運作分析
- 2025-2030制造業(yè)細分行業(yè)市場供需動態(tài)及轉(zhuǎn)型投資方向藍皮書
- 2025-2030制造業(yè)數(shù)字化轉(zhuǎn)型行業(yè)市場研究報告
- 2025年國資委主任年終述職報告
- 大學(xué)教學(xué)督導(dǎo)與課堂質(zhì)量監(jiān)控工作心得體會(3篇)
- 2025年下半年國家教師資格幼兒園《綜合素質(zhì)》考試真題及參考答案
- 項目專家評審意見書標準模板
- 評審委托協(xié)議書
- 黑龍江中醫(yī)藥大學(xué)《無機化學(xué)》2025 學(xué)年第二學(xué)期期末試卷
- 2025年高中計算機操作試題題庫及答案
- 研學(xué)基地課程書籍或課件
- 杭州市西湖區(qū)人民政府西溪街道辦事處公開招聘編外合同制工作人員5人考試筆試備考試題及答案解析
- 日本所有番號分類
- 2024年江蘇省普通高中學(xué)業(yè)水平測試小高考生物、地理、歷史、政治試卷及答案(綜合版)
評論
0/150
提交評論