C語(yǔ)言基礎(chǔ)知識(shí)習(xí)題_第1頁(yè)
C語(yǔ)言基礎(chǔ)知識(shí)習(xí)題_第2頁(yè)
C語(yǔ)言基礎(chǔ)知識(shí)習(xí)題_第3頁(yè)
C語(yǔ)言基礎(chǔ)知識(shí)習(xí)題_第4頁(yè)
C語(yǔ)言基礎(chǔ)知識(shí)習(xí)題_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第二章:C語(yǔ)言概述1 .以下()是不正確的轉(zhuǎn)義字符。A.''B.'"C.'020'D.'0'2 .構(gòu)成C語(yǔ)言程序的基本單位是(0)。A.函數(shù)B.變量C.子程序D.語(yǔ)句3 .C語(yǔ)言規(guī)定:在一個(gè)源程序中,main()函數(shù)的位置(0)。A.必須在最開(kāi)始B.必須在系統(tǒng)調(diào)用的庫(kù)函數(shù)后面C.可以任意D.必須在最后4 .為求出return語(yǔ)句返回計(jì)算100!的結(jié)果,此函數(shù)的類(lèi)型說(shuō)明應(yīng)為(D)。A.intB.longC.unsignedlongD.選項(xiàng)A,B,C.都不又ABC的數(shù)值范圍都不夠5 .C語(yǔ)言中的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線(xiàn)3#字符

2、組成,且第一個(gè)字符(0)。A.必須為字母B.必須為下劃線(xiàn)C.必須為字母或下劃線(xiàn)D.可以是字母、數(shù)字和下劃線(xiàn)中的任意一種6 .以下選項(xiàng)中合法的用戶(hù)標(biāo)識(shí)符是(D)。A.intB.a#C.5memD._2437 .C語(yǔ)言中的簡(jiǎn)單數(shù)據(jù)類(lèi)型有(0)。A.整型、實(shí)型、邏輯型B.整型、字符型、邏輯型0.整型、實(shí)型、字符型D.整型、實(shí)型、字符型、邏輯型8 .以下選項(xiàng)中不正確的整型常量是(B)。A.-37B.32,7580.326D.69 .以下選項(xiàng)中合法的0語(yǔ)言字符常量是(A)。A.'t'B."A"0.67D.A10 .以下選項(xiàng)中不正確的實(shí)型常量是(A)。A.123B.1e

3、40.3.640E-1D.0.3511 .以下選項(xiàng)中合法的0語(yǔ)言賦值語(yǔ)句是(D)。A.a=b=34B.a=34,b=340.-i;D.m=(int)(x+y);12 .設(shè)int類(lèi)型的數(shù)據(jù)長(zhǎng)度為兩個(gè)字節(jié),則unsignedint類(lèi)型數(shù)據(jù)的取值范圍是(B)。A.0255B.065535C.-3276832767D.-256255第三章:運(yùn)算符與表達(dá)式(原先給的答案很多錯(cuò)誤)1 .以下敘述中不正確的是(B)。A.在C程序中,是只能用于整數(shù)運(yùn)算的運(yùn)算符B.在C程序中,無(wú)論整數(shù)還是實(shí)數(shù),都能準(zhǔn)確無(wú)誤地表示C.若a是實(shí)型變量,C程序中a=20是正確的,因此實(shí)型變量允許被整型數(shù)賦值D.以上表述都是正確的2

