C語(yǔ)言程序設(shè)計(jì)選擇題庫(kù)及答案_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)選擇題庫(kù)及答案_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)選擇題庫(kù)及答案_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)選擇題庫(kù)及答案_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)選擇題庫(kù)及答案_第5頁(yè)
已閱讀5頁(yè),還剩44頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單項(xiàng)選擇題導(dǎo)讀:?jiǎn)雾?xiàng)選擇題要求從給出的四個(gè)備選答案中,選出一個(gè)最符合題意的答案。本類習(xí)題主要檢查對(duì)C語(yǔ)言基本概念的掌握情況,讀者可根據(jù)學(xué)習(xí)進(jìn)度選做部分習(xí)題。在完成習(xí)題的過(guò)程中,不但要選出正確的答案,而且要清楚不正確的選項(xiàng)錯(cuò)在何處,以加深對(duì)概念的理解。對(duì)于掌握不準(zhǔn)的問(wèn)題,應(yīng)該通過(guò)上機(jī)實(shí)驗(yàn)來(lái)檢驗(yàn)?!?.1】以下不正確的C語(yǔ)言標(biāo)識(shí)符是。A)intB)a_1_2C)ab1exeD)_x【1.2】以下是正確的C語(yǔ)言標(biāo)識(shí)符是。A)#defineB)_123C)%dD)n【1.3】下列四組字符串中都可以用作C語(yǔ)言程序標(biāo)識(shí)符的一組是。?A)printB)iamC)PxqD)str_l?_3done_halfM

2、y->bookCpp?oodbstart$itline#pow?aBc3paiHis.agewhile1.4】下面各選項(xiàng)組中,均是C語(yǔ)言關(guān)鍵字的組是A)auto,enum,includeB)switch,typedef,continueC)signed,union,scanfD)if,struct,type【1.5】下列不屬于C語(yǔ)言關(guān)鍵字的是。A)defaultB)registerC)enumD)external【1.6】C語(yǔ)言程序從main()函數(shù)開(kāi)始執(zhí)行,所以這個(gè)函數(shù)要寫(xiě)在。A)程序文件的開(kāi)始B)程序文件的最后C)它所調(diào)用的函數(shù)的前面D)程序文件的任何位置【1.7】下列關(guān)于C語(yǔ)言的敘

3、述錯(cuò)誤的是A) 大寫(xiě)字母和小寫(xiě)字母的意義相同B) 不同類型的變量可以在一個(gè)表達(dá)式中C) 在賦值表達(dá)式中等號(hào)(=)左邊的變量和右邊的值可以是不同類型D)同一個(gè)運(yùn)算符號(hào)在不同的場(chǎng)合可以有不同的含義【1.8】在C語(yǔ)言中,錯(cuò)誤的int類型的常數(shù)是A)32768B)0C)037D)0xAF【1.9】執(zhí)行語(yǔ)句printf("%x",-1);屏幕顯示。A)-1B)1C)-ffffD)ffff【1.10】已知longi=32768;執(zhí)行語(yǔ)句printf("%d",i);屏幕顯示。A)-1B)-32768C)1D)32768【1.11】已知longi=65539;執(zhí)行語(yǔ)句

4、printf("%d",i);屏幕顯示。A)65539B)-3C)3D)程序不能執(zhí)行【1.12在C語(yǔ)言中,整數(shù)-8在內(nèi)存中的存儲(chǔ)形式是。A)1111111111111000B)1000000000001000C)0000000000001000D)1111111111110111【1.13C語(yǔ)言中字符型(char)數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是A)原碼B)補(bǔ)碼C)反碼D)ASCII碼【1.14】將字符g賦給字符變量c,正確的表達(dá)式是。A)c=147B)c="147"C)c='147'D)c='0147'【1.15】下列轉(zhuǎn)義字符中

5、錯(cuò)誤的一個(gè)是。A)'000'B)'0014'C)'x111'D)'2'【1.16】將空格符賦給字符變量c,正確的賦值語(yǔ)句是。A)c='0'B)c=NULLC)c=0D)c=32【1.17】已知:chara='70';則變量a中。A)包含1個(gè)字符B)包含2個(gè)字符C)包含3個(gè)字符D)說(shuō)明非法【1.18】字符串""EOFn=-61""的長(zhǎng)度是。A) 8 B) 9 C) 14 D) 非法字符串【1.19】字符串""的長(zhǎng)度是。A)0B)1C)2D)非

