




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第二章:C語言概述
1.如下(劭是不正確的轉(zhuǎn)義字符。
A.'\\'B.'\"C.'020'D.''0'
2.組成C語言程序的基本單位是(?).
A.函數(shù)B.變量C.于程序D.語句
3.C語言要求:在一個源程序中,main()函數(shù)的位置(C)。
A.必須在最開始B.必須在系統(tǒng)調(diào)用的庫函數(shù)背面
C.能夠任意D.必須在最后
4.為求出return語句返PI計(jì)算100!的成果,此困數(shù)的類型闡明應(yīng)為(D)。
A.intB.longC.unsigncdlongD.選項(xiàng)A,B,C.都不對:ABC的數(shù)值范圍都不夠
5.C語言中的標(biāo)識符只能由字母、數(shù)字和下劃線3種字符組成,且第一個字符(C)。
A.必須為字母
B.必須為下劃線
C.必須為字母或下劃線
D.能夠是字母、數(shù)字和下劃線中的任意一個
6.如卜.選項(xiàng)中合法的用戶標(biāo)識符是(D)。
A.intB.a#C.5memD._243
7.C語言中的簡單數(shù)據(jù)類型有(C)。
A.整型、實(shí)型、邏輯型B.整型、字符型、邏輯型
C.整型、實(shí)型、字符型D.整型、實(shí)型、字符型、邏輯型
8.如下選項(xiàng)中不正確的整型常量是(B)。
A.-37B.32,758C.326D.6
9.如下選項(xiàng)中合法的C語言字符常量是(A)。
A.'\t'B.'A"C.67D.A
10.如下選項(xiàng)中不正確的實(shí)型常量是(A)。
A.123B.le4C.3.640E-1D.0.35
11.如下選項(xiàng)中合法的C語言賦值語句是(D).
A.a=b=34B.a=34,b=34C.—i;D.m=(int)(x+y);
12.設(shè)int類型的數(shù)據(jù)長度為兩個字節(jié),則unsignedint類型數(shù)據(jù)的取值范圍是(B)。
A.0?255B.0?65535C.-32768?32767D.-256?255
第三章:運(yùn)算符與體現(xiàn)式(原先給的答案諸多錯誤)
I.如下論述中不正確的是(B)。
A.在C程序中,%是只能用于整數(shù)運(yùn)算的運(yùn)算符
B.在C程序中,無論整數(shù)還是實(shí)數(shù),都能準(zhǔn)確無誤地表示
C.若a是實(shí)型變量,C程序中a=20是正確的,因此實(shí)型變量允許被整型數(shù)賦值
D.以上表述都是正確的
2.若變量x、y、z均為double類型且已正確賦值,不能正確表示x/yXz的C語言體現(xiàn)式是(A)。
A.x/y*zB.x*(l/(y*z))C.x/y*l/zD.x/y/z
3.設(shè)a、b、c、d、m、n均為int型變量,且a=5,b=6,c=7,d=8?m=2,n=2,則邏輯體現(xiàn)式
(m=a>b)&&(n=c>d)運(yùn)算后,n的值為(C)。
A.OB.lC.2D.3
4.設(shè)w、x、y、z、m均為ini型變量,有如下程序段:
w=1;x=2;y=3;z=4;
m=(w<x)?w:x;m=(m<y)?m:y;m=(m<z)?m:z;
則該程序運(yùn)行后,m的值是(D)。
A.4R.3C.2D.l
5.如下程序的輸出成果是(C)。
#include<stdio.h>
main()
{inta=5,b=4,c=6,d;
printf(,/%d\n,,d=a>b?(a>c?a:c):(b));
A.5B.4C.6D.不確定
6.在C語言中,假如下面的變量都是int類型,則輸出的成果是(A)。
sum=pad=5;pad=sum++,pad++,++pad;
printf("%d\n",pad);
A.7B.6C.5D.4
7.如卜.程序的輸出成果是(B)。
#include<stdio.h>
main()
{inti=()l(),j=l();
piintf("%d,%d\n",++i.j-);
)
A.11,10B.9,10C.()l(),9D.10,9
8.已知inii;floalf;,由如下選項(xiàng)中正確的語句是(D)。
A.(intf)%i;B.int(f)%i;C.int(f%i);D.(in()f%i;
9.若有定義:inlx=3,y=2;floata=2.5,b=3.5;則下面體現(xiàn)式的值為(B)。
(x+y)%2+(int)a/(int)b
A.1.0B.lC.2.0D.2
10.假設(shè)所有變量均為整型,則體現(xiàn)式(a=2,b=5,a++,b++,a+b)的值為(C)。
A.7B.8C.9D.10
11.若有定義"intx=Ly=l;\體現(xiàn)式(!x||y--)的值是(B)。
A.OB.lC.2D.-l
12.有如下程序:
main()
{unsignedchara.h.c;
a=0x3;
b=a|0x8;
c=b?1;
printf("%d%d\n",b,c);
)
程序運(yùn)行后的輸出成果是①)。
A.-1112B.-6-13C.1224D.1122
13.若已定義x和y為double類型,則體現(xiàn)式x=l,y=x+3/2的值是(C)。
A.lB.2C.2.0D.2.5
14.執(zhí)行如下程序段后,c3的值為(A)。
intcl=I,c2=2,c3;
c3=1.0/c2*cl;
A.OB.0.5C.lD.2
15.如下程序的輸出成果是(D)。
#include<stdio.h>
main()
{inty=3,x=3,z=l;
printf("%d%d\n",(++x,y++),z+2);
}
A.34B.42C.43D.33
第四章:基本語句
1.如下選項(xiàng)中不是C語句的是C0
A){inti;i++;printf("%d\n",i);}B);
C)a=5.c=10D){1}
2.執(zhí)行如下程序時輸入1234567.程序的運(yùn)行成祟為B.
#include<stdio.h>
inain()
scanf("%2d%2ld",&x,&y);
printf("%d\n",x+y);
)
A)17B)46C)15D)9
3.若有定義chara;intbifloatc:d3ubled;?則體現(xiàn)式a*b+c-d成果為型A。
A)doubleB)intC)floatD)char
4.若有定義intab,則用語句sanf("%d%d”,&a,&b):輸入a,b的值時,不能作為輸入數(shù)據(jù)分隔符的是△
A),B)空格C)回車D)[Tab]鍵
5.運(yùn)行下面的程序,假如從鍵盤上輸入:
ab<回車〉
c<回車〉
def<回車〉
則輸出成果為
#defineN6
#include<sldio.h>
main()
charc[N];
inti=0;
for(;i<N;c[i]=gctchar(),i++);
for(i=0;i<N;i++)putchar(c[i]);printf("\nM);
)
A)
a
b
d
B)
a
b
c
d
C)
ab
c
d
D)abcdef
6.如下程序的輸出成果是A.
科include<stdio.h>
main()
{printf("%f',2.5+l*7%2/4);
)
A)2.500000B)2.750000C)3.375000D)3.00000()
7.依照定義和數(shù)據(jù)的輸入方式,輸入語句的正確形式是生。
已經(jīng)有定義:float
數(shù)據(jù)的輸入方式:4.52
3.5
A)scanf("%f,%f',&fl,&f2);B)&⑵;
C)scanf("%3.2f%2.1T,&fID)scanf("%3.2f,%2.1P,&fl
8.如下程序不用第3個變量,實(shí)現(xiàn)將兩個數(shù)進(jìn)行對調(diào)的操作,請?zhí)羁铡?/p>
#include<stdio.h>
main()
{inta.b;
scanf("%d%d",&a,&b);
printf("a=%db=%d",a.b);
a=a+b:b=a-b:a=B;
prinifC'a=%db=%d\n\a.b);
)
A)a+bB)a-bC)b*aD)a/b
第五章:選擇結(jié)構(gòu)
I如下選項(xiàng)中.能正確表示a右I。或aWO的關(guān)系體理式是D,
A)a>=IOora<=0B)a>=10|a<=0C)a>=10&&a<=0D)a>=10||a<=0
2.假定所有變量均已正確定義,下列程序段運(yùn)行后x的值是_B_。
a=b=c=O;x=35;
if(!a)x-;
elseif(b);
if(c)x=3;
elsex=4:
A)34B)4C)35D)3
3.如下程序的輸出成果_A_0
#inckide<stdio.h>
main()
{inta.b.c=246;
a=c/100%9;
b=(-l)&&(-!);
printf("%<l,%d\n',,a,b);
)
A)2,1B)3,2C)4,3D)2,-l
4..已知a=l、b=3、c=5、d=5,下列程序段運(yùn)行后,x的值是_B_
if(a<b)
if(c<d)x=l;
else
if(a<c)
if(b<d)x=2;
elsex=3;
elsex=6;
elsex=7;
A)1B)2C)3D)6
5.能正確表示a和b同時為正或同時為負(fù)的體現(xiàn)式是D
A)(a>=0||b>=0)&&(a<0||b<0)B)(a>=0&&b>=0)&&(a<0&&b<0)
C)(a+b>0)&&(a+b<=0)D)a*b>0
6.如下程序的輸出成果是_C__。
#include<stdio.h>
main()
{inta=-l.b=l:
if((++a<0)&&!(b—<=0))
printf("%d%d\n"?a,b);
else
prinif("%d%d\n",b,a):
)
A)-11B)01C)10D)00
7.下列有關(guān)switch語句和break語句的結(jié)論中,正確的是_B
A)break語句是switch語句中的一部分
B)在switch語句中能夠依照需要使用或不使用break語句
C)在switch語句中必須使用break語句
D)break語句只能用于switch語句中
8.若有定義inta=Lb=O;,則執(zhí)行如下語句后,輸出為_B_。
switch(a)
{case1:
switch(b)
(case0:printf("**0**");break;
case1:printf("**l**"kbreak;
)
case2:printfC'**2**");bretk;
1
A)**()**B)**Q**?*2**
C)**0****l****2**D)有語法錯誤
9.如下程序的輸出成果是A。
#include<sidio.h>
main()
{intx=l,a=0,b=0;
switch(x)
{case0:b++;
case1:a++;
case2:a++;b++;
)
printf("a=%d.b=%d\n",a.b);
)
A)a=2,b=lB)a=l,b=lC)a=l,b=0D)a=2,b=2
10.如下程序的輸出成果是—C_o
#includc<stdio.h>
main()
{inta=12,b=5,c=-3;
if(a>b)
if(b<0)c=0;
elseC++;
printf("%d\n".c);
1
A)0B)1C)-2D)-3
11.閱讀如下程序:
#include<stdio.h>
inain()
{intx;
scanf("%d",&x);
if(x-<5)printf("%d",x);
elseprintf("%d".x++);
)
程序運(yùn)行后,假如從鍵盤輸入5,則輸出成果是_B—。
A)3B>4C)5D)6
12.兩次運(yùn)行下面的程序,假如從鍵盤上分別輸入6和4,則輸出的成果是A
#include<stdio.h>
main()
(intx;
scanf("%d".&x):
if(x++>5)printf("%d",x);
elseprintf("%d\n".x-);
A)7和5B)6和3C)7和4D)6和4
第6章循環(huán)結(jié)構(gòu)
1.在while(x)語句中的x與下面條件體現(xiàn)式等價的是。I)
A)x==0B)x==lC)x!=lD)x!=0
2.如下程序的輸出成果是。I)
#includc<stdio.h>
main()
{intkj,m;
for(k=5:k>=kk-)
(m=0;
for(j=kj<=S:j++)
m=m+k*j;
}
prinif(M%d\n",m);
)
A)124B)25C)36D)15
3.如下程序的輸出成果是。D
#include<stdio.h>
main()
{intx=10,y=10,i;
for(i=0;x>8;y=++i)
printf("%d%d",x-,y);
}
A)10192B)9876C)10990D)101091
4.如下程序的輸出成果是。A
a=l;b=2:c=2:
whilc(a<b<c){t=a;a=b;b=l;c-;)
printf("%d.%d.%d".a.b.c);
A)1,2,0B)2,1,0C)1,2,1D)2,1,1
5.如下for循環(huán)體的執(zhí)行次數(shù)是。C
#includc<sidio.h>
main()
{intij;
for(i=0.j=1:i<=j+1;i+=2,j-)printf("%d\n'\i);
)
A)3B)2C)1D)0
6.有如下程序:
#include<stdio.h>
mam()
{intn=9;
while(n>6){n-;printf("%d"ji):)
)
該程序段的輸出成果是。B
A)987B)87608765D)9876
7.有如下程序段:A
intk=0:
while(k=l)k++;
while循環(huán)執(zhí)行的次數(shù)姑。
A)無限次B)有語法借,不能執(zhí)行。一次也不執(zhí)行D)執(zhí)行一次
8.如卜.程序中,while循環(huán)的循環(huán)次數(shù)是.D
#include<stdio.h>
main()
{inti=0;
while(i<10)
{if(i<l)continue;
if(i==5)break;
i++;
}
1
A)1B)IO
C)6D)死循環(huán),不能確定次數(shù)
9.如下程序的輸出成果是。B
#include<stdio.h>
inain()
{inti=0.a=0;
while(i<20)
{for(:;)
{if((i%10)==0)break;
elsci-;
}
i+=ll;a+=i;
)
printf("%d\n",a);
}
A)21B)32C)33D)ll
10.語句while(!E);中的條件!E等價于。A
A)E==0B)E!=1C)E!=0D)~E
IL如卜的for循環(huán)。C
for(x=0,y=0;(y!=123)&&(x<4):x++);
A)是無限循環(huán)B)循環(huán)次數(shù)不定
C)循環(huán)執(zhí)行4次D)循環(huán)執(zhí)行3次
12.執(zhí)行如下程序段的成果是。E
intx=23;
do
{printf("%d",x-);
}while(!x);
A)打印出321B)打印出23
C)不打印任何內(nèi)容D)陷入死循環(huán)
第7章:數(shù)組
1.有如下程序:
#includc<stdio.h>
#include<string.h>
main()
{chara[]=fa,;b,;c,;d\'e\'f,'g'/h'AO');
inti,j;
i=sizeof(a);j=strlen(a);
prinif("%d.%d\n',.i.j);
)
程序運(yùn)行后的輸出成果是。I)
A)9,9B)8,9C)L8D)9,8
2.如下程序中函數(shù)reverse。的功效是將a所指數(shù)組中的內(nèi)容進(jìn)行逆置存儲。
科include<stdio.h>
voidreverse(inta[],intn)
inti.t;
fbr(i=O;i<n/2;i++)
{t=a[i];a[i]=a[n-1-iJ;a[n-1-i]=t;}
)
main()
inib|IOJ={1,2,3,4,5,6,7,8,9,10);inti,s=O;
reverse(b,8);
for(i=6;i<IO;i++)s+=b[i];
printf("%d\n",s);
)
則程序運(yùn)行后的輸出成果是。A
A)22B)IOC)34D)30
3.有如下程序:
main(intargc,char*argv(J)
intn.i=O;
while(argv[l][i]!='\O')
{n=fun():i++:)
printf("%d\n",n*argc);
}
intfun()
staticints=0;
s+=l;
rclurns;
}
假設(shè)程序經(jīng)編譯、連接后生成可執(zhí)行文獻(xiàn)cxam.cxc,若鍵入如下命令行
cxain123V回乍〉
則運(yùn)行成果為。A
A)6B)8C)3D;4
4.如下程序的輸出成果是。A
#include<stdio|fh>
#include<stringf-f-h>
main()
charstr[12]={'s7tVr,'iVnVg');
prinlf("%d\n",strlcn(slr));}
A)6B)7C)llD)12
5.若有闡明:inta[3][4];,則對數(shù)組a元素非法引用的是。I)
A)a[0][2*l]B)a[l][3]C)a[4-2][0]D)a[0][4]
6.若有闡明:inla[][4]={0,0};,則如下選項(xiàng)中,不正確的是。D
A)數(shù)組a的每個元素都可得到初值。
B)二維數(shù)組a的第一維大小為1
C)因?yàn)槎S數(shù)組a中初值的個數(shù)不能被第二維大小的值整除,則第?維的大小等于所得商數(shù)再加1,故數(shù)組a的
行數(shù)為1
D)只有元素a[0][0]和可得到初值0,其他元素均得不到初值0
7.如下程序中有錯誤的一行是,D
(1)main()
(2){
(3)intaf31=(ll:
(4)inli;
⑸scanf("%d".&a);
(6)fbr(i=l;i<3;i++)a[0]=a[C]+a[i];
(7)printf("%f\n';a[0]);
(8)}
A)3B)6C)7D)5
8.若有闡明:inia山3]={123,4,5,6,7};,則a數(shù)組第一維的大小是。3
A)2B)3C)4D:無確定值
9.若有數(shù)組定義:chararray]]='China";,則數(shù)組array所占的空間為。C
A)4個字節(jié)B)5個字節(jié)C)6個字節(jié)D)7個字節(jié)
10.如下程序的輸出成果是。A
#includc<stdio.h>
#includc<string.h>
main()
charan?⑵[4];
strcpy(arr."you");strcpy(arr[IJ,"me");
arrf0]|3]='&':
printf("%s\n',,arr);
)
A)you&mcB)youC)mcD)crr
11.有如下程序:
#inckide<stdio.h>
main()
intn(5]={0,0,0},i,k=2;
for(i=0;i<k;i++)n[il=n[i]+l;
prinlf("%<i\n",nlkj);
)
該程序的輸出成果是。D
A)不定值B)2C)lD)0
12.如下程序的輸出成果是。A
#includc<sldio.h>
main()
inta[3][3]=({l,2}.{3,4}.{5.6}}.i,j,s=O;
for(i=l;i<3;i++)
for(j=0:j<i:j++)s+=a[i][j]:
printf("%<i\n",s);
)
A)14B)19C)20D)21
13.當(dāng)執(zhí)行如下程序時,假如輸入ABC,則輸出成果是。A
科include<stdio桿h>
#include〈string桿h>
main()
{charss(101="1,2,3,4,5";
gets(ss);strcat(ss."6789"):printf(,,%s\n",ss);
)
A)ABC6789B)ABC67C)12345ABC6D)ABC456789
14.如下程序的輸出成果是。A
#include<stdio.h>
f(intb|],intn)
inti,s=0;
fbr(i=m;i<n;i=i+2)s=s+b[i];
returns;
)
main()
intx,a|]={1,2,3,4,5,6,7,89);
x=f(a,3.7);
prinlf("%<l\n",x);
1
A)10B)18C)8D)15
15.如下程序中函數(shù)sort。的功效是對數(shù)組a中的數(shù)據(jù)進(jìn)行由大到小的排序。
#include<stdio.h>
voidsort(intn)
{inti.j.t;
fbr(i=O;i<n-l;i++)
for(j=i+l:j<n;j++)
if(a(i]<a|j])(t=a(i];a[i]=a|j);a(j|=t;}
)
main()
intaa[10]={1,2,3,4,5,6,7,8,9,10),i;
sort(&aa[3],5);
for(i=0;i<10;i++)printf("%d,",aa|i]);
printf("\n");
)
程序運(yùn)行后的輸出成果是。C
A)1,2,34,5,6,7,8,9,10,B)109,8,7,6,5,4,3,2,1,
01.2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4.35
16.對兩個數(shù)組a和b進(jìn)行如下初始化:
charalJ="ABCDEF";
charb[]={,AVB,;C,,D\,EVF);
則如下論述正確的是。D
A)數(shù)組a與數(shù)組b完全相同B)數(shù)組a與數(shù)組b長度相同
C)數(shù)組a與數(shù)組b中都存儲字符串D)數(shù)組a比數(shù)組b長度長
17.有如下程序段:D
chara[3],b|J="China";
a=b;
printfC%s",a);
則。
A)運(yùn)行后將輸出ChinaB)運(yùn)行后將輸出ChC)運(yùn)行后將輸出ChiD)編譯犯錯
18.判斷字符串si是否不小于字符串s2,應(yīng)當(dāng)使用。D
A)if(sl>s2)B)if(strcmp(sl,s2))C)if(strcnip(s2,sl)>0)D)if(strcmp(sl,s2)>0)
19.如下程序的輸出成果是。A
#includc<sidio.h>
main()
{charch[7]={"12ab56"};
inti,s=O;
for(i=0;ch[i]>=,0'&&ch[i]<='9,;i+=2)
s=IO*s+ch[i]-'O';
printfC'%d\n",s);
)
A)IB)1256C)12ab56D)1
20.當(dāng)運(yùn)行如卜程序時,從健盤輸入:AhaMA[空格]Aha<回車>,則程序的輸出成果是。A
#include<stdio.h>
inain()
{chars[80],c='a';
inti=0;
scanf("%s”,s);
while(s[i]!='\O')
(if(s[i]==c)s[i]=s[i]-32;
elseif(s[i]==c-32)s[i]=s[i]+32;
i++;
)
puts(s);
)
A)ahAMaB)AbAMaC)AhAMa[空格]ahAD)ahAMa[空珞]ahA
操作題:
1.下列給定程序中,函數(shù)fun()的功效是:將形參a所指數(shù)組中的前半部分元素中的值與后半部
分元素中的值對換。形參n中存儲數(shù)組中數(shù)據(jù)的個數(shù),若n為奇數(shù),則中間的元素不動。
例如:若a所指數(shù)組中的數(shù)據(jù)為:1、2、3、4、5、6、7、8、9,則調(diào)換后為:6、7、8、9、5、
1、2、3、4。
請?jiān)诳瞻滋幪钊胝_內(nèi)容,使程序得出正確的成果。
(源程序在考生文獻(xiàn)夾“WEXAM\OOOOOOOO"下)
不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
#inchide<stdio.h>
科defineN9
voidfun(inta[].intn)
{inti,t,p;
p=(n%2==0)?n/2:n/2+1;
fbr(i=0;i<n/2;i++)
{t=afi];
ali]=alp+i];
a[p+i]=t;
I
)
main()
(intb[N|={i,2,3,4,5,6,7,8,9),i;
printf("\nTheoriginaldata:\nM);
for(i=O;i<N;i++)
printf("%4d",b|i]);
prinif("\n");
fun(b.N);
printf("\nThcdataaftermo\ing:\n");
for(i=0:i<N;i++)
printf("%4d",b|i));
printf("\n"):
}
第八章函數(shù)
1.如下函數(shù)值的類型是。A
fun(floatx)
{floaty:
y=3*x-4;
returny;
)
A)intB)不確定C)voidD)float
2.如下程序的輸出成果是。B
#inckide<stdio.h>
inta,b;
voidfun()
{a=100;b=200;}
main()
{inta=5,b=7;
fun();
prinlf("%d%d\n",a,b);
)
A)100200B)57C)00D)75
3.如下程序的輸出成果是。C
#include<stdio.h>
intx=3;
main()
(inti;
for(i=l;i<x;i++)incrc();
)
incre()
(staticintx=l;
x*=x+l;
prinlf("%d",x);
)
A)33B)22C)26D)25
4.如下程序的輸出成果是。B
#include<stdio.h>
intt(intn)
{if(n==l)rclumI;
elsereturnf(n-l)+l;
)
main()
{inti.j=O;
for(i=l;i<3;i++)
j+=f(i);
printf("%d\n",j);
}
A)4B)3C)2D)1
5.如下程序的輸出成果是。A
#include<stdioh>
intd=l;
fun(intp)
intd=5;
d+=p++;
printf("%d",d);
)
main()
{inta=3;
fun(a);
d+=a++;
prinif("%d\n",d);
)
A)84B)96C)94D)85
6.函數(shù)調(diào)用strcal(strcpy(sirl.slr2).slr3)的功效是。C
A)將字符串st"復(fù)制到字符串si”中后再連接到字符串sir3之后
B)將字符串和1連接到字符串str2之后冉熨制到字符即和3之后
。將字符串str2復(fù)制到字符串strl中后再將字符串str3連接到字符串stil之后
D)將字符串*r2連接到字符串sirl之后再將字符串sirl受制到字符串SU3中
7.有如下程序:
intsub(intn)
if(n<5)return0;
elseif(n>l2)return3:
return1;
if(n>5)return2;
)
main()
inta=10;
printf("%d\n",sub(a));
)
該程序的輸出成果是。B
A)0B)IC)2D;3
8.如下程序的輸出成果是。C
#include<stdio.h>
intd=l;
fun(intp)
{staticintd=5;
d+=p;
printf("%<l",d);
return(d);
)
main()
{inta=3:
prinlf("%d\n",fun(a+fun(d))):
}
A)699B)6690615151))6615
9.在一個源文獻(xiàn)中定義的外部變量的作用域?yàn)椤
A)本文獻(xiàn)的所有范闈B)本程序的所有范圍
C)小國數(shù)的所有范圍D)從定義該變量的位置開始至小義獻(xiàn)結(jié)束
10.如下論述中正確的是。B
A)全局變量的作用域一定比局部變量的作用域范圍大
B)靜態(tài)(static)類別變量的生存期貫通于整個程序的運(yùn)行期間
C)函數(shù)的形參都屬于全局變量
D)未在定義語句中賦初值的auto變量和static變量的初值都是隨機(jī)值
II.如下對C語言函數(shù)的描述中,正確的是。A
A)C程序由一個或一個以上的函數(shù)組成B)C函數(shù)既能好嵌套定義又能夠遞歸調(diào)用
C)函數(shù)必須有返回值,否則不能使用函數(shù)D)C程序中調(diào)用關(guān)系的所有函數(shù)必須放在同?個程序文獻(xiàn)中
12.C語言中形參的默認(rèn)存儲類別是。A
A)自動(auto)B)靜態(tài)(static)C)存儲器(register)D)外部(extern)
13.如下論述中不正確的是。B
A)在C語言中,調(diào)用函數(shù)時,只能把實(shí)參的值傳送給形參,形參的值不能傳送給實(shí)參
B)在C函數(shù)中,最佳使用全局變量
C)在C語言中,形式參數(shù)只是局限于所在函數(shù)
D)在C語言中,函數(shù)名的存儲類別為外部
14.C語言中函數(shù)返回值的類型由決定。D
A)relurn語句中的體現(xiàn)式類型B)調(diào)用函數(shù)的主調(diào)函數(shù)類型
。調(diào)用函數(shù)時的暫時類型D)定義函數(shù)時所指定的函數(shù)類型
15.C語言要求,調(diào)用一個函數(shù)時,實(shí)參變量和形參變量之間的數(shù)據(jù)傳遞是。C
A)地址傳遞B)由實(shí)參傳給形參,并由形參返回給實(shí)參
C)值傳遞D)由用戶指定傳遞方式
16.在C語言中。D
A)函數(shù)的定義能夠圾套,但函數(shù)的調(diào)用不能夠嵌套
B)函數(shù)的定義和調(diào)用均能夠嵌套
C)函數(shù)的定義和調(diào)用均不能夠嵌套
D)函數(shù)的定義不能夠嵌套,但函數(shù)的調(diào)用能夠嵌套
17.如下函數(shù)調(diào)用語句中,含有的實(shí)參個數(shù)是。A
fun(x+y,(eI,e2),fun(xy.d,(a,b)));
A)3B)4C)6D)8
18.如下程序的輸出成果是。C
#inciude<sidio.h>
fun(intx)
{staticinta=3;
a+=x;
rciurn(a);
}
main()
{intk=2,m=i,n;
n=fun(k);
n=fun(m);
prinif("%d".n);
)
A)3B)4C)6D)9
19.如下程序的輸出成果是。0
#include<stdio.h>
intt'unc(inla,inlb)
(return(a+b);)
main()
{intx=2,y=5,z=8,r:
r=func(func(x,y),z);
printf("%d\n",r);
}
A)12B)13C)14D)15
第9章指針
1.在闡明語句:int*f();中,標(biāo)識符f代表的是。D
A)一個用于指向整型數(shù)據(jù)的指針變量B)一個用于指向一維數(shù)組的行指針
。一個用于指向函數(shù)的指針變量D)一個返回僅為指針型的函數(shù)名
2.如下程序的輸出成果是。A
#includc<sldio.h>
#includc<slring.h>
main()
{char*p="abcde\Ofghjik\O";
printf(,'%d\n",$trlen(p));
)
A)12B)15C)6D)5
3.設(shè)有如下語句,則不是對a數(shù)組元素的正確引用,其中OWi<IO°D
inta[IO]=[0,1,2,3,4,567,8,9},*p=a;
A)a[p-a]B)*(&a[i])C:p[i]D)*(*(a+i))
4.如下程序段的輸出成果是。A
int*var.ab;
ab=IOO;var=&ab:ab=*var+10;
printf("%d\n",*var);
A)110B)100C)0D)出現(xiàn)錯誤
5.設(shè)有如下的程序段:B
charstr[]="Hello";
char*ptr;
ptr=str;
執(zhí)行上面的程序段后,*(p〔r+5)的值為。
A/o'B)'\0'C)不確定的值D)b的地址
6.若有如下定義和語句:A
#include<stdio.h>
inia=4,b=3,*p,*q,*w;
p=&a:q=&b:w=q:q=NULL;
則如下選項(xiàng)中錯誤的語句是。
A)*q=0;B)w=p;C)?p=a;D)*p=*w;
7.下面函數(shù)的功效是。B
sss(s,t)
char*s,*l;
{while((*s)&&(*t)&&(*t++==*s++));
rcturn(*s-*();
)
A)求字符串的長度B)比較兩個字符串的大小
。將字符串$復(fù)制到字符串I中D)將字符串S接續(xù)到字符串I中
8.有如下程序:
#include<stdlib.h>
main()
char*p.*q;
p=(char*)malloc(sizeof(char)*20);q=p;
scanf("%s%s",p,q)iprintf("%s%s\n",p,q);
)
若從鍵盤輸入:abcdefc回車〉,則輸出成果是。A
A)defdefB)abcdefC)abcdD)dd
9.若有如下闡明和定義:
typedefint*INTEGER;
INTEGERp.*q:
如下論述正確的是。B
A)p是ini型變量B)p是基類型為int的指針變量
C)q是基類型為ini的指針變量D)程序中可用INTEGER替代ini類型名
10.闡明語句int*(*p)();的含義是。D
A)p是一個指向ini型數(shù)組的指甘
B)p是指針變量,它組成了指針數(shù)組
C)p是一個指向函數(shù)的指針,該函數(shù)的返回值是一個整型
D)p是一個指向函數(shù)的指針,該函數(shù)的返回值是一個指向整型的指計(jì)
11.已知char選擇正確的語句。C
A)p*=3;B)p/=q;C)p+=3;D)p+=q:
12.已知inli,x⑶[4];,則不能將的值賦給變量i的語句是。C
A)i=*(*(x+l)+I);B)i=x[l][i];
C)i=*(*(x+l)):D)i=*(x[l]+l);
13.下列程序的輸出成果是。B
#include<stdio.h>
intb=2;
intfunc(int*a)
{b+=*a;return(b);
1
main()
{inta=2,res=2;
res+=func(&a);
printf("%(l\n",res);
}
A)4B)6C)8D)1O
14.有如下程序段:
int*p,a=10,b=l;
p=&a;a=*p+b;
執(zhí)行該程序段后,a的值為。B
A)12B)llC)1OD)編譯犯錯
15.對于基類型相同的兩個指釬變量之間,不能進(jìn)行的運(yùn)算是。C
A)<B)=C)+D)-
16.如下程序的輸出成果是。C
科include<sldio.h>
inain()
{charch⑵[5]={"6937","8254"),*p[2];
inti,j.s=O:
for(i=0;i<2;i++)p(i]=ch[i];
for(i=0;i<2;i++)
forO=0;p[i]|j|>'\0'j+=2)
s=10*s+pli][j]-'0';
printf("%d\n",s);
)
A)69825B)63825C)6385D)693825
17.當(dāng)調(diào)用函數(shù)時,實(shí)參是?個數(shù)組名,則向函數(shù)傳遞的是。B
A)數(shù)組的長度B)數(shù)組的首地址
。數(shù)組每一個元素的地址D)數(shù)組每個元素中的值
18.若有闡明諳句:in【a,b,c,*d=&c:,則能止確從鍵盤讀入3個整數(shù)分別賦給變量a、b、c的諾句是。A
A)scanf("%d%d%d".&a,&b.d);B)scanf("%d%d%d".&a.&b,&d);
C)scanf("%d%d%d",a,b,d);D)scanf(,,%d%d%d",a,b,*d);
19.若定義:inta=511,*b=&a;,則prinlf("%d\n",*b);的輸出成果為。D
A)無確定值B)a的地址C)512D)51l
第10章編譯預(yù)處理和動態(tài)存儲分派
】.對下面程序段,止確的判斷是。B
#defineA3
#defineB(a)?A+l)*a)
x=3*(A+B(7));
A)程序錯誤,不許嵌套宏定義B)x=93
C)x=21D)程序錯誤,宏定義不許有參數(shù)
2.如下程序的輸出成果為。B
#include<stdio.h>
#dcfincF(y)3.84+y
#definePR(a)printf("%d",(int)(a))
#defincPRINT(a)PR(a);pulchar('\n')
main()
{intx=2;
PRINT(F(3)*x);
)
A)8B)9C)10D)11
3.如下說法中正確的是。C
A)#define和prinlf都是C語句B)#define是C語句,而prinif不是
C)prinif是C語句,但#define不是D)#define和prinlf都不是C語句
4.如下程序的愉出成果是。C
#definef(x)x*x
#includc<stdio.h>
inain()
{inta=6.b=2,c;
c=f(a)/f(b):
printf("%d\nM,c):
)
A)9B)6C)36D)I8
5.如下程序運(yùn)行后,輸出成果是。B
#definePT5.5
#defineS(x)PT*x*x
#include<stdio.h>
main()
(inta=l.b=2;
printf("%4.1f\n".S(a+b));
)
A)49.5B)9.5C)22.0D)45.0
6.卜列程序執(zhí)行后的輸出成果是。B
#defineMA(x)x*(x-l)
#include<stdio.h>
main()
{inta=l.b=2;printf("%d\n".MA(l+a+b));
)
A)6B)8C)1OD)12
7.有如下程序:
#defineN2
#dcfincMN+l
#detineNUM2*M+l
main()
(inti;
tbr(i=l;i<=NUM;i++)printf("%d\n",i);
I
該程序中的for循環(huán)執(zhí)行的次數(shù)是。C
A)5B)6C)7D)8
8.程序中頭文獻(xiàn)lypel.h的內(nèi)容是:
#defineN5
#defineMlN*3
程序如下:
#includc"typcl.h"
#defineM2N*2
main()
(inti;
i=Ml+M2;printf("%d\n",i);
)
程序編譯后運(yùn)行的輸出成果是。C
A)10B)20C)25D)30
9.如下正確的描述為。C
A)每個C語言程序必須在開頭使用預(yù)處理命令#include<sldio.h>
B)預(yù)處理命令必須位于C源程序的首部
C)在C忠言中預(yù)處理命令都以"#"開頭
D)C語言的預(yù)處理命令只能實(shí)現(xiàn)宏定義和條件編譯的功效
10.從下列選項(xiàng)中選擇不會引起二義性的宏定義是。I)
A)#definePOWER(x)x*xB)#definePOWER(x)(x)*(x)
C)#definePOWER(x)(x*x)D)#definePOWER(x)((x)*(x))
11.設(shè)有如下宏定義:
#defineN3
#defineY(n)((N+l)*n)
則執(zhí)行語句”z=2*(N+Y(5+D)丁后,z的值為。C
A)犯錯B)42C)48D)54
12.若有?宏定義#defineMOD(x,y;x%y,則執(zhí)行如下語句后的輸出為。B
iniz,a=i5,b=100;
z=MOD(b.a);
printf("%d\n",z++);
A)ilB)10C)6D)宏定義不合法
13.如下程序的輸出成果是D
#include<stdio.h>
inta[3][3]={l,2,3,4,5,6,7,8,9},*p;
main()
p=(int*)nialloc(sizeof(int));
printf("%d\n",*p);
free(p);
)
f(int*s.intp[H3])
{*s=p[1)(11:)
A)IB)4C)7D)5
第11章結(jié)構(gòu)體與共用體
1.在16位的PC機(jī)上使用C語言,若有如下定義:D
structdata
{inti;
charch:
doublef;
}b;
則結(jié)構(gòu)變量b占用內(nèi)存的字節(jié)數(shù)是。
A)IB)2C)8D)11
2.設(shè)有如下闡明和定義語句,則下面體現(xiàn)式中值為3的是。D
structs
{inti;
structs*i2;
);
staticstructsa[3]={1.&a[I].2.&a(2].3.&a[O]);
staticstructs*ptr;
ptr=&a(IJ:
A)ptr->i++B)ptr++->IC)*ptr->iD)++ptr->i
3.有如下程序:
main()
union{
unsignedintn;
unsignedcharc;
}ul;
ul.c='A';
printf("%c\n",ul.n);
)
執(zhí)行后輸出成果是C
A)產(chǎn)生語法錯B)隨機(jī)值C)AD)65
4.設(shè)有如下闡明語句:C
structstu
(inta;
floatb;
}stutype;
則下面的論述正確的是。
A)sirucl是結(jié)構(gòu)體類型名B)s【ruclstu是用戶定義的結(jié)構(gòu)體變量名
C)siutype是用戶定義的結(jié)構(gòu)體變量名D)a和b都是結(jié)構(gòu)體變量名
5.如F程序輸出成果是B
#include<stdio.h>
lypedefunion
(longi;
intk[5|;
charc;
}DATE;
structdate
intcat;
DATEcow:
doubledog;
}too;
DATEmax:
muin()
(pnntl("%d\n",sizcof(structdate)+sizcof(max));
)
A)25B)30C)18D)8
6.如下對結(jié)構(gòu)體變量slul中組員age的非法引用是。B
structstudent
{intage;
intnum;
}stul,*p;
p=&stul:
A)stuI.ageB)student.ageC)p->ageD)(*p).age
7.下列程序中,結(jié)構(gòu)體變量a所占內(nèi)存字節(jié)數(shù)是。C
unionU
(charst[4];
inti;
longI:
);
structA
(intc;
unionUu;
}a;
A)4B)5C)6D)8
8.設(shè)有如下闡明語句:
structex
intx;floaty;charz;
}example;
則下面的論述中不正確的是。B
A)strucl是結(jié)構(gòu)體類型的核心字B)cxamplc是結(jié)構(gòu)體類型名
C)x,y,z都是結(jié)構(gòu)體組員名D)struclex是結(jié)構(gòu)體類型名
9.若有下面的闡明和定義:
structtest(
intml;charm2;floatm3;
unionuu(
charul[5];
intu2[2];
}ua;
}myaa;
則sizeof(structtest)的值是。A
A)12B)16C)14D)9
10.已知:
union
(inti;
chare;
floata;
}test;
則sizeof(test)的值是。A
A)4B)5C)6D)7
II.如下對C語言中聯(lián)合類型數(shù)據(jù)的正確論述是。C
A)?旦定義了?個聯(lián)合變量后,即可引用該變量或該變量中的任意組員
B)一個聯(lián)合變量中能夠同時存儲其所有組員
C)一個聯(lián)合變量中不能同時存儲其所有組員
D)聯(lián)合類型數(shù)據(jù)能夠出目前結(jié)構(gòu)體類型定義中,但結(jié)構(gòu)類型數(shù)據(jù)不能出目前聯(lián)合類型定義中
結(jié)構(gòu)體操作題:
1.下列給定程序是建立一個帶頭節(jié)點(diǎn)的單向鏈表,并用隨機(jī)函數(shù)為各節(jié)點(diǎn)賦值。函數(shù)fun的功
效是將單向鏈表節(jié)點(diǎn)(不包括頭節(jié)點(diǎn))數(shù)據(jù)域?yàn)榕紨?shù)的值累加起來,并且作為函數(shù)值返同。
請更正函數(shù)fun中的錯誤,使它能得出正確的成果。
注意:不要改動main函數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 遼寧省營口市大石橋市水源鎮(zhèn)2024-2025學(xué)年高中畢業(yè)班質(zhì)量檢測試題生物試題含解析
- 四川省成都市雙流棠湖中學(xué)2025年高三聯(lián)考數(shù)學(xué)試題(聯(lián)考)試題含解析
- 吉林省吉林市第七中學(xué)2025年初三教學(xué)質(zhì)量檢查(二統(tǒng))數(shù)學(xué)試題含解析
- 武漢傳媒學(xué)院《人體解剖與組織學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 陜西省西安電子科技中學(xué)2025屆下學(xué)期初三期末考試生物試題含解析
- 山西經(jīng)貿(mào)職業(yè)學(xué)院《生物統(tǒng)計(jì)與試驗(yàn)設(shè)計(jì)Ⅰ》2023-2024學(xué)年第二學(xué)期期末試卷
- 四川建筑職業(yè)技術(shù)學(xué)院《建設(shè)法規(guī)與實(shí)務(wù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 蘇南京一中學(xué)2024-2025學(xué)年初三元月月考化學(xué)試題含解析
- 南京中醫(yī)藥大學(xué)《長沙文化研究》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇海洋大學(xué)《和聲基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 課件圍術(shù)期下肢深靜脈血栓的預(yù)防與護(hù)理
- 2013年7月國家開放大學(xué)專本科《法律文書》期末紙質(zhì)考試試題及答案
- 《MATLAB基礎(chǔ)及應(yīng)用》全套教學(xué)課件
- 環(huán)保工程公司環(huán)境污染治理合同
- 瓶裝礦泉水銷售代理合同
- 2025數(shù)據(jù)中心基礎(chǔ)設(shè)施運(yùn)行維護(hù)
- 人教版(2024)七年級下冊英語Unit 5 Here and Now 單元教學(xué)設(shè)計(jì)(共6課時)
- 《現(xiàn)代教育技術(shù)》教學(xué)設(shè)計(jì)公開課教案教學(xué)設(shè)計(jì)課件資料
- 人教版高中物理選擇性必修第三冊期末檢測試卷
- 2025年保密知識試題庫(附參考答案)
- 2025年臨床醫(yī)師定期考核必考復(fù)習(xí)題庫及答案(900題)
評論
0/150
提交評論