4、.若變量x、y、z均為double類(lèi)型且已正確賦值,不能正確表示x/yXz的C語(yǔ)言表達(dá)式是(A)。A.x/y*zB.x*(1/(y*z)C.x/y*1/zD.x/y/z3 .設(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的值為(C)。A.0B.1C.2D.34 .設(shè)w、x、y、z、m均為int型變量,有如下程序段: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

5、.4B.3C.2D.15 .以下程序的輸出結(jié)果是(C)。#include<stdio.h>main()inta=5,b=4,c=6,d;printf("%dn",d=a>b?(a>c?a:c):(b);A.5B.4C.6D.不確定(A)。6 .在C語(yǔ)言中,如果下面的變量都是int類(lèi)型,則輸出的結(jié)果是sum=pad=5;pad=sum+,pad+,+pad;printf("%dn",pad);A.7B.6C.5D.47 .以下程序的輸出結(jié)果是(B)。#include<stdio.h>main()inti=010,j=10

6、;printf("%d,%dn",+i,j-);A.11,10B.9,10C.010,9D.10,98 .已知inti;floatf;,由以下選項(xiàng)中正確的語(yǔ)句是(D)。A.(intf)%i;B.int(f)%i;C.int(f%i);D.(int)f%i;9 .若有定義:intx=3,y=2;floata=2.5,b=3.5;則下面表達(dá)式的值為(B)。(x+y)%2+(int)a/(int)bA.1.0B.1C.2.0D.210 .假設(shè)所有變量均為整型,則表達(dá)式(a=2,b=5,a+,b+,a+b)的值為(C)。A.7B.8C.9D.1011 .若有定義"intx

7、=1,y=1;",表達(dá)式(!x|y-)的值是(B)。A.0B.1C.2D.-112 .有以下程序:main()unsignedchara,b,c;a=0x3;b=a|0x8;c=b<<1;printf("%d%dn",b,c);程序運(yùn)行后的輸出結(jié)果是(D)。A.-1112B.-6-13C.1224D.112213 .若已定義x和y為double類(lèi)型,則表達(dá)式x=1,y=x+3/2的值是(C)。A.1B.2C.2.0D.2.514 .執(zhí)行以下程序段后,c3的值為(A)。intc1=1,c2=2,c3;c3=1.0/c2*c1;A.0B.0.5C.1D.2

8、15 .以下程序的輸出結(jié)果是(D)。#include<stdio.h>main()inty=3,x=3,z=1;printf("%d%dn",(+x,y+),z+2);A.34B.42C.43D.33第四章:基本語(yǔ)句1 .以下選項(xiàng)中不是C語(yǔ)句的是C。A)inti;i+;printf("%dn",i);B);C)a=5,c=10D);2 .執(zhí)行以下程序時(shí)輸入1234567,程序的運(yùn)彳f結(jié)果為B。#include<stdio.h>main()intx,y;scanf("%2d%2ld",&x,&y)

9、;printf("%dn",x+y);A)17B)46C)15D)93 .若有定義chara;intb;floatc;doubled;則表達(dá)式a*b+c-d結(jié)果為型A。A)doubleB)intC)floatD)char4 .若有定義inta,b;,則用語(yǔ)句scanf("%d%d",&a,&b);輸入a,b的值時(shí),不能作為輸入數(shù)據(jù)分隔符的是A),B)空格C)回車(chē)D)【Tab】鍵5 .運(yùn)行下面的程序,如果從鍵盤(pán)上輸入:ab<>c<回車(chē)>def<回車(chē)則輸出結(jié)果為C。#defineN6#include<std

10、io.h>main()charcN;inti=0;for(;i<N;ci=getchar(),i+);for(i=0;i<N;i+)putchar(ci);printf""n");A)abcdefB)abcdC)abcdD)abcdef6 .以下程序的輸出結(jié)果是A。#include<stdio.h>main()printf("%f",2.5+1*7%2/4);A)2.500000B)2.750000C)3.375000D)3.0000007 .根據(jù)定義和數(shù)據(jù)的輸入方式,輸入語(yǔ)句的正確形式是B。已有定義:floatf

11、1,f2;數(shù)據(jù)的輸入方式:4.523.5A)scanf("%f,%f",&f1,&f2);B)scanf("%f%f",&f1,&f2);C)scanf("%3.2f%2.1f",&f1,&;D)scanf("%3.2f,%2.1f",&f1,&f2);8 .以下程序不用第訃變量,實(shí)現(xiàn)將兩個(gè)數(shù)進(jìn)行對(duì)調(diào)的操作,請(qǐng)?zhí)羁铡?include<stdio.h>main()inta,b;scanf("%d%d",&a,&am

12、p;b);printf("a=%db=%d",a,b);a=a+b;b=a-b;a=B;printf("a=%db=%dn",a,b);A)a+bB)a-bC)b*aD)a/b第五章:選擇結(jié)構(gòu)1 .以下選項(xiàng)中,能正確表示si>10或aw0的關(guān)系表達(dá)式是D_oA)a>=10ora<=0B)a>=10|a<=0C)a>=10&&a<=0D)a>=1011a<=02 .假定所有變量均已正確定義,下列程序段運(yùn)行后x的值是_Boa=b=c=0;x=35;if(!a)x-;elseif(b);if

13、(c)x=3;elsex=4;A)34B)4C)35D)33 .以下程序的輸出結(jié)果A。#include<stdio.h>main()inta,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%dn",a,b);A)2,1B)3,2C)4,3D)2,-14.已知a=1、b=3、c=5、d=5,下列程序段運(yùn)行后,x的值是_B。if(a<b)if(c<d)x=1;elseif(a<c)if(b<d)x=2;elsex=3;elsex=6;elsex=7;A)1B)2C)3D)65 .能正確表示

14、a和b同時(shí)為正或同時(shí)為負(fù)的表達(dá)式是_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>06 .以下程序的輸出結(jié)果是_C_。#include<stdio.h>main()inta=-1,b=1;if(+a<0)&&!(b-<=0)printf("%d%dn",a,b);elseprintf(

15、"%d%dn",b,a);A)-11B)01C)10D)007.下列關(guān)于switch語(yǔ)句和brea描句的結(jié)論中,正確的是_BA)brea描句是switch語(yǔ)句中的一部分B)在switch語(yǔ)句中可以根據(jù)需要使用或不使用brea描句C)在switch語(yǔ)句中必須使用brea肩I句D)brea肩I句只能用于switch語(yǔ)句中8.若有定義inta=1,b=0;,則執(zhí)行以下語(yǔ)句后,輸出為_(kāi)B_。switch(a)case1:switch(b)case0:printf("*0*");break;case 1: printf("*1*");break

16、;case 2: printf("*2*");break;精選范本A)*0*B)*0*2*C)*0*2*9.以下程序的輸出結(jié)果是D)有語(yǔ)法錯(cuò)誤_A_。#include<stdio.h>main()intx=1,a=0,b=0;switch(x)case 3: case0:b+;case 1: a+;case 2: a+;b+;printf("a=%d,b=%dn",a,b);A)a=2,b=1B)a=1,b=1C)a=1,b=0D)a=2,b=210. 以下程序的輸出結(jié)果是_C_。#include<stdio.h>main()in

17、ta=12,b=5,c=-3;if(a>b)if(b<0)c=0;elsec+;printf("%dn",c);A)0B)1C)-2D)-311. 閱讀以下程序:#include<stdio.h>main()intx;scanf("%d",&x);if(x-<5)printf("%d",x);elseprintf("%d",x+);程序運(yùn)行后,如果從鍵盤(pán)輸入5,則輸出結(jié)果是_B_。A)3B)4C)5D)612. 兩次運(yùn)行下面的程序,如果從鍵盤(pán)上分別輸入6和4,則輸出的結(jié)果是_A

18、#include<stdio.h>main()intx;scanf("%d",&x);if(x+>5)printf("%d",x);elseprintf("%dn",x-);A)7和5B)6和3C)7和4D)6和4第6章循環(huán)結(jié)構(gòu)1 .在while(x)語(yǔ)句中的x與下面條件表達(dá)式等價(jià)的是。DA)x=0B)x=1C)x!=1D)x!=02 .以下程序的輸出結(jié)果是。D#include<stdio.h>main()intk,j,m;for(k=5;k>=1;k-)m=0;for(j=k;j<=

19、5;j+)m=m+k*j;printf("%dn",m);A)124B)25C)36D)153 .以下程序的輸出結(jié)果是。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)1010914 .以下程序的輸出結(jié)果是。Aa=1;b=2;c=2;while(a<b<c)t=a;a=b;b=t;c-;printf("%d,%d,%d",a,b,c);A)1,2,0B)2,1

20、,0C)1,2,1D)2,1,15 .以下for循環(huán)體的執(zhí)行次數(shù)是。C#include<stdio.h>main()inti,j;for(i=0,j=1;i<=j+1;i+=2,j-)printf("%dn",i);A)3B)2C)1D)06 .有以下程序:#include<stdio.h>main()7 intn=9;while(n>6)n-;printf("%d",n);該程序段的輸出結(jié)果是。BA)987B)876C)8765D)98768 .有以下程序段:Aintk=0;while(k=1)k+;D)執(zhí)行一次wh

21、ile循環(huán)執(zhí)行的次數(shù)是。A)無(wú)限次B)有語(yǔ)法錯(cuò),不能執(zhí)行C)一次也不執(zhí)行9 .以下程序中,while循環(huán)的循環(huán)次數(shù)是。D#include<stdio.h>main()inti=0;while(i<10)if(i<1)continue;if(i=5)break;i+;A)1B)10C)6D)死循環(huán),不能確定次數(shù)10 以下程序的輸出結(jié)果是。B#include<stdio.h>main()11 inti=0,a=0;while(i<20)for(;)if(i%10)=0)break;elsei-;i+=11;a+=i;printf("%dn&quo

22、t;,a);A)21B)32C)33D)1110語(yǔ)句while(!E);中的條件£等價(jià)于。AA)E=0B)E!=1C)E!=0D)E11以下的for循環(huán)。Cfor(x=0,y=0;(y!=123)&&(x<4);x+);A)是無(wú)限循環(huán)B)循環(huán)次數(shù)不定C)循環(huán)執(zhí)行4次D)循環(huán)執(zhí)行欷12.執(zhí)行以下程序段的結(jié)果是。Bintx=23;doprintf("%d",x-);while(!x);A)打印出321B)打印出23C)不打印任何內(nèi)容D)陷入死循環(huán)第7章:數(shù)組1有以下程序:#include<stdio.h>#include<str

23、ing.h>main()chara='a','b','c','d','e','f','g','h','0'inti,j;i=sizeof(a);j=strlen(a);printf("%d,%dn",i,j);程序運(yùn)行后的輸出結(jié)果是。DA)9,9B)8,9C)1,8D)9,82 .以下程序中函數(shù)reverse(的功能是將訴指數(shù)組中的內(nèi)容進(jìn)行逆置存放。#include<stdio.h>voidreverse(inta

24、,intn)inti,t;for(i=0;i<n/2;i+)t=ai;ai=an-1-i;an-1-i=t;main()intb10=1,2,3,4,5,6,7,8,9,10;inti,s=0;reverse(b,8);for(i=6;i<10;i+)s+=bi;printf("%dn",s);則程序運(yùn)行后的輸出結(jié)果是。AA)22B)10C)34D)303 .有以下程序:main(intargc,char*argv)intn,i=0;while(argv1i!='0')n=fun();i+;printf("%dn",n*arg

25、c);intfun()staticints=0;s+=1;returns;假設(shè)程序經(jīng)編譯、連接后生成可執(zhí)行文件exam.exe若鍵入以下命令行exam123<回車(chē)>則運(yùn)行結(jié)果為。AA)6B)8C)3D)44 .以下程序的輸出結(jié)果是。A# include<stdioh># include<stringh>main()charstr12='s','t','r','i','n','g'printf("%dn",strlen(str);A)6B)7C)

26、11D)125 .若有說(shuō)明:inta34;,則對(duì)數(shù)組a元素非法引用的是。DA)a02*1B)a13C)a4-20D)a046 .若有說(shuō)明:inta口4=0,0;,則以下選項(xiàng)中,不正確的是。DA)數(shù)組a的每個(gè)元素都可得到初值。B)二維數(shù)組a的第一維大小為1C)因?yàn)槎S數(shù)組a中初值的個(gè)數(shù)不能被第二維大小的值整除,則第一維的大小等于所得商數(shù)再加1,故數(shù)組由勺行數(shù)為1D)只有元素a00和a01可得到初值0,其余元素均彳|不到初值07 .以下程序中有錯(cuò)誤的一行是。D(1)main()(2)(3) inta3=1;(4) )inti;(5) scanf("%d",&a);(6)

27、 for(i=1;i<3;i+)a0=a0+ai;(7) printf("%fn",a0);(8)A)3B)6C)7D)58 .若有說(shuō)明:inta口3=1,2,3,4,5,6,7;,則a數(shù)組第一維的大小是。BA)2B)3C)4D)無(wú)確定值9 .若有數(shù)組定義:chararray="China",則數(shù)組array所占的空間為。CA)4個(gè)字節(jié)B)5個(gè)字節(jié)C)6個(gè)字節(jié)D)7個(gè)字節(jié)10 .以下程序的輸出結(jié)果是。A#include<stdio.h>#include<string.h>main()chararr24;strcpy(arr,

28、"you");strcpy(arr1,"me");arr03='&'printf("%sn",arr);A)you&meB)youC)meD)err11 .有以下程序:#include<stdio.h>main()intn5=0,0,0,i,k=2;for(i=0;i<k;i+)ni=ni+1;printf("%dn",nk);該程序的輸出結(jié)果是。DA)不定值B)2C)1D)012 .以下程序的輸出結(jié)果是。A#include<stdio.h>main()

29、inta33=1,2,3,4,5,6,i,j,s=0;for(i=1;i<3;i+)for(j=0;j<i;j+)s+=aij;printf("%dn",s);A)14B)19C)20D)2113 .當(dāng)執(zhí)行以下程序時(shí),如果輸入ABC,則輸出結(jié)果是。A#include<stdioh>#include<stringh>main()charss10="1,2,3,4,5”;gets(ss);strcat(ss,"6789");printf("%sn",ss);A)ABC6789B)ABC67C)

30、12345ABC6D)ABC45678914 .以下程序的輸出結(jié)果是。A#include<stdio.h>f(intb,intm,intn)inti,s=0;for(i=m;i<n;i=i+2)s=s+bi;returns;main()intx,a=1,2,3,4,5,6,7,8,9;x=f(a,3,7);printf("%dn",x);A)10B)18C)8D)1515.以下程序中函數(shù)sort()的功能是對(duì)數(shù)組a中的數(shù)據(jù)進(jìn)行由大到小的排序。#include<stdio.h>voidsort(inta,intn)inti,j,t;for(i=0

