




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
家二級(jí)(C語(yǔ)言)筆試模擬試卷11
(共9套)
(共558題)
國(guó)家二級(jí)(C語(yǔ)言)筆試模擬試卷第1
套
一、公共基礎(chǔ)選擇題(本題共10題,每題7.0分,共
70分。)
1、己知8個(gè)數(shù)據(jù)元素為(34,76,45,18,26,54,92,65),按照依次插入結(jié)點(diǎn)
的方法生成一棵二叉排序樹(shù)后,最后2層上的結(jié)點(diǎn)總數(shù)為o
A、1
B、2
C、3
D、4
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:暫無(wú)解析
2、一個(gè)棧的輸入序列為1,2,3,4,下列選項(xiàng)中的序列不可能是這個(gè)棧的
輸出序列。
A、1,3,2,4
B、2,3,4,1
C、4,3,1,2
D、3,4,2,1
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:暫無(wú)解析
3、循環(huán)鏈表的主要優(yōu)點(diǎn)是_____o
A、不再需要頭指針了
B、已知某個(gè)結(jié)點(diǎn)的位置后,能夠容易找到它的直接前驅(qū)
C、在進(jìn)行插入、刪除運(yùn)算時(shí),能更好地保證鏈表不斷開(kāi)
D、從表中任一結(jié)點(diǎn)出發(fā)都能掃描到整個(gè)鏈表
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:暫無(wú)解析
4、軟件測(cè)試是軟件開(kāi)發(fā)過(guò)程中重要且不可缺少的階段,測(cè)試過(guò)程中的是基
礎(chǔ)測(cè)試。
A、系統(tǒng)測(cè)試
B、有效性測(cè)試
C、單元測(cè)試
D、集成測(cè)試
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:暫無(wú)解析
5、在瀑布模型中,將軟件開(kāi)發(fā)劃分為若干時(shí)期,而軟件的可行性研究一般被屬于
A、計(jì)劃時(shí)期
B、維護(hù)時(shí)期
C、運(yùn)行時(shí)期
D、開(kāi)發(fā)時(shí)期
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:暫無(wú)解析
6、在數(shù)據(jù)庫(kù)技術(shù)中,面向?qū)ο髷?shù)據(jù)模型是一種o
A、概念模型
B、結(jié)構(gòu)模型
C、物理模型
D、形象模型
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解暫無(wú)解析
7、在C語(yǔ)言中提供的合法的關(guān)鍵字是o
A、swicth
cher
C、Case
D、default
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:暫無(wú)解析
8、若定義staticinta[2M2]={l,2,3,4},則a數(shù)組的各數(shù)組元素分別為
A、a[O][O]=l>a[0][l]=2>at[l][0]=3>a[l][l]=4
B、a[O][O]=l>a|0][l]=3>a[l][0]=2^a[l][l]=4
C、a⑼⑼=4、a[0][l]=3>a[l][0]=2.s[l][l]=l
D、a[0][0]=4^a[0][l]=2sa[l][0]=3.a[l]|l|=l
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:暫無(wú)解析
9、下列變量說(shuō)明語(yǔ)句中,正確的是
A、char:abc;
chara:b;c;
C、intx;z;
D、intx,z;
標(biāo)準(zhǔn)答案:X
知識(shí)點(diǎn)解析:暫無(wú)解析
10、若有以下定義和語(yǔ)句,則輸出的結(jié)果是_____<,charcl=,b"c2=,e,;
printf("%d,%c\n",c2-cl,c2-'a'+”A”);
A、2,M
B、3,E
C、2,E
D、輸出結(jié)果不確定
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:暫無(wú)解析
二、選擇題(1分)(本題共70題,每題1.0分,共70
分。)
11、下列不正確的轉(zhuǎn)義字符是。
A、3,
B、
C、’074,
D、)(r
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:暫無(wú)解析
12^設(shè)有如下定義,則執(zhí)行表達(dá)式(nFa>b)&&(n=c>d)后,n的值為。int
a=l,b=2,c=3,d=4,m=2,n=2;
A、1
B、2
C>3
D、0
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:暫無(wú)解析
13、若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是。
A、,a,<=c<,z,
B、(c>=,a,)||(c<=,z,)
C、(‘a(chǎn)'V'c')and('z'>=C)
D、(c>='a')&&(cV='z')
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:暫無(wú)解析
14、在下列敘述中,正確的一條是_____。
A、計(jì)(表達(dá)式)語(yǔ)句中,表達(dá)式的類型只限于邏輯表達(dá)式
B、語(yǔ)句“goto12;”是合法的
C、for(;;)語(yǔ)句相當(dāng)于while(l)語(yǔ)句
D、break語(yǔ)句可用于程序的任何地方,以終止程序的執(zhí)行
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:暫無(wú)解析
15、設(shè)i是int型變量,f是float型變量,用下面的語(yǔ)句給這2個(gè)變量輸入值。為
了將,100和765.12分別賦給i和f,則正確的輸入為oscanf(',i=%d,
4%廣,&i,&f):
A、AOV空格>765.12V回車,
B、i=100,f=765.12〈回車》
C、COV回車>765.12V回車〉
D、x=100V回車〉y=765.12V回車〉
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:暫無(wú)解析
16、下面程序執(zhí)行后的輸出結(jié)果是(小數(shù)點(diǎn)后只寫一位)omain(){doubled;
floatf;longI;inti;i=f=l=d=20/3;printf(n%d%ld%f%f\n",i,l,f,d);)
A、666.06.0
B、666.76.7
C、666.06.7
D、666.76.0
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:暫無(wú)解析
17、當(dāng)下面的程序運(yùn)行后,變量c的值為omain(){inta=45,b=27,c=0;
c=max(a,b);}intmax(x,y)intx,y;{intz;if(x>y)z=x;elsez=y;return(z);}
A、45
B、27
C>0
D、72
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:暫無(wú)解析
18、若有語(yǔ)句scanf("%d%c%f',&a,&b,&c),假設(shè)輸入序列為2223al23o.12,則a.b.c
的值為。
A、無(wú)值
B、2223,a,123o.12
C^2223,a,無(wú)
D、2223,a,123
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:暫無(wú)解析
19、若輸入lamaboy!”,下列程序的運(yùn)行結(jié)果為。char
connect(string1,string2,string)charstring11],string2||,string|];{inti,j;for
(i=O;stringl[i]!=*\0,;i++)string[i]=stringl[i];fbr(j=0;string2[j]!=,\0,;j++)
string[i+j]=string2[j];string[i+j]=,\0,;}main(){charsi[100],s2[100],s[100];
printf("\n輸入string1:\n");scanf("%s",sl);printf("\n輸入string?:\n");scanf("%s",
s2);connect(si,s2,s);printf("%s\n'\s);)
A、Iamaboy!
B、輸入string2:
C、Iam
D、Iamaboy!
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:暫無(wú)解析
20、下面能正確進(jìn)行字符串賦值操作的語(yǔ)句是______。
A、chars[5]={HABCDE");
B、chars[5]
C、char*s;s="ABCDEF'
D、char*s;suanf("%s",s);
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:暫無(wú)解析
三、選擇題(2分)(本題共20題,每題1.0分,共20
分。)
21、下列程序的輸出結(jié)果是()。main(){inti=lj=2,k=3;if(i++==1&&(++j=
=3IIk++==3))printf(H%d%d%d\n",ij,k);)
A、123
B、234
C、223
D、233
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:本題考查自增運(yùn)算符“什”、邏輯與運(yùn)算符“&&”和邏輯或運(yùn)算符
“II”。自增運(yùn)算符“++”,出現(xiàn)在變量之前(如題中的中++n),表示先使變量的值加
1,再使用變量的值進(jìn)行運(yùn)算:出現(xiàn)在變量之后(如題中的n++),表示先使用變量
的值進(jìn)行運(yùn)算,再使變量的值加1。當(dāng)邏輯與運(yùn)算符“&&”兩邊的運(yùn)算對(duì)象都為真
時(shí),邏輯表達(dá)式的值才為真;當(dāng)邏輯或運(yùn)算符“II”左邊的運(yùn)算對(duì)象為真時(shí),其值就
為真,不用計(jì)算其右邊的運(yùn)算對(duì)象的值.所以根據(jù)運(yùn)算符的優(yōu)先級(jí),題中應(yīng)先計(jì)算
內(nèi)層括號(hào)中的值。++j是先自加后運(yùn)算,因此運(yùn)算時(shí)j的值等于3,所以表達(dá)式++j
=3成立,即表達(dá)式的值為1;由于1與任何數(shù)都為進(jìn)行或(II)運(yùn)算,結(jié)果都為1,
因此k=3;最后計(jì)算“&&”之前的表達(dá)式,i++是先運(yùn)算后自加,因此運(yùn)算時(shí)i為
1,所以i++=l成立,自加1后i=2。if語(yǔ)句的條件為真即力”,所以輸出i、j、k
的值分別是2,3,3o
22、卜列程序的輸出結(jié)果是()。#include<stdio.h>main(){inta=O,i;for(i=l;i<
5;i++){switch(i){case0:case3:a+=l;case1:case2:a+=2;default:a+=3;}
printf("%d';A);)
A、19
B、18
C、6
D、8
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:本題考查switch語(yǔ)句。當(dāng)i=l時(shí),執(zhí)行easel,因?yàn)闆](méi)有遇到break
語(yǔ)句,所以依次往下運(yùn)行,a=a+2=2,a=a+3=5;當(dāng)i=2時(shí),執(zhí)行case2,因?yàn)闆](méi)有
遇到break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=7,a=a+3=10;當(dāng)i=3時(shí),執(zhí)行case
3,a=a+l=ll,因?yàn)闆](méi)有遇到break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=13,
a=a+3=16;當(dāng)i=4時(shí),執(zhí)行default,a=a+3=19,結(jié)束循環(huán)。
23、在C語(yǔ)言中,while和do…while循環(huán)的主要區(qū)別是()。
A、do…while的循環(huán)體不能是復(fù)合語(yǔ)句
do...while允許從循環(huán)體外轉(zhuǎn)到循環(huán)體內(nèi)
C、while的循環(huán)體至少被執(zhí)行一次
D、do…while的循環(huán)體至少被執(zhí)行一次
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:本題考查while和do…while循環(huán)的區(qū)別。while循環(huán)的控制出現(xiàn)在循
環(huán)體之前,只有當(dāng)while后面的表達(dá)式的值為非零時(shí),才可能執(zhí)行循環(huán)體:在
do…while構(gòu)成的循環(huán)體中,總是先執(zhí)行一次循環(huán)體,然后再求表達(dá)式的值,因此
無(wú)論表達(dá)式的值是否為零,循環(huán)體至少要被執(zhí)行一次。
24、若各選項(xiàng)中所用變量已正確定義,fun()函數(shù)中通過(guò)return語(yǔ)句返回一個(gè)函數(shù)
值,下列選項(xiàng)中錯(cuò)誤的程序是()。
A、main().......x=fun(2,10);.......}floatfun(inta,intb){.........}
floatfun(inta,intb){........}main(){.......x=fun(i,j);.......}
C、floatfun(int,int);main(){....x=fun(2J0);.....}floatfun(inta,intb){.....}
D^main(){floatfiin(intI,intj);x=fun(i,j);}floatfiin(inta,intB){}
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:C語(yǔ)言規(guī)定,函數(shù)必須先定義,后調(diào)用(函數(shù)的返回值類型為im或
char時(shí)除外)。在選項(xiàng)A)中,調(diào)用的子函數(shù)在調(diào)用后面定義,所以不正確。在選項(xiàng)
B)、C)中,被調(diào)用函數(shù)在主調(diào)函數(shù)之前定義,再在主函數(shù)中調(diào)用,所以是正確的:
在選項(xiàng)D)中,在主調(diào)函數(shù)中先對(duì)于函數(shù)(10沆向11(血幣110)進(jìn)行了定義,然后進(jìn)行
調(diào)用。
25、判斷char型變量cl是否為小寫字母的正確表達(dá)式為()。
A、'a'V=clV='z'
B、(cl>=A)ll(cl<=z)
C、(,a,=>clIICz,V=cl)
D、(cl>=,a,)&&(cl<=,z,)
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:C語(yǔ)言規(guī)定,字符常量在程序中要用單引號(hào)括起來(lái)。判斷cl是否為
小寫字母的充要條件">二4和clV=,z1用邏輯與(&&)來(lái)表示。A選項(xiàng)的這種
形式在C語(yǔ)言中沒(méi)有,所以選項(xiàng)D)正確.
26、有下列程序:main(){intk=5;while(-k)printf("%dn,k-=3);printf("\n");)執(zhí)行
后的輸出結(jié)果是()。
A、1
B、2
C、4
D、死循環(huán)
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:在程序語(yǔ)句中,k的初始值為5,進(jìn)行第1次while循環(huán)后,k自減I
為4,非0,執(zhí)行循環(huán)體里的printf語(yǔ)句,輸出1,此時(shí)k的值變?yōu)長(zhǎng)程序執(zhí)行第
2次循環(huán)時(shí),k自減I變?yōu)?,為假,退出while循環(huán)語(yǔ)句。所以程序的最后結(jié)果為
lo
27、若函數(shù)調(diào)用時(shí),參數(shù)為基本數(shù)據(jù)類型的變量,下列敘述中正確的是()。
A、實(shí)參與其對(duì)應(yīng)的形參共占存儲(chǔ)單元
B、只有當(dāng)實(shí)參與其對(duì)應(yīng)的形參同名時(shí)才共占存儲(chǔ)單元
C、實(shí)參與其對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元
D、實(shí)參將數(shù)據(jù)傳遞給形參后,立即釋放原先占用的存儲(chǔ)單元
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。函數(shù)的形參是函數(shù)定義時(shí)由用戶定
義的形式上的變量,實(shí)參是函數(shù)調(diào)用時(shí),主調(diào)函數(shù)為被調(diào)函數(shù)提供的原始數(shù)據(jù)。在
函數(shù)調(diào)用時(shí),實(shí)參和其所對(duì)應(yīng)的形參分別占用不同的存儲(chǔ)單元,彼此之間不影響。
28、在C語(yǔ)言程序中,下列說(shuō)法正確的是()。
A、函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套
B、函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套
C、函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套
D、函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:本題考查函數(shù)調(diào)用的基本概念。因?yàn)楹瘮?shù)的結(jié)果是個(gè)未知量,而函數(shù)
定義時(shí)不能使用未知量,所以函數(shù)定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套。
29、下列說(shuō)法中不正確的是()。
A、指針是一個(gè)變量
B、指針中存放的是數(shù)值
C、指針可以進(jìn)行加、減等算術(shù)運(yùn)算
D、指針變量占用存儲(chǔ)空間
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn).析:指針中存放的是變量的地址,指針也可以進(jìn)行增減運(yùn)算,這時(shí)指針移
動(dòng)的最小單位是一個(gè)存儲(chǔ)單元,而不是一個(gè)字節(jié)。
30、若有定義和語(yǔ)句:int**pp,*p,a=20,b=10;
pp=&p;p=&a;p=&b;printf(%d,%d\n",*p,**pp);則輸出結(jié)果是()°
A、20,10
B、20,20
C、10,20
D、10,10
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:本題考查指針變量的賦值。**pp是定義了一個(gè)指向指針的指針變
量,語(yǔ)句pp=&p的意思是將pp指向指針p,*p和**pp都是指針p所指的內(nèi)存空間
的內(nèi)容,即b的值。
31、下列二維數(shù)組的說(shuō)明中,不正確的是()。
A、floata[][4]={0,l,8,5,9};
Bsinta[3]|4];
C、#defineN5
inta[2][9.5];floata[N][3];
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:C語(yǔ)言規(guī)定,對(duì)于二維數(shù)組,只可以省略第一個(gè)方括號(hào)中的常量表達(dá)
式,而不能省略第二個(gè)方括號(hào)中的常量表達(dá)式;二維數(shù)組的一般定義格式是:類型
說(shuō)明符數(shù)組名[常量表達(dá)式][常量表達(dá)式]。
32、若有定義:則對(duì)a數(shù)組的第i行第j列元素的正確引用為()。
A、*(*(a+i)+j)
B、(a+i)[j]
C、*(a+i+j)
D、*(a+i)+j
標(biāo)準(zhǔn)答案:
知識(shí)之解析:1本題考查如何通過(guò)地址來(lái)引用數(shù)組元素。通過(guò)地址來(lái)引用數(shù)組元素的
方法有下列5種:@a|i]|j];@*(a[i]+j);③*(*(a+i)+j);④*(a[i])[j];
(5)*(&a[0][0]+3*i+j)o
33、下列能正確進(jìn)行字符串賦值的是()。
A、chars[5]={nABCDE");
B、chars[5]={,A\,B,,,C,,,D\,E,};
C、char*s;s="ABCDE”;
D、char*s;printf("%s",s);
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:字符串存儲(chǔ)要有結(jié)束符“\0”且要占用一個(gè)空間,選項(xiàng)A)、B的空間不
夠:printf用來(lái)輸出字符,不能輸入字符串.
34、若有說(shuō)明charsl[30]="abc",s2[]="defghi”;,則在使用函數(shù)strcat(sl,s2)后,結(jié)
果是()。
A、si的內(nèi)容更新為abcdefghi
B、si的內(nèi)容更新為defghi'O
C、si的內(nèi)容更新為dcfghiabc'O
D、si的內(nèi)容更新為abcdefghi'O
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:strcat(sl,s2)是把s2字符串連接到si字符串的末尾,要保證si能容
納下連接后的字符串。
35、設(shè)有變量說(shuō)明int(*p)[m],其中的標(biāo)識(shí)符p是()。
A、m個(gè)指向整型變量的指針
B、指向m個(gè)整型變量的指針
C、一個(gè)指向具有m個(gè)整型元素的一維數(shù)組的指針
D、具有m個(gè)指針元素的一維指針數(shù)組,每個(gè)元素都指向整型變量
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:本題考查去向數(shù)組的指針變量的聲明。這里的p表示一個(gè)指向數(shù)組的
指針;*p表不指針p指向地址的內(nèi)容。
36、下列描述中正確的是()。
A、在C語(yǔ)言程序中預(yù)處理是指完成宏替換和文件包含指定的文件的調(diào)用
B、預(yù)處理指令只能位于C源程序文件的首部
C、預(yù)處理命令可以放左程序中的任何位置
D、預(yù)處理命令結(jié)尾需要加分號(hào)
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:本題考查預(yù)處理命令的特點(diǎn),編譯預(yù)處理命令的特點(diǎn):①為了區(qū)別
一般的語(yǔ)句,預(yù)處理命令行都必須以號(hào)開(kāi)始,結(jié)尾不加分號(hào);②預(yù)處理命令可
以放在程序中的任何位置;③在程序中凡是以號(hào)開(kāi)始的語(yǔ)句行都是預(yù)處理命令
行。
37、若有結(jié)構(gòu)體定義:structstufintnum;charsex:intage:|al,a2;則下列語(yǔ)
句中錯(cuò)誤的是()。
A、printf("%d,%c,%d\al);
B、a2.age=al.age;
C、al.age++;
D、al.num=5;
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:題中al和a2兩個(gè)結(jié)構(gòu)體變量名所對(duì)應(yīng)的成員相同,可以與運(yùn)算“++,
相結(jié)合。結(jié)構(gòu)體變量的輸出格式為:printf(”要輸出變量名;%d\t",結(jié)構(gòu)變量
名.要輸出的成員變量名),
38、C語(yǔ)言結(jié)構(gòu)體類型變量在程序執(zhí)行期間()。
A、所有成員一直駐留在內(nèi)存中
B、沒(méi)有成員駐留在內(nèi)存中
C、部分成員駐留在內(nèi)存中
D、只有一個(gè)成員駐留在內(nèi)存中
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:C語(yǔ)言結(jié)構(gòu)體類型變量在程序執(zhí)行期間所有成員一直駐留在內(nèi)存中,
39、在位運(yùn)算中,操作數(shù)每右移兩位,其結(jié)果相當(dāng)于()。
A、操作數(shù)乘以2
B、操作數(shù)除以2
C、操作數(shù)除以4
D、操作數(shù)乘以4
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:在位運(yùn)算中,操作數(shù)每右移兩位,相當(dāng)于在操作數(shù)的左側(cè)添0,最右
面的兩位被移出,即操作數(shù)除以4。
40、在“文件包含”預(yù)處理語(yǔ)句的使用形式中,當(dāng)?shù)姆?11(1?后面的文件名用””,(雙撇
號(hào))括起時(shí),尋找被包含文件的方式是()。
A、直接按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索目錄
B、先在源程序所在的目錄搜索,如沒(méi)找到,再按系統(tǒng)設(shè)定的標(biāo)準(zhǔn)方式搜索
C、僅僅搜索源程序所在目錄
D、僅僅搜索當(dāng)前目錄
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析?:本題考查庫(kù)函數(shù)調(diào)用的知識(shí)點(diǎn)。格式1:include(文件名),預(yù)處理程
序在標(biāo)準(zhǔn)目錄下查找指定的文件:格式2:include”文件名”,預(yù)處理程序首先在
引用被包含文件的源文件所在的目錄下搜索指定的文件,如沒(méi)找到,再按系統(tǒng)指定
的標(biāo)準(zhǔn)目錄搜索。
四、公共基礎(chǔ)填空題(本題共5題,每題1.0分,共5
分。)
41、一棵二叉樹(shù)第六層(根結(jié)點(diǎn)為第一層)的結(jié)點(diǎn)數(shù)最多為【】個(gè)。
標(biāo)準(zhǔn)答案:32
知識(shí)點(diǎn)解析:根據(jù)二叉樹(shù)的性質(zhì):二叉樹(shù)第i(iNl)層上至多有2i-l個(gè)結(jié)點(diǎn),得到第
六層的結(jié)點(diǎn)數(shù)最多是201=32。
42、算法復(fù)雜度生要包:舌時(shí)間復(fù)雜度和【】復(fù)雜度。
標(biāo)準(zhǔn)答案:空間
知識(shí)點(diǎn)解析:程序在計(jì)算機(jī)上運(yùn)行時(shí)所耗費(fèi)的時(shí)間由程序運(yùn)行時(shí)所需輸入的數(shù)據(jù)總
量、對(duì)源程序進(jìn)行編譯所需時(shí)間、計(jì)算機(jī)執(zhí)行每條指令所需時(shí)間、程序中的指令重
復(fù)執(zhí)行的次數(shù)等決定。習(xí)慣上常常把語(yǔ)句重復(fù)執(zhí)行的次數(shù)作為算法運(yùn)行時(shí)間的相對(duì)
量度,稱作算法的時(shí)間復(fù)雜度。算法在運(yùn)行過(guò)程中需輔助存儲(chǔ)空間的大小稱為算法
的空間復(fù)雜度。
43、在進(jìn)行模塊測(cè)試時(shí),要為每個(gè)被測(cè)試的模塊另外設(shè)計(jì)兩類模塊:驅(qū)動(dòng)模塊和承
接模塊(樁模塊),其中【】的作用是將測(cè)試數(shù)據(jù)傳送給被測(cè)試的模塊,并顯示被測(cè)
試模塊所產(chǎn)生的結(jié)果。
標(biāo)準(zhǔn)答案:驅(qū)動(dòng)模塊
知識(shí)點(diǎn)解析:在進(jìn)行模塊測(cè)試時(shí),要為每個(gè)被測(cè)試的模塊另外設(shè)計(jì)兩類模塊:驅(qū)動(dòng)
模塊和承接模塊(樁模塊)。其中,驅(qū)動(dòng)模塊相當(dāng)于被測(cè)試模塊的主程序,它接收測(cè)
試數(shù)據(jù),并傳給被測(cè)試模塊,輸出實(shí)際測(cè)試結(jié)果。承接模塊通常用于代替被測(cè)試模
塊調(diào)用的其他模塊,其作用僅做少量的數(shù)據(jù)操作,是一個(gè)模擬子程序,不必將子模
塊的所有功能帶入。
44、數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程經(jīng)過(guò)人工管理、文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)三個(gè)階段,其
中數(shù)據(jù)獨(dú)立性最高的階段是【】。
標(biāo)準(zhǔn)答案:數(shù)據(jù)庫(kù)系統(tǒng)階段
知識(shí)點(diǎn)解析:在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段
和數(shù)據(jù)庫(kù)系統(tǒng)階段,其中數(shù)據(jù)獨(dú)立性最高的階段是數(shù)據(jù)庫(kù)系統(tǒng)階段。
45、數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu),循環(huán)隊(duì)列屬于【】結(jié)構(gòu)。
標(biāo)準(zhǔn)答案:邏輯
知識(shí)點(diǎn)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是反映數(shù)據(jù)元素之間邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu),它在計(jì)算
機(jī)存儲(chǔ)空間中的存放形式稱為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)(也稱數(shù)據(jù)的物理結(jié)構(gòu))。在數(shù)據(jù)的存
儲(chǔ)結(jié)構(gòu)中,不僅要存放各數(shù)據(jù)元素的信息,還需要存放各數(shù)據(jù)元素之間的前后件關(guān)
系的信息。而循環(huán)隊(duì)列就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成
邏輯上的環(huán)狀空間,供隊(duì)列循環(huán)使用。所以循環(huán)隊(duì)列不需要存放元素之間的前后件
關(guān)系,故它屬于邏輯結(jié)閡。
五、填空題(本題共13題,每題1.0分,共13分。)
46、以下程序運(yùn)行時(shí),若從鍵盤輸入:102030V回車〉,輸出的結(jié)果是【】。
#includc<stdio.h>main(){inti=0,j=0,k=0;scanf("%d%*d%d",&i,&j,
&k);prinff("%d%d%d\n%i,j,k);)
標(biāo)準(zhǔn)答案:10300
知識(shí)點(diǎn)解析:在scanf格式控制符中有一個(gè)“”附加說(shuō)明符,表示跳過(guò)它指定的列
數(shù)。程序中”%d%*d%d”表示首先將10賦給i,然后遇%。d讀入整數(shù)但不賦給任何
變量,最后將讀人的整數(shù)30賦給變量j,變量k并沒(méi)有重新賦值,仍為初始值0。
所以輸出的結(jié)果為10300。
47、以下程序運(yùn)行后的輸出結(jié)果是【】。#include<stdio.h>#defineS(x)4*x*x
+1main(){inti=6j=8;prinff(H%d\n",S(i+j));)
標(biāo)準(zhǔn)答案:81
知識(shí)點(diǎn)解析:帶參數(shù)的宏定義是按#deflne命令行中指定的字符串從左到右進(jìn)行替
換。本題替換后得到:4*i+j*i+j+h代入i,j的值得81。
48>以下程序運(yùn)行后的輸出結(jié)果是[]o#include<stdio,h>main(){int
a=3,b=4,c=5,t=99;if(b<a&&a<c)t=a;a=c;c=t;if(a<e&&b<c)t=b;b=a;a=t;
printf("%d%d%d\n',,a,b,e);)
標(biāo)準(zhǔn)答案:4599
知識(shí)點(diǎn)解析:要注意每條證語(yǔ)句后面是三條語(yǔ)句,而不是一條語(yǔ)句。執(zhí)行第一條if
語(yǔ)句時(shí),條件表達(dá)式不成立,執(zhí)行a二c;c=l;,此時(shí)a=5,c=99;執(zhí)行第二條if語(yǔ)
句時(shí),條件表達(dá)式成立,執(zhí)行t=b;b=a;a=t;交換a,b的值,輸出結(jié)果為4,5
和99。
49、已知字符,A,的ASCII代碼值為65,以下程序運(yùn)行時(shí)若從鍵盤輸入:B33〈回
車〉,則輸出結(jié)果是【】c#inchide<stdio.h>main(){chara,h;a=
getchar();seanf("%d",&b);a=a-'A'+'0';b=b*2;prinff("%c%c\n",a,b);)
標(biāo)準(zhǔn)答案:1B
知識(shí)點(diǎn)解析:本題輸入B33,字符,B,被輸入給字符變量a,33賦給b,執(zhí)行
a=a-'A'+'O';得到a的值T;執(zhí)行b=b*2;得到b值66,最后以字符型輸出為1
Bo
50、以下程序運(yùn)行后的輸出結(jié)果是[]#include<stdio,h>fun(inta){intb=0;
staticintc=3;b++;c++;return(a+b+c);}main()inti,a=5;for(i=0;i<3;i++)
prinff("%d%d",i,fun(a));printf("\nu);}
標(biāo)準(zhǔn)答案:10111212
知識(shí)點(diǎn)解析:用static關(guān)鍵字聲明的變量稱為靜態(tài)局部變量。靜態(tài)局部變量只在編
譯時(shí)賦一次初值,以后再次調(diào)用函數(shù)時(shí)不再重新賦初值,而是保留上次函數(shù)調(diào)用結(jié)
束時(shí)的值。程序中的變量c為靜態(tài)變量,當(dāng)再次調(diào)用fun函數(shù)時(shí),變量c不再被賦
初值,變量c的值為上次調(diào)用fun函數(shù)時(shí)所保留下來(lái)的值,具體在程序運(yùn)行過(guò)程中
的體現(xiàn)如下:當(dāng)i=0時(shí),第一次調(diào)用fun(5),這時(shí)a=5,b=0,c=3,執(zhí)行b++,
C++,得到b=l,c=4,則a+b+c=10,返回主函數(shù)輸出010;當(dāng)i=l時(shí),第二次調(diào)用
fun(5)>這時(shí)a=5,b=0,c=4,執(zhí)行b++,C++,得到b=l,c=5,則a+b+c=ll,返
回主函數(shù)輸出111;當(dāng)i=2時(shí),第三次調(diào)用fun(5),這時(shí)a=5,b=0,c=5,執(zhí)行
b++,C++,得到b=l,c=6,則a+b+c=12,返回主函數(shù)輸出212;當(dāng)i=3時(shí),循環(huán)
結(jié)束,所以輸出結(jié)果為:OIOH1212o
51、以下程序中,fun函數(shù)的功能是求3行4列二維數(shù)組每行元素中的最大值。請(qǐng)
填空。#inckide<stdio,h>voidfun(int,int,int(*)[4],int*);main(){inta[3][4]=
{{12,41,36,28},{19,33,15,27},{3,27,19,1}),b[3],i;fun(3,4,a,b);for(i=0;i<3;i++)
printf("%4d",b[i|);prinff("\n");}voidfun(intm,intn,intar[][4],int*br))intij,x;
for(i=0;i<m;i++){x=ar[i][0]fbr(j=0;j<n;j++)if(x<ar[i][j])x=ar[i][j];
[1=x;}}
標(biāo)準(zhǔn)答案:br[i]或*(br+i)
知識(shí)點(diǎn)解析:程序中的數(shù)組a是一個(gè)3行4列的二維數(shù)組,一維數(shù)組b用于存放每
行的最大數(shù)。在函數(shù)fun中,通過(guò)二重for循環(huán)求每行的最大數(shù),外層for循環(huán)用
于控制行數(shù),內(nèi)層for循環(huán)用于控制列數(shù),當(dāng)外層循環(huán)執(zhí)行一次時(shí),內(nèi)層循環(huán)則從
一行的4個(gè)數(shù)中找出最大數(shù)x,然后將最大值x賦給數(shù)組br,故空格處應(yīng)填br[i]或
*(br+i)o
52、有下面的程序:#include<stdio,h>main(){enumteam
{my,your=4,his,her=his+10};prinff(H%d%d%d%d\n*',my,your,his,her);此程序的輸
出結(jié)果是[]oA)0123B)04010C)04515D)14515
標(biāo)準(zhǔn)答案:c
知識(shí)點(diǎn)腦析:枚舉的語(yǔ)法規(guī)定,當(dāng)枚舉元素沒(méi)有賦值時(shí),如果前面沒(méi)有其他枚舉元
素,其值為0;如果前面有其他枚舉元素,其值為前一個(gè)元素的值加1,所以his
的值為5,her的值為15。
53^以下程序運(yùn)行后的輸出結(jié)果是【】。#inckide<stdio,h>#include<stating,h
>voidfun(char*s,intk){inti;for(i=p;i<k-l;i++)s[i]=s[i+2];)main(){chars
[]="abedefg";fun(s,3,strlen(s));puts(s);}
標(biāo)準(zhǔn)答案:abcfg
知識(shí)點(diǎn)解析:fun函數(shù)中for循環(huán)語(yǔ)句的作用是將s所指的字符串中從第5個(gè)字符到
第7個(gè)字符依次向前移動(dòng)兩個(gè)位置。輸出結(jié)果為abcfg。
54、以下程序運(yùn)行后的輸出結(jié)果是[]。#include<stdio,h>#include<string,h
>main(){charch[]="abc".,x[3][4]:inti:for(i=0;i<3:i++)strcpy(x[i],ch):for(i=0;i
<3:i++)printf("%sM,&x[i][i]);printf(M\n")}
標(biāo)準(zhǔn)答案:abcbcc
知識(shí)點(diǎn)解析:for循環(huán)用strcpy函數(shù)將字符數(shù)組ch的值“abc”,分別復(fù)制給二維數(shù)組
x的每一行,然后通過(guò)for循環(huán)先后打印出以x⑼⑼,x[l][l],x⑵⑵開(kāi)頭的字符
串“abe”,“be”,“c“,所以輸出結(jié)果為:abcbcco
55、以F程序運(yùn)行后輸出結(jié)果是【】。#include<stdio,h>voidswap(inty)
{intt;t=x;x=y;y=t:printf(n%d%dH,x,y);}main(){ihta=3,b=4:swap(a,b);
prinff(n%d%d",a,b);)
標(biāo)準(zhǔn)答案:4334
知識(shí)點(diǎn)解析:程序?qū)⒆兞縜,b的值傳給函數(shù)sw即的形參x,y,并在函數(shù)中kx,
y的值進(jìn)行交換,所以在函數(shù)swap中輸出x,y的值4,3,由于c程序的函數(shù)是僧
傳遞,實(shí)參a,b的值不會(huì)隨形參x,y的改變而改變,所以在主函數(shù)中輸出的a,
b的值為3,4。
56、以下程序運(yùn)行后的輸出結(jié)果是[1o#include<stdio,h>main()charcl,c2;
fbr(cl='0;c2='9';cl<c2;cl++,c2-)printf(n%c%cH,cl,c2);printf("\n");)
標(biāo)準(zhǔn)答案:918273645
知識(shí)點(diǎn)解析:程序通過(guò)for循環(huán)將字符U?9從前向后,同時(shí)從后向前依次輸出,
所以輸出結(jié)果為:0918273645。
57、以下程序運(yùn)行后輸出結(jié)果是[]o#include<stdio,h>main(){inta,b,c;
a=10;b:20;c=(a%b<1)II(a/b>1);printf("%d%d%d\n",a,b,c);}
標(biāo)準(zhǔn)答案:10200
知識(shí)點(diǎn)解析:程序中(2%6<1)||(3/6>1)的運(yùn)算順序?yàn)橄人憷ㄌ?hào)-算術(shù)運(yùn)算符-關(guān)系
運(yùn)算符一邏輯運(yùn)算符。首先計(jì)算a%b=10,a/b=0,因?yàn)閍%bV1為假(0),a/b>l也
為假(0),所以整個(gè)表達(dá)式的結(jié)果為假(0),最后輸出a,b,c的值為10200。
58、以下程序中函數(shù)huiwen的功能是檢查一個(gè)字符串是否是回文,當(dāng)字符串是回
文時(shí),函數(shù)返回字符串“yes!”,否則函數(shù)返回字符串“no!”,并在主函數(shù)中輸出。所
謂回文即正向與反向的嫁寫都一樣,例如:adsdao請(qǐng)?zhí)羁铡?include<stdio,h>
#include<string,h>char*huiwen(char*str){char*pl,*p2;inti,l=0;pl=slr;p2=
[1;for(i=0;i<=strlen(str)/2;i++)if(*pl++!=*p2—){t=1;breakif([])
return("yes!");elsereturn(nno!");}main()(charstr[50];printf("laput:");scanf;"%
s”,str);printf("%s\n",[]);
標(biāo)準(zhǔn)答案:p1+(stfien(str)-1)或str+(strlen(str)-1)t==0或!thuiwen(str)或(strlen(str)-
l)+pl或(stden(str)-l)+str
知識(shí)點(diǎn)解析:回文字符串是指正向與反向拼寫都一樣。由huiwen函數(shù)可知,第三
處應(yīng)該填寫調(diào)用函數(shù)huiwen(str)。在函數(shù)huiwen中,執(zhí)行P1=str;使pl指向字符
串str中第一個(gè)字符的地址,則第一處應(yīng)該使p2指句字符串str中最后-一個(gè)字符的
地址,故填pl+(sklen(su■)-l)或str+(slrlen(slr)-l)。本題要求如果是回文,則返回
"yes!%否則,返回“no!”,故當(dāng)1=0時(shí),說(shuō)明字符串sir為回文,所以第二處應(yīng)填
t==0或!t。
國(guó)家二級(jí)(C語(yǔ)言)筆試模擬試卷第2
一、公共基礎(chǔ)選擇題(本題共10題,每題7.0分,共
10分。)
1、十進(jìn)制數(shù)555的十六進(jìn)制數(shù)表示形式為o
A、220
B、22A
C、22B
D、22C
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:本題考查不同進(jìn)制數(shù)間的轉(zhuǎn)換,(555)10=(1000101011)2=(22B)16。
2、計(jì)算機(jī)的存儲(chǔ)器完整的應(yīng)包括o
A、內(nèi)存儲(chǔ)器與外存儲(chǔ)器
B、磁盤、磁帶與光盤
C、RAM與ROM
D、軟盤與硬盤
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:存儲(chǔ)器包存內(nèi)部存儲(chǔ)器和外部存儲(chǔ)器,而選項(xiàng)B、D只能統(tǒng)稱為外部
存儲(chǔ)器,選項(xiàng)C屬于內(nèi)部存儲(chǔ)器。
3、在具有n(n>l)個(gè)結(jié)點(diǎn)的完全二叉樹(shù)中,結(jié)點(diǎn)i(2i>n)的左孩子結(jié)點(diǎn)是_____。
A、2i
B、2i+l
C、不存在
D、2i-l
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:完全二叉樹(shù)中葉子結(jié)點(diǎn)一定在最后一層或兩層。n個(gè)結(jié)點(diǎn)的完全二叉
樹(shù)中,其層數(shù)最多為log2n+l。結(jié)點(diǎn)i與雙親的關(guān)系是i*時(shí),i的雙親是
trunc(i/2)o結(jié)點(diǎn)i與子女的關(guān)系是:若2ign,則i的左孩子是標(biāo)號(hào)2i的結(jié)點(diǎn),若2i
>n,則不存在左孩子;若2i+lSn,則i的右孩子是標(biāo)號(hào)2i+l的結(jié)點(diǎn),若2i+l>
n,則該結(jié)點(diǎn)不存在右孩子。
4、結(jié)構(gòu)化程序流程圖中一般包含3種基本結(jié)構(gòu)。下述結(jié)構(gòu)中,不屬于其基
本結(jié)構(gòu)。
A、順序結(jié)構(gòu)
B、嵌套結(jié)構(gòu)
C、循環(huán)結(jié)構(gòu)
D、條件結(jié)構(gòu)
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:結(jié)構(gòu)化程序流程圖中包括順序結(jié)構(gòu)、條件結(jié)構(gòu)和循環(huán)結(jié)構(gòu)3種基本結(jié)
構(gòu),而不包含嵌套結(jié)構(gòu)。
5、計(jì)算機(jī)中,能夠用來(lái)與外存交換信息的是o
A、鍵盤
B、RAM
C、顯示器
D、ROM
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:RAM中存儲(chǔ)著當(dāng)前使用的程序、數(shù)據(jù)、中間結(jié)果和與外存交換的數(shù)
據(jù),CPU根據(jù)需要可以直接讀/寫RAM中的內(nèi)容。
6、堆排序是一種排序。
A^插入
B、選擇
C、交換
D、歸并
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:堆排序是一種選擇排序。選擇排序有直接選擇排序和堆排序兩種。
7、瀑布模型適合于o
A、大型軟件系統(tǒng)開(kāi)發(fā)
B、中型軟件系統(tǒng)開(kāi)發(fā)
C、小型軟件系統(tǒng)開(kāi)發(fā)
D、大、中、小型軟件系統(tǒng)開(kāi)發(fā)
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:根據(jù)瀑布模型的特點(diǎn)(連續(xù)無(wú)反饋)是對(duì)于每一個(gè)階段來(lái)說(shuō),前一個(gè)階
段工作的正確無(wú)誤是至關(guān)重要的。因此,瀑布模型不能很好地適應(yīng)那些需求不易確
定和多變的軟件項(xiàng)目的開(kāi)發(fā)。由于大項(xiàng)目在軟件開(kāi)發(fā)的前期階段,人們很難詳細(xì)地
了解系統(tǒng)的許多細(xì)節(jié),從而在項(xiàng)目進(jìn)行過(guò)程中常會(huì)出現(xiàn)需求變化。因此,瀑布模型
適用于小系統(tǒng)開(kāi)發(fā)項(xiàng)目,而不適用于大、中型軟件系統(tǒng)開(kāi)發(fā).
8、在多媒體計(jì)算機(jī)系統(tǒng)中,不能存儲(chǔ)多媒體信息的是。
A、光盤
B、磁盤
C、磁帶
D、光纜
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:光纜是多媒體信息的傳輸通道,不能存儲(chǔ)多媒體信息。
9、對(duì)一個(gè)關(guān)系投影操作以后,新關(guān)系的元組個(gè)數(shù)原來(lái)關(guān)系的元組個(gè)數(shù)。
A、小于
B、小于或等于
C、等于
D、大于
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn).析:投影操作是從關(guān)系中選擇某些列,投影后消去了某些屬性,就可能出
現(xiàn)重復(fù)元組,根據(jù)關(guān)系的性質(zhì),應(yīng)消去這些完全相同的元組。這樣使得新關(guān)系的元
組數(shù)小于或等于原來(lái)的元組數(shù)。
10、下列關(guān)于“數(shù)據(jù)庫(kù)系統(tǒng)(DBS)”的敘述中,正確的一條是______o
A、DBS是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)后的系統(tǒng)構(gòu)成
B、DBS是幫助用戶建立、使用和管理數(shù)據(jù)庫(kù)的一種計(jì)算機(jī)軟件
C、DBS是用戶建立的若干數(shù)據(jù)庫(kù)文件的集合
D、DBS是一種新穎的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)
標(biāo)準(zhǔn)答案:I
知識(shí)點(diǎn)解析:數(shù)據(jù)庫(kù)系統(tǒng)DBS是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)后的系統(tǒng)構(gòu)成。數(shù)
據(jù)庫(kù)系統(tǒng)是一種帶有數(shù)據(jù)庫(kù)的綜合系統(tǒng),它包括硬件、軟件(如操作系統(tǒng)、數(shù)據(jù)庫(kù)
管理系統(tǒng)、編譯系統(tǒng)及應(yīng)用開(kāi)發(fā)工具軟件等)、數(shù)據(jù)庫(kù)以及開(kāi)發(fā)者和使用者。
二、選擇題(1分)(本題共70題,每題1.0分,共70
分。)
11、以下運(yùn)算符中優(yōu)先級(jí)最高的運(yùn)算符是_____O
A^++
B、?:
C、!二
D、&&
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:四個(gè)運(yùn)算符的優(yōu)先級(jí)由高到低依次是:++,&&,?:,!=。
12、下列4組選項(xiàng)中,均不是C語(yǔ)言關(guān)鍵字的選項(xiàng)是。
A、definesumtype
B、getccharprintf
C>includescanfcase
D、whilegopow
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:本題各選項(xiàng)中的關(guān)鍵字只有三個(gè):char,case,whileo
13、已知各變量的類型說(shuō)明如下:intk,a,b;unsignedlongw=5;doublex=142;則以
下不符合c語(yǔ)言語(yǔ)法的表達(dá)式是o
A、x%(-3)
B、w+=-2
C>k=(a=2,b=3,a+b)
D、a+=a-=(b=4)*(a=3)
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:求余運(yùn)算符“%”為雙目運(yùn)算符,要求兩個(gè)操作數(shù)都是整型。
14、表達(dá)式18/4*sqrt(4.D)/8值的數(shù)據(jù)類型為,
A^int
B、float
C、double
D^不確定
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:根據(jù)數(shù)據(jù)類型轉(zhuǎn)換時(shí)的就長(zhǎng)轉(zhuǎn)換規(guī)則,可以得到最后的結(jié)果應(yīng)是實(shí)
型。
15、設(shè)a=12,a定義為整型變量。表達(dá)式a+=a-=a*二a的值為。
A、12
B、144
C、0
D、132
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:表達(dá)式a+二a-=a*=a的運(yùn)算方向是自右向左,即先計(jì)算a*=a,a值為
a*a=144,再計(jì)算a-=a,a值為a-a=O,再計(jì)算計(jì)a+=a,故表達(dá)式和a的值都為
a+a=0o
16、在C語(yǔ)言中,合法的字符常量是_____。
A、)081
B、,\x43,
C、,ab,
D、\0
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:選項(xiàng)A錯(cuò)在表示轉(zhuǎn)義字符的三位八進(jìn)制數(shù)中不能出現(xiàn)8,選項(xiàng)C錯(cuò)
在字符串要用雙引號(hào)括起,選項(xiàng)D錯(cuò)在單個(gè)字符應(yīng)用單引號(hào)括起。選項(xiàng)B表示用
兩位16進(jìn)制數(shù)代表轉(zhuǎn)義字符。
17、以下程序片段的輸出結(jié)果是______ocharstr[]=,'abc\n\012\\Vn,;
printf("%d",strlen(slr));
A、4
B、5
C、6
D、7
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:abc后的四個(gè)字符都是由反斜線引出的轉(zhuǎn)義字符,\n是換行符,\012
也是換行符,\\表示反斜線本身,'”表示雙引號(hào),因此,一共是7個(gè)字符。
18、假定有以下變量定義,則能使值為3的表達(dá)式是ointk=7,x=12;
A、x%=(k%=5)
B、x%=(k-k%5)
C、x%=k-k%5
D、(x%=k)-(k%=5)
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:選項(xiàng)A,(k%=5)=2,(x%=2)=0;選項(xiàng)B,(k-k%5)=7-2=5,
(x%=5)=2:選項(xiàng)C,(k%5)=2,k-2=7-2=5,(x%5)=2;選項(xiàng)D,(x%=7)=5,
(k%=5)=2,5-2=3o
19、下面程序運(yùn)行的結(jié)果是______omain(){intx,y,z;x=O;y=z=-l;x+=-z—y;
printf("x=%d\n",x);}
A、x=4
B、x=0
C、x=2
D、x=3
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:表達(dá)式“x+=?z---y”等價(jià)于“x=x+(-z-(-(-y)))=0+(1-(-1))=2"。
20、下面語(yǔ)句中不能定義一個(gè)數(shù)組,元素值依次分別為1,1,1,0,0的是
A、staticinta|5]={1,1,1,0,0);
B、staticinta[5]={1,1,1);
C^staticinta[]=(1,1,1,0,0);
D、staticinta[5]={1*2,0*3};
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:不可能用表達(dá)式的方式來(lái)給數(shù)組元素一一賦值。
三、選擇題(2分)(本題共30題,每題分,共30
分。)
21、設(shè)a、b、c、d、m、n均為int型變量,且a=5、b=6>c=7>d=8、m=2、n=2,
則邏輯表達(dá)式(m=a>b)&&(n=c>d)運(yùn)算后,n的值為。
A、0
B、1
C、2
D、3
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:C語(yǔ)言中比較表達(dá)式的運(yùn)算結(jié)果為0或1。0代表不成立,1表示成
立。
22、以卜,程序的輸出結(jié)果是?main(){ininum=O;while(num<=2){num++;
printf("%d\n",num);})
A、1234
B、123
C、I2
D、1
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:while的執(zhí)行過(guò)程是:先計(jì)算條件表達(dá)式的值,若成立則執(zhí)行循環(huán)
體,重復(fù)上述過(guò)程,直到條件表達(dá)式的值為“假”(值為零)時(shí),退出循環(huán),并轉(zhuǎn)下-
語(yǔ)句去執(zhí)行。本題在輸出num的值為3之后,再判斷while的循環(huán)條件3V=2,不
成立,所以不再輸出num的值,故本題的答案選B。
23、下面的關(guān)鍵字中,不能夠從循環(huán)體中跳到循環(huán)體外的是_____o
A、goto
B、break
C^return
D、continue
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析;在C語(yǔ)言中,可以用break語(yǔ)句和continue語(yǔ)句跳出木層循環(huán)和結(jié)束
本次循環(huán)。goto語(yǔ)句可跳出多層循環(huán),如果在函數(shù)的循環(huán)體內(nèi)使用return語(yǔ)句,就
會(huì)直接結(jié)束循環(huán)返回函數(shù)值。
24、以下各選項(xiàng)企圖說(shuō)明一種新的類型名,其中正確的是______o
A、typedefvlint;
B、typedefv2=int;
C^typedefintv3;
D、typedefv4:int
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:C語(yǔ)言中可以使用typedef來(lái)重新定義已有的數(shù)據(jù)類型,相當(dāng)于為數(shù)
據(jù)類型取個(gè)別名。
25、為了避免嵌套的if-else的二義性,C語(yǔ)言規(guī)定:else與配對(duì)。
A、縮排位置相同的if
B、其之前最近的if
C、其之后最近的if
D、同一行上的if
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:在if語(yǔ)句中乂包含一個(gè)或多個(gè)if語(yǔ)句稱為if語(yǔ)句的嵌套。應(yīng)當(dāng)注意
if與else的配對(duì)關(guān)系,在C語(yǔ)言中,從最內(nèi)層開(kāi)始,else總是與它上面最近的(未
曾配對(duì)的)if配對(duì)。
26、在調(diào)用函數(shù)時(shí),如果實(shí)參是簡(jiǎn)單變量,它與對(duì)應(yīng)形參之間的數(shù)據(jù)傳遞方式是
A、地址傳遞
B、單向值傳遞
C、由實(shí)參傳紿形,再由形參傳回實(shí)參
D、傳遞方式由用戶指定
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)常析:C語(yǔ)言函數(shù)中的參數(shù)傳遞方式有傳值與傳址兩種方式,傳值方式是指
將實(shí)參的值復(fù)制一份傳遞給形參,面?zhèn)髦贩绞绞侵笇?shí)參的變量地址傳遞給形參,
也就是實(shí)參的引用。
27、以下函數(shù)值的類型是_____ofun(floatx){floaty;y=3*x-4;returny;}
A、int
B、不確定
C、void
D^float
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:C語(yǔ)言中如果函數(shù)前不加任何數(shù)據(jù)類型時(shí),默認(rèn)函數(shù)的類型為整型,
函數(shù)的類型就是函數(shù)返同值的類型。
28、以下選項(xiàng)中,非法的字符常量是。
A、"
B、,\17,
C、\n
D、'\xaa'
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:C語(yǔ)言中字符常量是以單引號(hào)括起來(lái)的單個(gè)字符,或?yàn)橐耘c三位
八進(jìn)制數(shù)值或兩位十六進(jìn)制數(shù)值代替單個(gè)字符.
29、以下程序的輸出結(jié)果是o#include<stdio.h>main(){inta=200;#define
a100printf("%dd",a);#undefaprintf("%d';a);}
A、200100
B、100100
C、100200
D、200200
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:#define宏名的有效范圍為定義命令之后到本源文件結(jié)束,可以在程
序中使用#undef命令終上宏定義的作用域。本題由于#undef的作用,使a的作用范
圍在#definea100到#undefa之間,故答案為C。
30、若有說(shuō)明inti,j=2,*p=&i;,則能完成i=j賦值功能的語(yǔ)句是。
A^i=*p;
B、*p=*&j;
C^i=&j;
D、i=**p;
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)3析:指針是一種用來(lái)存放變量地址的特殊變量。本題中指針變量p用于存
放整型變量i的地址,改變*p的值即為改變i的值。乂因?yàn)椤?"和“*”兩個(gè)運(yùn)算符的
優(yōu)先級(jí)別相同,按自右而左的方向結(jié)合,所以*&j先進(jìn)行&j運(yùn)算,得j的地址,再
進(jìn)行*迄算,取所得地址里面的值,故*&j與j等價(jià)。
31、假定int類型變量占用兩個(gè)字節(jié),若有定義:intxU。尸{。,2,4};,則數(shù)組x在內(nèi)
存中所占字節(jié)數(shù)是o
A、3
B、6
C、10
D、20
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:當(dāng)數(shù)組定義后,系統(tǒng)就為其分配內(nèi)存空間,而不論其中有沒(méi)有內(nèi)容。
因此,本題中數(shù)組x[10]不論是否為其元素初始化,它所分配的存儲(chǔ)空間仍為
2*10=20個(gè)字節(jié)。
32、執(zhí)行以下的程序段后,m的值是ointa[2][3]={{1,2,3),(4,5,6));intm,*p;
p=&a[0][0];m=p[4];
A、4
B、5
C、3
D、不確定
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:程序中定義了一個(gè)指向整型變量的指針變量,并對(duì)其賦值為二維整型
數(shù)組a的首元素的地址,P[4]等價(jià)于*(p+4),即二維數(shù)組a中第四個(gè)元素的值,而a
是一個(gè)2*3的二維數(shù)組,其第四個(gè)元素為即5。
33、以下程序的輸出結(jié)果是_____omain(){inti,a[10];for(i=9;i>=0;i-)a[i]=10-i;
printf(,,%d%d%dH,a[2],a[5],a[8]);}
A、258
B、741
C、852
D、369
標(biāo)準(zhǔn)答案:4
知識(shí)點(diǎn)解析:在本題運(yùn)行時(shí)主要注意的是當(dāng)i=9時(shí),a[i]=10-9=l;i=8時(shí),a[i]=10-
8=2;i=7時(shí),a[i]=10-7=3;.......依此類推,直到i=0時(shí),a[i]=10-0=10:此時(shí),i的
值已變?yōu)?1,判斷for的循環(huán)條件,不成立,然后輸出a⑵,a[5],a⑻分x偽8,5,
20
34、下面程序的輸出結(jié)果為?#include<slring.h>main(){char
pI|7]="abc",p2||="ABC",str|50]=nxyz";strcpy(str,strcat(pI,p2));printf(n%s",str);)
A^xyzabcABC
B、abcABC
C、xyzabc
D、xyzABC
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:strcpy(strl,si):作用是將字符串si拷貝到字符數(shù)組strl中去。
strcat(字符數(shù)組1,字符數(shù)組2):把字符串2接到字符串1的后面,結(jié)果放在字符
數(shù)組1中,函數(shù)調(diào)用后返回字符數(shù)組1的地址。本題定義了三個(gè)字符數(shù)組
pl,p2,slr,strcat(pl,p2)函數(shù)的作用是將字符串?dāng)?shù)組p2接到字符串pl的后面,結(jié)果
放在字符數(shù)組pl,再通過(guò)strcpy。函數(shù)將該字符串拷貝到str數(shù)組中,原str數(shù)組中
的字符串xyz被覆蓋,因此打印輸出字符串str即可得到abcABCo
35、以下數(shù)組定義中不正確的是______o
A、inta[2][3];
intb[][3]={0,l,2};
C.intc[100][100]={0);
D.intd[3][]={{l,2),{l,2,3),{l,2,3,4));
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:一維數(shù)組的定義方式為:類型說(shuō)明符數(shù)組名[常量表達(dá)式];選項(xiàng)A
符合此定義形式,正確;C語(yǔ)言中多維數(shù)組賦初值時(shí)可以部分賦值,也可以不指定
除第一維以外的其他維的大小,故選項(xiàng)C正確;另外,如果對(duì)全部數(shù)組元素都賦
初值,則定義數(shù)組時(shí)對(duì)第一維的長(zhǎng)度可以不指定,但第二維的長(zhǎng)度不能省,所以選
項(xiàng)B正確,而選項(xiàng)D是錯(cuò)誤的。
36、以下程序的輸出結(jié)果是_____omain(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7));
printf(',%d%d%d%d\n,,,a[O][3],a[1][2],a[2][1];a[3][0]);}
A、650
B、1470
C、5430
D、輸出值不定
標(biāo)準(zhǔn)答案:1
知識(shí)點(diǎn)解析:對(duì)未給出初始值的整數(shù)數(shù)組元素,被默認(rèn)初始化為零。
37、在說(shuō)明語(yǔ)句int旺();中,標(biāo)識(shí)符f代表的是o
A、一個(gè)用于指向整型數(shù)據(jù)的指針變量
B、一個(gè)用于指向—維數(shù)組的行指針
C、一個(gè)用于指向函數(shù)的指針變量
D、一個(gè)返回值為指針型的函數(shù)名
標(biāo)準(zhǔn)答案:8
知識(shí)點(diǎn)解析:帶回指針值的函數(shù),其一般定義形式為:類型標(biāo)識(shí)符*函數(shù)名(參數(shù)
表);例如,int*f(x,y);其中,f是函數(shù)名,調(diào)用它以后能得到一個(gè)指向整型數(shù)據(jù)的
指針(地址),x,y是函數(shù)f的形參。在f的兩側(cè)分別為*運(yùn)算符和()預(yù)算符,而()優(yōu)先
級(jí)高于*,因此「先與()結(jié)合,顯然是函數(shù)形式。這個(gè)函數(shù)前面有一個(gè)表示此函
數(shù)是指針型函數(shù)(函數(shù)值是指針)。前面的血表示返回的指針指向整型變量。
38、以下程序的輸出結(jié)果是______omain(){charst[20]="hello\0\t\V';
printf("%d%d\n",strlen(st),sizeof(st));}
A、99
B、520
C、1320
D、2020
標(biāo)準(zhǔn)答案:2
知識(shí)點(diǎn)解析:C語(yǔ)言中字符串是以'(T字符結(jié)束的,且strlen()函數(shù)計(jì)算的是、(T字符
前的所有字符的個(gè)數(shù)。本題中strlen(sl)應(yīng)為5。數(shù)組定義以后系統(tǒng)就為其分配相應(yīng)
大小的內(nèi)存空間,而不論其中有沒(méi)有內(nèi)容。sizeof()函數(shù)是計(jì)算變量或數(shù)組的所分
配到的內(nèi)存空間的大小。所以本題的sizeof(st)為20o
39、以下程序運(yùn)行后的輸出結(jié)果是-intd=1;fnn(in
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年重慶市中考英語(yǔ)試卷(含解析)
- 2026年人教版高考英語(yǔ)一輪總復(fù)習(xí)綜合模擬檢測(cè)試卷及答案(五)
- 棉花病害防治課件
- 放療科普課件
- 2025年消防知識(shí)競(jìng)賽題庫(kù)及答案(共130題)
- 2026屆高考政治一輪復(fù)習(xí):統(tǒng)編版必修2《經(jīng)濟(jì)與社會(huì)》考點(diǎn)知識(shí)提綱
- 執(zhí)行和解協(xié)議(模版)
- 2025年山東省高考地理試卷(含答案與解析)
- 2026年中考語(yǔ)文專項(xiàng)復(fù)習(xí):名著閱讀 練習(xí)題匯編(含答案)
- 2026高考生物一輪復(fù)習(xí)講義:課時(shí)練51 植物細(xì)胞工程(含答案)
- 《畜牧獸醫(yī)》考試復(fù)習(xí)題庫(kù)(160題)
- 第六章病毒的持續(xù)性感染
- YS/T 682-2008釕粉
- GB/T 35778-2017企業(yè)標(biāo)準(zhǔn)化工作指南
- 羽毛球校本教材
- GB/T 15601-2013管法蘭用金屬包覆墊片
- 2023年水利行業(yè)職業(yè)技能鑒定職業(yè)道德題庫(kù)
- 教育培訓(xùn)機(jī)構(gòu)校長(zhǎng)薪酬績(jī)效
- 賈俊平《統(tǒng)計(jì)學(xué)》第7版復(fù)習(xí)筆記和課后習(xí)題答案+習(xí)題及詳解
- 二年級(jí)下冊(cè)認(rèn)識(shí)方向練習(xí)題
- SCB系列干式變壓器使用說(shuō)明書
評(píng)論
0/150
提交評(píng)論