6、法字符串【1.20】已知:chara;intb;floatc;doubled;執(zhí)行語(yǔ)句"c=a+b+c+d;"后,變量c的數(shù)據(jù)類型是。A)intB)charC)floatD)double【1.21】溫度華氏和攝氏的關(guān)系是:C=-(F-32)。已知:floatC,F;由華氏求攝氏的正確的9賦值表達(dá)式是。A)C=5/9(F-32)B)C=5*(F-32)/9C)C=5/9*(F-32)D)三個(gè)表達(dá)式都正確【1.22】逗號(hào)表達(dá)式"(a=3*5,a*4),a+15"的值是。A)15B)60C)30D)不確定【1.23】如果inta=1,b=2,c=3,d=4;則

7、條件表達(dá)式"a<b?a:c<d?c:d"的值是。1,241為求生s=10!的值,則變量s的類型應(yīng)當(dāng)為。A)intB)unsigedC)longD)以上三種類型均可1,251已知inti=10;表達(dá)式"20-0<=i<=9"的值是。A)0B)1C)19D)20【1.26】已知intx=1,y;執(zhí)行下述語(yǔ)句后變量x的值是y=+x>5&&+x<10;A)1B)2C)3D)41,271為判斷字符變量c的值不是數(shù)字也不是字母時(shí),應(yīng)米用下述表達(dá)式OA)c<=48|c>=57&&c<

8、=65|c>=90&&c<=97|c>=122B)!(c<=48|c>=57&&c<=65|c>=90&&c<=97|c>=122)C)c>=48&&c<=57|c>=65&&c<=90|c>=97&&c<=122D)!(c>=48&&c<=57|c>=65&&c<=90|c>=97&&c<=122)則表達(dá)式1.281已知int

9、a32=3,2,1"a00/a01/a02"的值是。A)0.166667B)1C)0D)錯(cuò)誤的表達(dá)式【1.29】已知intx=1,y=1,z=1;表達(dá)式"x+y+z+"的值A(chǔ))3B)4C)5D)表達(dá)式錯(cuò)誤【1.30】用十進(jìn)制表示表達(dá)式"12|012"的值是。A)1B)0C)12D)14【1.31】已知以下程序段:inta=3,b=4;a=aAb;b=bAa;a=aAb;則執(zhí)行以上語(yǔ)句后a和b的值分別是。A)a=3,b=4B)a=4,b=3C)a=4,b=4D)a=3,b=3【1.32】在位運(yùn)算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于A)操作

10、數(shù)乘以2B)操作數(shù)除以2C)操作數(shù)除以16D)操作數(shù)乘以16【1.33】已知chara=222;執(zhí)行語(yǔ)句a=a&052;后,變量a的值是。A)222B)10C)244D)254【1.34已知二進(jìn)制數(shù)a是00101101,如果想通過(guò)整型變量b與a做異或運(yùn)算,使變量a的高4位取反,低4位不變,則二進(jìn)制數(shù)b的值應(yīng)是。A)11110000B)00001111C)11111111D)00000000【1.35】已知inta=15,執(zhí)行語(yǔ)句a=a<<2以后,變量a的值A(chǔ))20B)40C)60D)80【1.36】已知intx=5,y=5,z=5;執(zhí)行語(yǔ)句x%=y+z;后,x的值是。A)0

11、B)1C)5D)6【1.37】使用語(yǔ)句scanf("x=%f,y=%f",&x,&y);輸入變量x、y的值(代表空格),正確的輸入是。A)1.25,2.4B)1.25x2=.41.C25),y=2.4D)x=1.25y=2.4【1.38】下列循環(huán)語(yǔ)句中有語(yǔ)法錯(cuò)誤的是。A)while(x=y)5;B)while(0);C)do2;while(x=b);D)dox+while(x=10);【1.39】已知intx=(1,2,3,4);變量x的值是。A)1B)2C)3D)4【1.40】表達(dá)式sizeof(double)是。A)函數(shù)調(diào)用B)double型表達(dá)式C)i

12、nt型表達(dá)式D)非法表達(dá)式【1.41】執(zhí)行語(yǔ)句printf("2:%d,",printf("1:%d,",scanf("%d",&x);以后的輸出結(jié)果是。A)2:1,1:1,B)1:1,2:1,C)2:4,1:1D)1:1,2:4,【1.42已知:intx,y;doublez;則以下語(yǔ)句中錯(cuò)誤的函數(shù)調(diào)用是。A)scanf("%d,%lx,%le",&x,&y,&z);B)scanf("%2d*%d%lf",&x,&y,&z);C)scanf

13、("%x%*d%o",&x,&y);D)scanf("%x%o%6.2f",&x,&y,&z);【1.43】與條件表達(dá)式"(n)?(c+):(c-)"中的表達(dá)式(n)等價(jià)的表達(dá)式是。A)(n=0)B)(n=1)C)(n!=0)D)(n!=1)【1.44】已知inti=1,j=0;執(zhí)行下面語(yǔ)句后j的值是。while(i)switch(i)case1:i+=1;j+;break;case 2: i+=2;j+;break;case 3: i+=3;j+;break;default:i-;j+;bre

14、ak;A) 1 B) 2 C) 3 D) 死循環(huán)1,451求取滿足式12+22+32+n2W1000的n,正確的語(yǔ)句是OA) for(i=1,s=0;(s=s+i*i)<=1000;n=i+);B) for(i=1,s=0;(s=s+i*i)<=1000;n=+i);C) for(i=1,s=0;(s=s+i*+i)<=1000;n=i);D) for(i=1,s=0;(s=s+i*i+)<=1000;n=i);1,46 的for語(yǔ)句。for(x=0,y=10;(y>0)&&(x<4);x+,y-);A)是無(wú)限循環(huán)B)循環(huán)次數(shù)不定C)循環(huán)執(zhí)行

15、4次D)循環(huán)執(zhí)行3次1,47 inti=1;執(zhí)行語(yǔ)句while(i+<4);后,變量i的值為OA)3B)4C)5D)61,48 intx=12,y=3;執(zhí)行下述程序后,變量x的值是Odox/=y-;while(x>y);A)1B)2C)3D)程序運(yùn)行有錯(cuò)誤【1.49】已知chara20="Beijing","shanghai","tianjin","chongqing";語(yǔ)句printf("%c",a30);的輸出是。A)<空格>B)nC)不定D)數(shù)組定義有誤【1.50】

16、若用數(shù)組名作為函數(shù)調(diào)用時(shí)的實(shí)參,則實(shí)際上傳遞給形參的是。A)數(shù)組首地址B)數(shù)組的第一個(gè)元素值C)數(shù)組中全部元素的值D)數(shù)組元素的個(gè)數(shù)【1.51】對(duì)二維數(shù)組的正確說(shuō)明是。A) inta=1,2,3,4,5,6;B)inta2=1,2,3,4,5,6;C)inta3=1,2,3,4,5,6;D)inta2,3=1,2,3,4,5,6;【1.52】對(duì)字符數(shù)組s賦值,不合法的一個(gè)是。A)chars="Beijing";B) chars20="beijing";C) chars20;s="Beijing";D)chars20='B

17、9;,'e','i','j','i','n','g';【1.53】對(duì)字符數(shù)組str賦初值,str不能作為字符串使用的一個(gè)是。A)charstr="shanghai";B) charstr="shanghai";C) charstr9='s','h','a','n','g','h','a','i';D) charstr8='s&

18、#39;,'h','a','n','g','h','a','i';【1.54】對(duì)函數(shù)形參的說(shuō)明有錯(cuò)誤的是。A)inta(floatx,intn)B)inta(float*x,intn)C)inta(floatx10,intn)D)inta(floatx,intn)【1.55】如果一個(gè)變量在整個(gè)程序運(yùn)行期間都存在,但是僅在說(shuō)明它的函數(shù)內(nèi)是可見(jiàn)的,這個(gè)變量的存儲(chǔ)類型應(yīng)該被說(shuō)明為。A)靜態(tài)變量B)動(dòng)態(tài)變量C)外部變量D)內(nèi)部變量1.56】在一個(gè)C源程序文件中,?若要定義一個(gè)只允許在該源文件

19、中所有函數(shù)使用的變量,則該變量需要使用的存儲(chǔ)類別是。A)externB)registerC)autoD)static【1.57】在C語(yǔ)言中,函數(shù)的數(shù)據(jù)類型是指。A)函數(shù)返回值的數(shù)據(jù)類型B)函數(shù)形參的數(shù)據(jù)類型C)調(diào)用該函數(shù)時(shí)的實(shí)參的數(shù)據(jù)類型D)任意指定的數(shù)據(jù)類型【1.58】已知如下定義的函數(shù):fun1(a)printf("n%d",a);則該函數(shù)的數(shù)據(jù)類型是。A)與參數(shù)a的類型相同B)void型C)沒(méi)有返回值D)無(wú)法確定【1.59】定義一個(gè)函數(shù)實(shí)現(xiàn)交換x和y的值,并將結(jié)果正確返回。能夠?qū)崿F(xiàn)此功能的是。A) swapa(intx,inty)B)swapb(int*x,int*y

20、)inttemp;inttemp;temp=x;x=y;y=temp;temp=x;x=y;y=temp;C)swapc(int*x,int*y)D)swapd(int*x,int*y)inttemp;int*temp;temp=*x;*x=*y;*y=temp;temp=x;x=y;y=temp;【1.60】求一個(gè)角的正弦函數(shù)值的平方。能夠?qū)崿F(xiàn)此功能的函數(shù)是。A)sqofsina(x)floatx;return(sin(x)*sin(x);B) doublesqofsinb(x)floatx;return(sin(double)x)*sin(double)x);C) doublesqofsi

21、nc(x)return(sin(x)*sin(x);D) sqofsind(x)floatx;return(double(sin(x)*sin(x);【1.61】一個(gè)函數(shù)內(nèi)有數(shù)據(jù)類型說(shuō)明語(yǔ)句如下:doublex,y,z(10);關(guān)于此語(yǔ)句的解釋,下面說(shuō)法正確的是。A) z是一個(gè)數(shù)組,它有10個(gè)元素。B) z是一個(gè)函數(shù),小括號(hào)內(nèi)的10是它的實(shí)參的值。C) z是一個(gè)變量,小括號(hào)內(nèi)的10是它的初值。D) 語(yǔ)句中有錯(cuò)誤?!?.62】已知函數(shù)定義如下:floatfun1(intx,inty)floatz;z=(float)x/y;return(z);主調(diào)函數(shù)中有inta=1,b=0;可以正確調(diào)用此函數(shù)的

22、語(yǔ)句是。A)printf("%f",fun1(a,b);B)printf("%f",fun1(&a,&b);C)printf("%f",fun1(*a,*b);D)調(diào)用時(shí)發(fā)生錯(cuò)誤【1.63】下面函數(shù)的功能是。a(s1,s2)chars1,s2;while(s2+=s1+);A)字符串比較B)字符串復(fù)制C)字符串連接D)字符串反向【1.64】在下列結(jié)論中,只有一個(gè)是錯(cuò)誤的,它是。A) C語(yǔ)言允許函數(shù)的遞歸調(diào)用B) C語(yǔ)言中的continue語(yǔ)句,可以通過(guò)改變程序的結(jié)構(gòu)而省略C) 有些遞歸程序是不能用非遞歸算法實(shí)現(xiàn)的D)

23、C語(yǔ)言中不允許在函數(shù)中再定義函數(shù)【1.65】已知:inta,*y=&a;則下列函數(shù)調(diào)用中錯(cuò)誤的是。A)scanf("%d",&a);B)scanf("%d",y);C)printf("%d",a);D)printf("%d",y);1.66】說(shuō)明語(yǔ)句"int(*p)();"的含義是A) p是一個(gè)指向一維數(shù)組的指針變量B) p是指針變量,指向一個(gè)整型數(shù)據(jù)C) p是一個(gè)指向函數(shù)的指針,該函數(shù)的返回值是一個(gè)整型D) 以上都不對(duì)【1.67設(shè)有說(shuō)明int(*p)4;其中的標(biāo)識(shí)符p是。A)

24、4個(gè)指向整型變量的指針變量B) 指向4個(gè)整型變量的函數(shù)指針C) 一個(gè)指向具有4個(gè)整型元素的一維數(shù)組的指針D) 具有4個(gè)指向整型變量的指針元素的一維指針數(shù)組【1.68】已知:chars10,*p=s,則在下列語(yǔ)句中,錯(cuò)誤的語(yǔ)句是。A)p=s+5;B)s=p+s;C)s2=p4;D)*p=s0;【1.69】已知:chars100;inti;則引用數(shù)組元素的錯(cuò)誤的形式是。A)si+10B)*(s+i)C)*(i+s)D)*(s+)+i)1.70】已知:chars6,*ps=s;則正確的賦值語(yǔ)句是A)s="12345";B)*s="12345";C)ps=&qu

25、ot;12345";D)*ps="12345";【1.71】已知:chara310="BeiJing","ShangHai","TianJin",*pa=a;不能正確顯示字符串"ShangHai"的語(yǔ)句是。A)printf("%s",a+1);B)printf("%s",*(a+1);C)printf("%s",*a+1);D)printf("%s",&a10);【1.72】已知:inta43=1,

26、2,3,4,5,6,7,8,9,10,11,12;int(*ptr)3=a,*p=a0;則以下能夠正確表示數(shù)組元素a12的表達(dá)式是。A)*(*(a+1)+2)B)*(*(p+5)C)(*ptr+1)+2D)*(ptr+1)2)【1.73已知:inta尸1,2,3,4,5,6,7,8,9,10,11,12,*p=a;則值為3的表達(dá)式是。A)p+=2,*(p+)B)p+=2,*+pC)p+=2,*p+D)p+=2,+*p【1.74】已知:inta=1,2,3,4,y,*p=a;則執(zhí)行語(yǔ)句y=(*+p)-;之后,數(shù)組a各元素的值變?yōu)?。A)0,1,3,4B)1,1,3,4C)1,2,2,4D)1,2,

27、3,3A)1B)2C)3D)4【1.75】已知:inta=1,3,5,7,y*p=a;為使變量y的值為3,下列語(yǔ)句正確的是。A)y=+*p+;B)y=+(*p+);C)y=(+*p)+;D)y=(*+p)+;【1.76】已知:intx=1,3,5,7,9,11,*ptr=x;則能夠正確引用數(shù)組元素的語(yǔ)句是。A)xB)*(ptr-)C)x6D)*(-ptr)【1.77】函數(shù)的功能是交換變量x和y中的值,且通過(guò)正確調(diào)用返回交換的結(jié)果。能正確執(zhí)行此功能的函數(shù)是。A)funa(int*x,int*y)B)funb(intx,inty)int*p;intt;p=x;*x=*y;*y=*p;t=x;x=y

28、;y=t;C)func(int*x,int*y)D)func(int*x,int*y)*x=*y;*y=*x;*x=*x+*y;*y=*x-*y;*x=*x-*y;【1.78】有定義如下:structskinta;floatb;data,*p;如果p=&data;則對(duì)于結(jié)構(gòu)變量data的成員a的正確引用是。A)(*).data.aB)(*p).aC)p->data.aD)p.data.a【1.79】已知:structstintn;structst*next;staticstructsta3=1,&a1,3,&a2,5,&a0,*p;如果下述語(yǔ)句的顯示是2,

29、則對(duì)p的賦值是。printf("%d",+(p->next->n);A) p=&a0;B)p=&a1;C)p=&a2;D)p=&a3;1.80】已知:structpersoncharname10;intage;class10="LiMing",29,"ZhangHong",21,"WangFang",22;下述表達(dá)式中,值為72的一個(gè)是A)class0->age+class1->age+class2->ageB) 5C) perso

30、5D) clase->name51.81】已知:structinti;charc;floata;test;則sizeof(test)的值是。A)4B)5C)6D)71.82】已知:unioninti;charc;floata;test;則sizeof(test)的值是。A)4B)5C)6D)7【1.83】已知:unionu_typeinti;charch;floata;temp;現(xiàn)在執(zhí)行"temp.i=266;printf("%d",temp.ch)"的結(jié)果是A)266B)256C)10D)1【1.84】若有以下程序段:structd

31、entintn;int*m;inta=1,b=2,c=3;structdents3=101,&a,102,&b,103,&c;structdent*p=s;則以下表達(dá)式中值為2的是。A)(p+)->mB)*(p+)->mC)(*p).mD)*(+p)->m【1.85】若有以下說(shuō)明語(yǔ)句,則對(duì)結(jié)構(gòu)變量pup中sex域的正確引用是。structpupilcharname20;intsex;pup,*p;p=&pup;A)p.pup.sexB)p->pup.sexC)(*p).pup.sexD)(*p).sex【1.86】以下對(duì)結(jié)構(gòu)變量stul中

32、成員age的非法引用是。structstudentintage;intnum;stu1,*p;p=&stu1;A)stu1.ageB)student.ageC)p->ageD)(*p).age【1.87】若有以下定義和語(yǔ)句:uniondatainti;charc;floatf;a;intn;則以下語(yǔ)句正確的是。A)a=5;B)a=2,'a',1.2;C)printf("%dn",a);D)n=a;【1.88】已知:structskinta;intage;date,*p;如果要使指針p指向data中的成員a,正確的賦值語(yǔ)句是A)p=(struct

33、sk*)&data.a;B)p=(structsk*)data.a;C)p=&data.a;D)*p=data.a;【1.89】已知enumweeksun,mon,tue,wed,thu,fri,satday;則正確的賦值語(yǔ)句是。A)sun=0;C)san=day;D)sun=mon;D)day=sun;【1.90】已知enumcolorred,yellow=2,blue,white,blackren;執(zhí)行下述語(yǔ)句的輸出結(jié)果是。printf("%d",ren=white);A)0B)1C)3D)4【1.91】已知enumnamezhao=1,qian,sun

34、,liman;執(zhí)行下述程序段后的輸出是。man=0;switch(man)case0:printf("Peoplen");case 1: printf("Mann");case 2: printf("Womann");default:printf("Errorn");A)PeopleB)ManC)WomanD)Error【1.92】下述關(guān)于枚舉類型名的定義中,正確的是。A)enema=one,two,three;B)enemone=9,two=-1,three;C)enema="one",&qu

35、ot;two","three";D)enem"one","two","three";【1.93C語(yǔ)言中標(biāo)準(zhǔn)輸入文件stdin是指。A)鍵盤(pán)B)顯示器C)鼠標(biāo)D)硬盤(pán)【1.94】要打開(kāi)一個(gè)已存在的非空文件"file"用于修改,選擇正確的語(yǔ)句。A)fp=fopen("file","r");B)fp=fopen("file","a+");C)fp=fopen("file","w&qu

36、ot;);D)fp=fopen('file","r+");1.95】當(dāng)順利執(zhí)行了文件關(guān)閉操作時(shí),fclose函數(shù)的返回值A(chǔ))-1B)TRUEC)0D)1【1.96】fscanf函數(shù)的正確調(diào)用形式是。A) fscanf(文件指針,格式字符串,輸出列表);B) fscanf(格式字符串,輸出列表,文件指針);C) fscanf(格式字符串,文件指針,輸出列表);D) fscanf(文件指針,格式字符串,輸入列表);【1.97】使用fgetc函數(shù),則打開(kāi)文件的方式必須是。A)只寫(xiě)B(tài))追加C)讀或讀/寫(xiě)D)參考答案B和C都正確【1.98】已知宏定義#defineN

37、3#defineY(n)(N+1)*n)執(zhí)行語(yǔ)句z=2*(N+Y(5+1);后,變量z的值是A)42B)48C)52D)出錯(cuò)1.99】已知宏定義#defineSQ(x)x*x,執(zhí)行語(yǔ)句printf("%d",10/SQ(3);后的輸出結(jié)果是A)1B)3C)9D)10【1.100】已知宏定義如下:#definePRprintf#defineNL"n"#defineD"%d"#defineD1DNL若程序中的語(yǔ)句是PR(D1,a);經(jīng)預(yù)處理后展開(kāi)為A)printf(%dn,a);B)printf("%dn",a);C)

38、printf("%d""n",a);D)原語(yǔ)句錯(cuò)誤參考答案1.1 】答案:A注釋:int是C語(yǔ)言的關(guān)鍵字1.2 】答案:B1.3 】答案:A【 1.15 】答案:C注釋:include是預(yù)處理命令;scanf是函數(shù)名;type不是C語(yǔ)言的關(guān)鍵字?!?.5】答案:D【1.6】答案:D【1.7】答案:A【1.8】答案:A注釋:int型表示整數(shù)的范圍是-3276832767?!?.9】答案:D注釋:整型常量-1在計(jì)算機(jī)中表示為補(bǔ)碼1111111111111111,用十六進(jìn)制顯示這個(gè)數(shù)時(shí),最左邊的1不會(huì)被解釋為符號(hào)位,而是與右邊其它位共同轉(zhuǎn)換為十六進(jìn)制數(shù)?!?.

39、10】答案:B注釋:長(zhǎng)整型數(shù)32768在計(jì)算機(jī)內(nèi)的表示是1000000000000000,以一般整型進(jìn)行輸出時(shí),此數(shù)恰是-32768的補(bǔ)碼。【1.11】答案:C注釋:長(zhǎng)整型數(shù)65539在計(jì)算機(jī)內(nèi)的表示是00010000000000000011,以一般整型進(jìn)行輸出時(shí),僅將右側(cè)16位二進(jìn)制數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)?!?.12】答案:A注釋:C語(yǔ)言中,int型的負(fù)數(shù)是采用補(bǔ)碼表示的。注釋:變量c是字符型,可用字符常量為它賦值。字符常量必須用單引號(hào)括起來(lái),所以B是錯(cuò)誤的;在單引號(hào)或雙引號(hào)內(nèi)的反斜線''用于表示轉(zhuǎn)義字符,A選項(xiàng)在無(wú)引號(hào)時(shí)使用反斜線是錯(cuò)誤的;C選項(xiàng)單引號(hào)內(nèi)出現(xiàn)反斜線表示它與后面的數(shù)

40、字組成一個(gè)轉(zhuǎn)義字符;單引號(hào)只允許括起一個(gè)字符,D選項(xiàng)在單引號(hào)內(nèi)出現(xiàn)4個(gè)字符,是錯(cuò)誤的。【1.15】答案:C【1.16】答案:D注釋:空字符和空格符是不同的兩個(gè)字符,空格符的ASCII碼值是32,空字符的ASCII值是0。【1.17】答案:A【1.18】答案:B【1.19】答案:A【1.20】答案:C【1.21】答案:B注釋:?jiǎn)渭儚腃語(yǔ)言語(yǔ)法來(lái)說(shuō),選項(xiàng)B、C都是正確的,但是選項(xiàng)C中第一個(gè)運(yùn)算的兩個(gè)對(duì)象都是整型常數(shù),其結(jié)果也是整型數(shù)0,最后的運(yùn)算結(jié)果也就是0了?!?1.22 】答案:C【 1.23 】答案: A注釋:將條件表達(dá)式增加一個(gè)括號(hào),此式變?yōu)閍<b?a:(c<d?c:d),它的

41、運(yùn)算順序就清楚了。由于條件運(yùn)算符的結(jié)合性是從右向左,所以括號(hào)可以省略。它的運(yùn)算順序是先算出右邊的條件表達(dá)式"c<d?c:d"的值,然后求條件表達(dá)式a<b?a:3的值?!?.24】答案:C【1.25】答案:B【1.26】答案:B注釋:當(dāng)通過(guò)一個(gè)運(yùn)算對(duì)象即可決定邏輯運(yùn)算&&的結(jié)果時(shí),則對(duì)另一個(gè)運(yùn)算對(duì)象不做處理?!?.27】答案:D【1.28】答案:B注釋:數(shù)組元素在內(nèi)存中按行排列,此數(shù)組的前3個(gè)元素的值分別是3、2、1,表達(dá)式中雖然數(shù)組下標(biāo)的寫(xiě)法似乎每行有3個(gè)元素,和定義時(shí)的3行2列不一致,但是C語(yǔ)言引用數(shù)組元素時(shí)是根據(jù)數(shù)組的首地址和給出的下標(biāo)進(jìn)行運(yùn)

42、算決定元素的地址。題中表達(dá)式引用了數(shù)組前3個(gè)元素。【1.29】答案:A【1.30】答案:D【1.31】答案:B【 1.33 】答案:B【 1.35 】答案:B【1.34】答案:A【1.35】答案:C【1.36】答案:C【1.37】答案:C【1.38】答案:D【1.39】答案:D【1.40】答案:C【1.41】答案:D注釋:scanf函數(shù)返回值是輸入數(shù)據(jù)的個(gè)數(shù),printf函數(shù)的返回值是輸出的字符個(gè)數(shù)。【1.42】答案:D【1.43】答案:C注釋:在C語(yǔ)言中,經(jīng)常用一個(gè)變量來(lái)作為邏輯表達(dá)式,其含義就是:當(dāng)變量的值不為0時(shí)關(guān)系成立。【1.44】答案:D注釋:break語(yǔ)句僅可跳出switch語(yǔ)句,

