11.下面合法的賦值語句是【 】。
A) x+y=2002; B) ch="green"; C) x=(a+b)++; D) x=y=0316;
分析:賦值號左端不能為表達(dá)式,選項A)是錯的;賦值號不能將字符串賦給某個變量,選項B)也是錯的;增量運算符“++”不能用于表達(dá)式,選項C)也是錯的。
本題正確答案為D。
12.已知a為int型,b為double型,c為float型,d為char型,則表達(dá)式a+b*c-d/a結(jié)果的類型為【 】。
A) int 型 B) float型 C) double型 D) char型
分析:不同類型數(shù)據(jù)混合運算的轉(zhuǎn)換規(guī)律是:運算前float型數(shù)據(jù)會自動轉(zhuǎn)換為double型,char型數(shù)據(jù)會自動轉(zhuǎn)換為int型。運算時int型數(shù)據(jù)和double型數(shù)據(jù)要先化為相同類型,即double型,運算結(jié)果也為double型。
本題正確答案為C。
13.執(zhí)行以下程序段后的輸出結(jié)果是【 】。
int x=0xcde;
printf("M,%4o,%4x\\n",x,x,x);
A) 3294,6336,cde B) 3294,6336,xcde C) 3294,06336,0xcde D) 3294,6336,0cde
分析:0xcde是十六進(jìn)制數(shù),寫成二進(jìn)制數(shù)形式為:1100 1101 1110,按八進(jìn)制送出時,是從右向左3位二進(jìn)制數(shù)寫成1位,按十六進(jìn)制形式送出時,是從右向左4位二進(jìn)制數(shù)寫成1位。
本題正確答案為A。
14.下面的程序運行后輸出為【 】。
#include
#include
main( )
{ int a,b;
float c;
b=5;c=6;c=b+7;b=c+1;
a=sqrt((double)b+c);
printf("%d,%f,%d",a+6,c,b);
}
A) 11.000000,12.000000,13.000000
B) 11.000000,12.000000,13
C) 11.0000000,12,13
D) 11,12.000000,13
分析:C語言允許將一種類型的數(shù)據(jù)賦給另一種類型的變量,但是變量的類型并不會因為賦值而發(fā)生改變,如本題中將b+7,即12賦給float型變量c,c值應(yīng)為12.000000而不是整數(shù)12,同樣a=sqrt((double)b+c),賦值號右邊是雙精度數(shù),但由于a是整形變量,故a的值為5。
本題正確答案為D。
15.執(zhí)行以下程序后x的值為【 】。
unsigned int x=65535;
printf("%d\\n",x);
A) 65535 B) 1 C) 有錯誤 D) -1
分析:題中將x定義成無符號整數(shù),并且已初始化為:1111111111111111,若按%d格式輸出,則最高位的1被當(dāng)成了符號,1111111111111111成了負(fù)數(shù)的補(bǔ)碼,輸出結(jié)果為-1。
本題正確答案為D。
相關(guān)推薦:2010年9月計算機(jī)等級考試成績查詢時間匯總北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |