C語言計(jì)算機(jī)二級(jí)選擇錯(cuò)題集(一)
1二進(jìn)制數(shù)和十進(jìn)制數(shù)轉(zhuǎn)化 a>>2表示把數(shù)字a向右位移兩格該運(yùn)算符意思就是把數(shù)字縮22小二十倍 右移縮左移括 注意這個(gè)運(yùn)算符都是針對(duì)二進(jìn)制數(shù)的 但是a是十進(jìn)制數(shù)
2 a×=運(yùn)算符該運(yùn)算符自動(dòng)添加括號(hào)
翻譯一下就是a=a×(a+(b=a-2)) a=5×(5+(5-2))=40 b=3 三
注意本題說的是結(jié)束條件而不是符合循環(huán)的條件 條件一邏輯與條件二兩個(gè)條件只要有一個(gè)不滿足都可以結(jié)束循環(huán) 四 宏define的性質(zhì)(最優(yōu)先而且不帶括號(hào))
c=4+a>b?a:b //參宏部分直接替換而且不加括號(hào) 顯然4+2>5所以 選a=2 五 strlen求字符串長(zhǎng)度
本題只需要注意/和/0都不占長(zhǎng)度但/0占一個(gè)byte就行 六
本題需要看清題目雖然一個(gè)先用后加一個(gè)先加后用但是沒有賦值語句xy還是自+了所以都是18 七 if else里面判斷條件==變成=會(huì)報(bào)錯(cuò)嗎?
這題把判斷語句改成賦值語句 x=3 3非03是真所以執(zhí)行if后面的內(nèi)容 八 阿克思碼
A—Z阿克司罵是65到90 a—z阿克思碼是97到122 0-9阿克思碼是 48—57 char+double自動(dòng)把char轉(zhuǎn)化為阿克司碼 但本題定義了c是char所以因?yàn)閏= c+a所以c+a的阿克司罵也就是66+2.5也就是68.5需要再轉(zhuǎn)化為char 向下取整也就是68 也就是字符D C運(yùn)算符優(yōu)先級(jí) C語?的運(yùn)算符包括單?運(yùn)算符、雙?運(yùn)算符、三?運(yùn)算符,優(yōu)先級(jí)如下: 第1優(yōu)先級(jí):各種括括號(hào),如()、[]等、成員運(yùn)算符 . ; 第2優(yōu)先級(jí):所有單?運(yùn)算符,如++、–、!、~等; 第3優(yōu)先級(jí)(算數(shù)運(yùn)算符):乘法運(yùn)算符*、除法運(yùn)算符/、求余運(yùn)算符%; 第4優(yōu)先級(jí)(算數(shù)運(yùn)算符):加法運(yùn)算符+、減法運(yùn)算符-; 第5優(yōu)先級(jí)(移位運(yùn)算符):移位運(yùn)算符<<、>>;