43、不會(huì)跳出while循環(huán),這是一個(gè)死循環(huán)。1.45 】答案:A1.46 】答案:C【 1.48 】答案:C【1.48】答案:D注釋:當(dāng)除數(shù)y為0時(shí),程序發(fā)生溢出錯(cuò)誤?!?.49】答案:C【1.50】答案:A【1.51】答案:C【1.52】答案:C注釋:答案C的賦值號(hào)左側(cè)是數(shù)組s的首地址,是一個(gè)常量,賦值號(hào)右側(cè)是一個(gè)字符串常量,不可能將一個(gè)字符串常量賦給一個(gè)地址常量?!?.53】答案:D注釋:D選項(xiàng)缺少字符串結(jié)束標(biāo)志。【1.54】答案:C注釋:此處函數(shù)形參是一個(gè)指針變量,接受實(shí)參的地址,而不是一個(gè)數(shù)組?!?.55】答案:A【1.56】答案:D注釋:這里首先要明確一些基本概念。在C語(yǔ)言中,程序與文件

44、是不同的概念,一個(gè)程序可以由一個(gè)文件組成,也可以由多個(gè)文件組成;一個(gè)文件中又可以包含多個(gè)函數(shù);函數(shù)是構(gòu)成C程序的基本單位。變量的作用域因變量的存儲(chǔ)類型不同而不同。auto和register類型的變量的作用域是說(shuō)明變量的當(dāng)前函數(shù);外部變量的作用域是整個(gè)程序,即外部變量的作用域可以跨越多個(gè)文件;內(nèi)部靜態(tài)變量(定義在一個(gè)函數(shù)內(nèi)部的static型的變量)的作用域是當(dāng)前函數(shù),外部靜態(tài)變量(定義在函數(shù)外面的static型的變量)的作用域是當(dāng)前文件,即可以跨越同一文件中的不同函數(shù)。【1.57】答案:A【1.58】答案:A注釋:它和參數(shù)a一樣,數(shù)據(jù)類型說(shuō)明被省略,按照C語(yǔ)言的規(guī)定,在這種情況下,表示它們是in

45、t型?!?.59】答案:C注釋:函數(shù)swapa是值傳遞,函數(shù)的執(zhí)行結(jié)果不能返回;函數(shù)swapb中變量temp不是指針變量,所以它不能接受地址量,用指針變量x為它賦值是不對(duì)的;函數(shù)swap中雖然指針變量交換了地址,即它們的指向的目標(biāo)變量進(jìn)行了交換,但是目標(biāo)變量并沒(méi)有行值的交換?!?.60】答案:B【1.61】答案:D【1.62】答案:D注釋:主調(diào)函數(shù)中b=0,在執(zhí)行fun1函數(shù)里的除法時(shí)發(fā)生溢出錯(cuò)誤。【1.63】答案:B【1.64】答案:C【1.65】答案:D注釋:在答案D中,正確的函數(shù)調(diào)用應(yīng)當(dāng)是:printf("%d",*y)。【1.66】答案:C注釋:要注意與說(shuō)明語(yǔ)句&q

46、uot;int(*p);"的區(qū)別。說(shuō)明語(yǔ)句"int(*p);"說(shuō)明的是一個(gè)指向數(shù)組的指針?!?.67】答案:C注釋:題干中由于*和p被小括號(hào)括起,所以p應(yīng)被解釋為一個(gè)指針,而后的下標(biāo)運(yùn)算符說(shuō)明所指向的對(duì)象是一個(gè)有4個(gè)int型元素的一維數(shù)組;如果是int(*p)(),則是指向函數(shù)的指針。對(duì)于int*p4,則根據(jù)運(yùn)算符的優(yōu)先級(jí),先考慮p和運(yùn)算符的關(guān)系,所以它就是一個(gè)指針數(shù)組了?!?.68】答案:B注釋:選項(xiàng)B有兩處錯(cuò)誤,一是數(shù)組名是常量,不能出現(xiàn)的賦值好的左側(cè),二是指針變量只能和整數(shù)做加,不能和作為地址常量的數(shù)組名相加?!?.69】答案:D注釋:s作為數(shù)組名是地址常量,而5+是5=5+1,C語(yǔ)言不允許對(duì)常量進(jìn)行賦值?!?1.70 】答案: C【 1.71 】答案: C注釋:a是二維數(shù)組名,a+1中的1不是1個(gè)字節(jié),而是數(shù)組的"一行",即10個(gè)字節(jié),所以a+1是第二個(gè)字符串的首地址,A選項(xiàng)正確。在C編譯系統(tǒng)中對(duì)二維數(shù)組名可這樣理解(注意,這里僅是理解):a指向一個(gè)一維數(shù)組,故(a+1)是指向a1的,*(a+1)就是取a1的值,它保存第二個(gè)字符串"ShangHai"的首地址,所以選項(xiàng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論