31、;i<n-1;i+)for(j=i+1;j<n;j+)if(ai<aj)t=ai;ai=aj;aj=t;main()intaa10=1,2,3,4,5,6,7,8,9,10,i;sort(&aa3,5);for(i=0;i<10;i+)printf("%d,",aai);printf("n");程序運(yùn)行后的輸出結(jié)果是。CA)1,2,3,4,5,6,7,8,9,1,0B)10,9,8,7,6,5,4,3,2,1,C)1,2,3,8,7,6,5,4,9,10,D)1,2,10,9,8,7,6,5,4,3,16.對(duì)兩個(gè)數(shù)組a和b

32、進(jìn)行如下初始化:chara="ABCDEF"charb='A','B','C','D','E','F'則以下敘述正確的是。DA)數(shù)組有數(shù)組b完全相同B)數(shù)組有數(shù)組b度相同C)數(shù)組的數(shù)組b中都存放字符串D)數(shù)組a比數(shù)組b長(zhǎng)度長(zhǎng)17有以下程序段:Dchara3,b="China"a=b;printf("%s",a);則。A)運(yùn)行后將輸出ChinaB)運(yùn)行后將輸出ChC)運(yùn)行后將輸出ChiD)編譯出錯(cuò)18.判斷字符串si是否大于字符串s2,應(yīng)當(dāng)使

33、用。DA)if(s1>s2)B)if(strcmp(s1,s2)C)if(strcmp(s2,s1)>0)D)if(strcmp(s1,s2)>0)19以下程序的輸出結(jié)果是。A#include<stdio.h>main()charch7="12ab56"inti,s=0;for(i=0;chi>='0'&&chi<='9'i+=2)s=10*s+chi-'0'printf("%dn",s);A)1B)1256C)12ab56D)120.當(dāng)運(yùn)行以下程序

34、時(shí),從鍵盤(pán)輸入:AhaMA空格Aha<回車(chē)>,則程序的輸出結(jié)果是。A#include<stdio.h>main()chars80,c='a'inti=0;scanf("%s",s);while(si!='0')if(si=c)si=si-32;elseif(si=c-32)si=si+32;i+;puts(s);操作題:1. 下列給定程序中,函數(shù) 分元素中的值對(duì)換。形參A)ahAMaB)AbAMaC)AhAMa空格ahAD)ahAMa空格ahAfun()的功能是:將形參a所指數(shù)組中的前半部分元素中的值與后半部n中存放數(shù)

35、組中數(shù)據(jù)的個(gè)數(shù),若n為奇數(shù),則中間的元素不動(dòng)。例如:若薪指數(shù)組中的數(shù)據(jù)為:1、2、3、4、5、6、7、8、9,則調(diào)換后為:6、7、8、9、5、1、2、3、4。請(qǐng)?jiān)诳瞻滋幪钊胝_內(nèi)容,使程序得出正確的結(jié)果。(源程序在考生文件夾"WEXAM00000000"下)不得增行或刪行,也不得更改程序的結(jié)構(gòu)!#include<stdio.h>#defineN9voidfun(inta,intn)inti,t,p;p=(n%2=0)?n/2:n/2+1;for(i=0;i<n/2;i+)t=ai;ai=ap+i;ap+i=t;main()intbN=1,2,3,4,5,6

36、,7,8,9,i;printf("nTheoriginaldata:n");for(i=0;i<N;i+)printf("%4d",bi);printf("n");fun(b,N);printf("nThedataaftermoving:n");for(i=0;i<N;i+)printf("%4d",bi);printf("n");第八章函數(shù)1以下函數(shù)值的類(lèi)型是。Afun(floatx)floaty;y=3*x-4;returny;A)intB)不確定C)void

37、D)float2以下程序的輸出結(jié)果是。B#include<stdio.h>inta,b;voidfun()a=100;b=200;main()inta=5,b=7;fun();printf("%d%dn",a,b);A)100200B)57C)200100D)753以下程序的輸出結(jié)果是。C#include<stdio.h>intx=3;main()inti;for(i=1;i<x;i+)incre();incre()staticintx=1;x*=x+1;printf("%d",x);A)33B)22C)26D)254以下程

38、序的輸出結(jié)果是。B#include<stdio.h>intf(intn)if(n=1)return1;elsereturnf(n-1)+1;main()inti,j=0;for(i=1;i<3;i+)j+=f(i);printf("%dn",j);A)4B)3C)2D)15以下程序的輸出結(jié)果是。A#include<stdio.h>intd=1;fun(intp)intd=5;d+=p+;printf("%d",d);main()inta=3;fun(a);d+=a+;printf("%dn",d);A)8

39、4B)96C)94D)856.函數(shù)調(diào)用strcat(strcpy(stst,str3)勺功能是。CA)將字符串stU復(fù)制到字符串str2中后再連接到字符串str3之后B)將字符串stU連接到字符串str2之后再?gòu)?fù)制到字符串str3之后C)將字符串str2復(fù)制到字符串stU中后再將字符串str3連接到字符串strl之后D)將字符串str2連接到字符串strl之后再將字符串stU復(fù)制到字符串str3中7.有如下程序:intsub(intn)if(n<5)return0;elseif(n>12)return3;return1;if(n>5)return2;main()inta=10

40、;printf("%dn",sub(a);該程序的輸出結(jié)果是。BA)0B)1C)2D)38以下程序的輸出結(jié)果是。C#include<stdio.h>intd=1;fun(intp)staticintd=5;d+=p;printf("%d",d);return(d);main()inta=3;printf("%dn",fun(a+fun(d);A)699B)669C)61515D)66159在一個(gè)源文件中定義的外部變量的作用域?yàn)?。DA)本文件的全部范圍B)本程序的全部范圍C)本函數(shù)的全部范圍D)從定義該變量的位置開(kāi)始至本文件

41、結(jié)束10 .以下敘述中正確的是。BA)全局變量的作用域一定比局部變量的作用域范圍大B)靜態(tài)(static)類(lèi)別變量的生存期貫穿于整個(gè)程序的運(yùn)行期間C)函數(shù)的形參都屬于全局變量D)未在定義語(yǔ)句中賦初值的auto變量和stati較量的初值都是隨機(jī)值11 以下對(duì)C語(yǔ)言函數(shù)的描述中,正確的是。AA)C程序由一個(gè)或一個(gè)以上的函數(shù)組成B)C函數(shù)既可以嵌套定義又可以遞歸調(diào)用C)函數(shù)必須有返回值,否則不能使用函數(shù)D)C程序中調(diào)用關(guān)系的所有函數(shù)必須放在同一個(gè)程序文件中12 .C語(yǔ)言中形參的默認(rèn)存儲(chǔ)類(lèi)別是。AA)自動(dòng)(auto)B)靜態(tài)(static)C)寄存器(register)D)外部(extern)13以下

42、敘述中不正確的是。BA)在C語(yǔ)言中,調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳送給形參,形參的值不能傳送給實(shí)參B)在C函數(shù)中,最好使用全局變量C)在C語(yǔ)言中,形式參數(shù)只是局限于所在函數(shù)D)在C語(yǔ)言中,函數(shù)名的存儲(chǔ)類(lèi)別為外部14. C語(yǔ)言中函數(shù)返回值的類(lèi)型由決定。DA)return語(yǔ)句中的表達(dá)式類(lèi)型B)調(diào)用函數(shù)的主調(diào)函數(shù)類(lèi)型C)調(diào)用函數(shù)時(shí)的臨時(shí)類(lèi)型D)定義函數(shù)時(shí)所指定的函數(shù)類(lèi)型15. C語(yǔ)言規(guī)定,調(diào)用一個(gè)函數(shù)時(shí),實(shí)參變量和形參變量之間的數(shù)據(jù)傳遞是。CA)地址傳遞B)由實(shí)參傳給形參,并由形參返回給實(shí)參C)值傳遞D)由用戶(hù)指定傳遞方式16在C語(yǔ)言中。DA)函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套B)函數(shù)的定義和

43、調(diào)用均可以嵌套C)函數(shù)的定義和調(diào)用均不可以嵌套D)函數(shù)的定義不可以嵌套,但函數(shù)的調(diào)用可以嵌套17以下函數(shù)調(diào)用語(yǔ)句中,含有的實(shí)參個(gè)數(shù)是。Afun(x+y,(e1,e2),fun(xy,d,(a,b);A)3B)4C)6D)818以下程序的輸出結(jié)果是。C#include<stdio.h>fun(intx)staticinta=3;a+=x;return(a);main()intk=2,m=1,n;n=fun(k);n=fun(m);printf("%d",n);A)3B)4C)6D)919以下程序的輸出結(jié)果是。D#include<stdio.h>intf

44、unc(inta,intb)return(a+b);main()intx=2,y=5,z=8,r;r=func(func(x,y),z);printf("%dn",r);A)12B)13C)14D)15第9章指針1.在說(shuō)明語(yǔ)句:int*f();中,標(biāo)識(shí)符f代表的是。DA)一個(gè)用于指向整型數(shù)據(jù)的指針變量B)一個(gè)用于指向一維數(shù)組的行指針C)一個(gè)用于指向函數(shù)的指針變量D)一個(gè)返回值為指針型的函數(shù)名2以下程序的輸出結(jié)果是。A#include<stdio.h>#include<string.h>main()char*p="abcde0fghjik0&

45、quot;printf("%dn",strlen(p);A)12B)15C)6D)53 .設(shè)有以下語(yǔ)句,則不是對(duì)裁組元素的正確引用,其中0Wi<10。Dinta10=0,1,2,3,4,5,6,7,8,9,*p=a;A)ap-aB)*(&ai)C)piD)*(*(a+i)4 .以下程序段的輸出結(jié)果是。Aint*var,ab;ab=100;var=&ab;ab=*var+10;printf("%dn",*var);A)110B)100C)0D)出現(xiàn)錯(cuò)誤5設(shè)有如下的程序段:Bcharstr="Hello"char*p

46、tr;ptr=str;執(zhí)行上面的程序段后,*(ptr+5)的值為。A)'o'B)''0'C)不確定的值D)'o'的地址6.若有以下定義和語(yǔ)句:A#include<stdio.h>inta=4,b=3,*p,*q,*w;p=&a;q=&b;w=q;q=NULL;則以下選項(xiàng)中錯(cuò)誤的語(yǔ)句是。A)*q=0;B)w=p;C)*p=a;D)*p=*w;7下面函數(shù)的功能是。Bsss(s,t)char*s,*t;while(*s)&&(*t)&&(*t+=*s+);return(*s-*t);A

47、)求字符串的長(zhǎng)度B)比較兩個(gè)字符串的大小C)將字符串s復(fù)制到字符串t中D)將字符串s接續(xù)到字符串t中8 .有以下程序:#include<stdlib.h>main()char*p,*q;p=(char*)malloc(sizeof(char)*20);q=p;scanf("%s%s",p,q);printf("%s%sn",p,q);若從鍵盤(pán)輸入:abcdef<回車(chē)>,則輸出結(jié)果是。AA)defdefB)abcdefC)abcdD)dd9 .若有以下說(shuō)明和定義:typedefint*INTEGER;INTEGERp,*q;以下敘述

48、正確的是。BA)p是int型變量B)p是基類(lèi)型為int的指針變量C)q是基類(lèi)型為int的指針變量D)程序中可用INTEGER代替int類(lèi)型名10說(shuō)明語(yǔ)句int*(*p)();的含義是。DA) p是一個(gè)指向int型數(shù)組的指針B) p是指針變量,它構(gòu)成了指針數(shù)組C) p是一個(gè)指向函數(shù)的指針,該函數(shù)的返回值是一個(gè)整型D)p是一個(gè)指向函數(shù)的指針,該函數(shù)的返回值是一個(gè)指向整型的指針11 .已知char*p,*q;,選擇正確的語(yǔ)句。CA)p*=3;B)p/=q;C)p+=3;D)p+=q;12 .已知inti,x34;,則不能將x11的值賦給變量i的語(yǔ)句是。CA)i=*(*(x+1)+1);B)i=x11

49、;C)i=*(*(x+1);D)i=*(x1+1);13下列程序的輸出結(jié)果是。B#include<stdio.h>intb=2;intfunc(int*a)b+=*a;return(b);main()inta=2,res=2;res+=func(&a);printf("%dn",res);A)4B)6C)8D)1014有如下程序段:int*p,a=10,b=1;p=&a;a=*p+b;執(zhí)行該程序段后,a的值為。BA)12B)11C)10D)編譯出錯(cuò)15對(duì)于基類(lèi)型相同的兩個(gè)指針變量之間,不能進(jìn)行的運(yùn)算是。CA)<B)=C)+D)-16如下程序

50、的輸出結(jié)果是。C#include<stdio.h>main()charch25="6937","8254",*p2;inti,j,s=0;for(i=0;i<2;i+)pi=chi;for(i=0;i<2;i+)for(j=0;pij>'0'j+=2)s=10*s+pij-'0'printf("%dn",s);A)69825B)63825C)6385D)69382517當(dāng)調(diào)用函數(shù)時(shí),實(shí)參是一個(gè)數(shù)組名,則向函數(shù)傳遞的是。BA)數(shù)組的長(zhǎng)度B)數(shù)組的首地址C)數(shù)組每一個(gè)元素的地址

51、D)數(shù)組每個(gè)元素中的值18 .若有說(shuō)明語(yǔ)句:inta,b,c,*d=&c;,則能正確從鍵盤(pán)讀入3個(gè)整數(shù)分別賦給變量ab、c的語(yǔ)句是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;,貝Uprintf("%dn",*b);的輸出結(jié)果為。DA)無(wú)確

52、定值B)古勺地址C)512D)511第10章編譯預(yù)處理和動(dòng)態(tài)存儲(chǔ)分配1 .對(duì)下面程序段,正確的判斷是。B#defineA3#defineB(a)(A+1)*a)x=3*(A+B(7);A)程序錯(cuò)誤,不許嵌套宏定義B)x=93C)x=21D)程序錯(cuò)誤,宏定義不許有參數(shù)2.以下程序的輸出結(jié)果為。B#include<stdio.h>#defineF(y)3.84+y#definePR(a)printf("%d",(int)(a)#definePRINT(a)PR(a);putchar('n')main()intx=2;PRINT(F(3)*x);A)8

53、B)9C)10D)113 .以下說(shuō)法中正確的是。CA)#define和printf都是C語(yǔ)句B)#define是C語(yǔ)句,而printf不是C)printf是C語(yǔ)句,但#define不是D)#define和printf都不是C語(yǔ)句4 .以下程序的輸出結(jié)果是。C#definef(x)x*x#include<stdio.h>main()inta=6,b=2,c;c=f(a)/f(b);printf("%dn",c);A)9B)6C)36D)185 .以下程序運(yùn)行后,輸出結(jié)果是。B#definePT5.5#defineS(x)PT*x*x#include<stdi

54、o.h>main()inta=1,b=2;printf("%4.1fn",S(a+b);A)49.5B)9.5C)22.0D)45.06 .下列程序執(zhí)行后的輸出結(jié)果是。B#defineMA(x)x*(x-1)#include<stdio.h>main()inta=1,b=2;printf("%dn",MA(1+a+b);A)6B)8C)10D)127 .有如下程序:#defineN2#defineMN+1#defineNUM2*M+1main()inti;for(i=1;i<=NUM;i+)printf("%dn&quo

55、t;,i);該程序中的for循環(huán)執(zhí)行的次數(shù)是。CA)5B)6C)7D)88.程序中頭文件typel.h的內(nèi)容是:#defineN5#defineM1N*3程序如下:#include"type1.h"#defineM2N*2main()inti;i=M1+M2;printf("%dn",i);程序編譯后運(yùn)行的輸出結(jié)果是。CA)10B)20C)25D)309.以下正確的描述為。CA)每個(gè)C語(yǔ)言程序必須在開(kāi)頭使用預(yù)處理命令#include<stdio.h>B)預(yù)處理命令必須位于CM程序的首部C)在C語(yǔ)言中預(yù)處理命令都以"#"開(kāi)頭

56、D)C語(yǔ)言的預(yù)處理命令只能實(shí)現(xiàn)宏定義和條件編譯的功能10.從下列選項(xiàng)中選擇不會(huì)引起二義性的宏定義是。DA)#definePOWER(x)x*xB)#definePOWER(x)(x)*(x)C)#definePOWER(x)(x*x)D)#definePOWER(x)(x)*(x)11 .設(shè)有以下宏定義:#defineN3#defineY(n)(N+1)*n)則執(zhí)行語(yǔ)句"z=2*(N+Y(5+1)后,z的值為。CA)出錯(cuò)B)42C)48D)5412 .若有宏定義#defineMOD(x,y)x%y,則執(zhí)行以下語(yǔ)句后的輸出為。Bintz,a=15,b=100;z=MOD(b,a);pr

57、intf("%dn",z+);A)11B)10C)6D)宏定義不合法13 .以下程序的輸出結(jié)果是D#include<stdio.h>inta33=1,2,3,4,5,6,7,8,9,*p;main()p=(int*)malloc(sizeof(int);f(p,a);printf("%dn",*p);free(p);f(int*s,intp3)*s=p11;A)1B)4C)7D)5第11章結(jié)構(gòu)體與共用體1 .在1驗(yàn)的PC機(jī)上使用C語(yǔ)言,若有如下定義:Dstructdatainti;charch;doublef;b;則結(jié)構(gòu)變量b占用內(nèi)存的字節(jié)數(shù)

58、是。A)1B)2C)8D)112設(shè)有以下說(shuō)明和定義語(yǔ)句,則下面表達(dá)式中值為3的是。Dstructsinti;structs*i2;staticstructsa3=1,&a1,2,&a2,3,&a0;staticstructs*ptr;ptr=&a1;A)ptr->i+B)ptr+->IC)*ptr->i3.有以下程序:main()unionunsignedintn;unsignedcharc;u1;u1.c='A'printf("%cn",u1.n);執(zhí)行后輸出結(jié)果是CA)產(chǎn)生語(yǔ)法錯(cuò)B)隨機(jī)值C)A4設(shè)有以下說(shuō)明語(yǔ)句:Cstructstuinta;floatb;stutype;則下面的敘述正確的是。A)struct是結(jié)構(gòu)體類(lèi)型名C)stutyp混用戶(hù)定義的結(jié)構(gòu)體變量名5.以下程

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論