11下列關(guān)于定點數(shù)與浮點數(shù)的敘述中錯誤的是( )。
A.在實數(shù)的浮點表示中,階碼是一個整數(shù)
B.整數(shù)是實數(shù)的特例,也可以用浮點數(shù)表示
C.實數(shù)的補碼是其對應(yīng)的反碼在最后一位加1
D.相同長度的浮點數(shù)和定點數(shù),前者可表示數(shù)的范圍要大于后者
參考答案:C
參考解析:正整數(shù)的補碼與其原碼一致;負整數(shù)的褂 碼是其對應(yīng)的反碼在最后一位加l。
12表達式'5'-'1'的值是( )。
A.整數(shù)4B.字符4C.表達式不合法D.字符6
參考答案:A
參考解析:在C語言中,字符都是變?yōu)槠鋵?yīng)的ASCIl碼值來參加算術(shù)運算的,但字符間的相對位置關(guān)系還是不變的,字符5和字符1的ASCIl碼值相差仍是4。
13有以下程序:
#include
main()
{int a[10]={1,2,3,4,5,6,7,8,9,10),*p=a;
printf(”%a\n”,*(p+2));
)
程序的輸出結(jié)果是( )。
A.3B.4C.1D.2
參考答案:A
參考解析:*p—a;P指向首地址,*(p+2))往后移
動兩個元素,指向3,所以正確答案為A。
14在C語言中,函數(shù)返回值的類型最終取決于( )。
A.函數(shù)定義時在函數(shù)首部所說明的函數(shù)類型
B.return語句中表達式值的類型
C.調(diào)用函數(shù)時主調(diào)函數(shù)所傳遞的實參類型
D.函數(shù)定義時形參的類型
參考答案:A
參考解析:在C語言中,函數(shù)返回的類型最終取決于函數(shù)定義時在函數(shù)首部所說明的函數(shù)類型,與調(diào)用函數(shù)時主調(diào)函數(shù)所傳遞的實參類型和函數(shù)定義時形參的類型無關(guān),而retllrn語句表達式的值將強制轉(zhuǎn)換為函數(shù)定義時在函數(shù)首部所說明的函數(shù)類型返回。
15下列程序的運行結(jié)果是( )。
#included
void main()
{int s=0,k;
for(k=7;k>1;k--)
{switch(k)
{case 1:
case 4:
case 7:
s++:
break;
case 2:
case 3:
case 6:break;
case 0:
case 5:
s+=2:
break;
))
print[(”S=%d”,s);
}
A.S=3B.s=4C.s=5D.無輸出結(jié)果
參考答案:B
參考解析:運行程序,當k一7時switch(7)執(zhí)行case:7,s+十后S一1,break跳出。k一一,k=7繼續(xù)循環(huán)switch(6),執(zhí)行case6;直接跳出循環(huán),k一一變成5,繼續(xù)循環(huán)switch(5),執(zhí)行case5后面的語句s+=2,也相當于s—s+2,此時S為3,break跳出,k變?yōu)?,繼續(xù)循環(huán),執(zhí)行ease4為空,繼續(xù)執(zhí)行case7;s++為4跳出循環(huán),k一一變?yōu)?,繼續(xù)循環(huán),執(zhí)行case3,空語句往下執(zhí)行case6,跳出,k一一為2,繼續(xù)循環(huán),執(zhí)行case2;空語句往下執(zhí)行ease3,空語句再執(zhí)行case7,跳出循環(huán),k一一為1不符合循環(huán),退出,此時s=4。
16設(shè)x為int型變量,則執(zhí)行以下語句后,X的值為( )。
x=10;x=x-=x-x:
A.10B.20C.40D.30
參考答案:A
參考解析:執(zhí)行x—X--=X--x語句可寫成x=x一(x—x),可看出結(jié)果為10,故A選項正確。
17有以下程序:
#include
void WriteStr(char*fn.char*str)
{FILE*fp
fp=fopen(fn,”w”);fputs(str,fp);fclose(fp);)
main()
{ WriteStr(”t1.dat”,”start”);
WriteStr(”t1.dat”,”end”);)
程序運行后,文件t1.dat中的內(nèi)容是( )。
A.startB.endC.starte ndD.endrt
參考答案:B
參考解析:用”w”方式打開文件,意思是如果文件名相同則覆蓋原來的文件,所以當再次輸入時覆蓋了第一次的內(nèi)容,B選項正確。
18若程序中有宏定義行:#define N 100,則以下敘述中正確的是( )。
A.宏定義行中定義了標識符N的值為整數(shù)100
B.在編譯程序?qū)源程序進行預(yù)處理時用100替換標識符N
C.對C源程序進行編譯時用100替換標識符N
D.在運行時用100替換標識符N
參考答案:B
參考解析:C語言中,凡是以“#”號開頭的行,都稱為“編譯預(yù)處理”。對c源程序進行編譯前,由編譯預(yù)處理程序?qū)@些編譯預(yù)處理命令進行處理。
19合法的八進制數(shù)是( )。
A.0B.028C.-077D.01.0
參考答案:A
參考解析:八進制數(shù)里沒有8,7完了就要進位的,并且八進制里沒有小數(shù)位的。因此選項A是正確的。
20以下選項中不合法的用戶標識符是( )。
A._123B.printfC.A$D.Dim
參考答案:C
參考解析:c語言規(guī)定標識符只能由字母、數(shù)字、下劃線組成,并且只能由字母或下劃線開頭,不能以數(shù)字開頭。c項中包含$特殊符號,所以c項不合法。
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |