湖南工业大学C语言理论考试.pdf
C 语言概述(3*1.5)、C语言程序的基本单位是()。(3分)o A、,B、C C、O D、函过子子数程程例序程、ABcDA2、下列各选项中,合法的c语言关键字是()。(3分)H,A、B、&C、,Q D、DA、i nt egexB、s i nC、s t r i ngD、v oi d3、下列选项中,是C语言提供的合法的关键字的是()(3分)A、1 B、e C、QDx cA、s wi ct hB、cherCN defau l tD、Cas e4、C语言的程序一行写不下时,应该().(3分)A s B、OC,ODs AA、用回车符换行B、在任意一个空格处换行C、用分号拗行D、用逗号换仃5、以下选项中正确的整型常量是()。(3分)A、。B、C、D、BA、34.1B、-8 0C、2,000D、1 2 36、下列不合法的十六进制数是()(3分)A、O B、O C、O D、AA、oxffB、OXcdeC、Oxl lD、0 x237、在c语言中,下列合法的字符常量是()(3分)O A、O B、&C、D、BA、039 B、x76C、abD、8、以下选项中合法的用户标识符是()(3分)A、C B、O C、(D、DA、i ntB、a#C、5memD、_2439、()是构成c语言程序的基本单位(3分)BOCD数量程句Q函变子语。A SB XCXDX、一个C语言程序总是从()开始执行(3分)O A、o B、,C、,D、主主子主过函程程序程数序序B11、以下叙述不正确的是()(3分)A、B、C、。D、A、一个c源程序可由一个或多个函数组成B、一个C源程序必须包含一个mai n。函数C、c程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面12、以下叙述正确的是()(3分)A、B、。D、A、在C程序中,mai n。函数必须位于程序的最前面B、C程序的每行中只能写一条语句C、C语言本身没有输入输出语句D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误C13、在C语言中,数字029 是一 个 O (3分)A、B、A、八进制数B、十六进制数C、十进制数C、。D、D、非法数14、以下说法巾正确的是()(3分)C A、B、。C、D、CA、C语言程序总是从第一个的函数开始执行B、在C语言程序中,要调用的函数必须在mai n。函数申定义C、C语言程序总是从mai n。函数开始执行D、C语言程序中的mai n()函数必须放在程序的开始部分15、C语言可执行程序的开始执行点是()(3分)B、。C、D、cA、程序中的一条可执行语句B、程序中第一个函数C、程序由的mai n函数D、包含文件申的第一个函数16、C程序是()(3分)A、o B、C、A、顺序执行B、从Mai n函数开始C、从函数体开始D、任意语句BD、17、C语言程序的基本单位是_ _ _ _ _ _ _.(吩)CA s B、GCs CD,、BCD语函程字句数序符j仃B18、以下叙述正确的是()(吩)A、霁,B、C、Dx _|CA、在C程序中,mai n函数必须位于程序的最前面B、C程序的每行中只能写一条语句C、C语言本身没有输入输出语句D、在前一个C程序进行编译的过程巾,可发现注释中的拼写错误19、以下叙述不正确的是(吩)空 A、Jl.B s D、DA、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个mai n函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面20、C语言规定,在一个源程序巾,mai n函数的位置()(吩)OA x tB、C、D、J cA、必须在最开始B、必须在系统调用的库函数的后面C、可以任意D、必须在最后字符数组Q*1.5)1、若有以下语句,则正确的描述是()。char x=12345”;char y=J ,2,3,4,5 ,(3分)_ A、B、Jj Cs =0 D、FA、x数组和y数组的长度相同B、x数组长度大于殿组长度C、x数组长度小于殿组长度D、x数组等价于檄组2、设有数组定义:char ar r ay=Chi na”,,贝擞组ar r ay所占的空间为()。(3分)C A、(B、o C、Q D、A、4个字节B、5个字节C、6个字节D、7个字节C3.、有以下程序:*i ncl u de#i ncl u demai n()char 式=,b,c,d,e,F,/,h,;i nt i,j;i=s i z eof(a);j=s t r l en(a);pr i nt f(M%d,%d n”,i,j);程序运行后的输出结果是()。(3分)A x 蕈 B、L C、7、99889819、ABcD4、以下程序的输出结果是()。#i ncl u dei ncl u demai nOchar s t r 12=s ,t,/,i,n,g;pr i nt (“%d n ,s t r l en(s t r)J (3分)A、c B x c、ODX Jrk、6B、7C、11D、125、对两个数组丽b进行如下初始化:char a=A B CDEF”:char b=,A ,B ,C,D,E,F;则以下叙述正确的是()。(3分)A、B、C%”、院数组后数组b完全相同B、数组后数组b长度相同C、额组后数组b中都存放字符串D、数组a比额组b长度长6、有下面的程序段:char a3,b=C h i n a”;a=b;pr i nt f%s”,a);则()。G分)A x B、C%D xA、运行后将输出Chi naB、运行后将输出chC 运行后将输出ChiD、编译出错7、判断字符串s i是否大于字符串s2,应当使用()。(3分)A B x C x D、A、i f(s l s 2)B i f(s t r cr ap(s i,s 2)C i f(s t r cmp(s 2,s l)s 2)0)8、下面程序的运行结果是()#i ncl u de.m a i n。char ch7=M 12ab56M ;i nt i,s=0for (i=0;chi =#0,&chi N 3分)A、B、C、D、10、下列程序执行后的输出结果是mai n。char ar r 2 4:s t r cpy(ar r,you);s t r cpy(ar r 1?*me*):ar r 03=*t f;pr i nt fC%s n”,ar r);N 3 分)A、1B 1 1C x;D、J AA、you&neB、youC v meD、er r11、设有数组定义:char ar r ay =*Chi na则 数 组 ar r ay所占的空间为(3分)A、4个字节B、5个字节C、6个字节D、7个字节12、当执行下面的程序时,如果输入A B C,则输出结果是h ncl u de“s t di o.hi ncl u de“s t r i ng,hnai nO char s s 10=l,2,3,4,5”;j et s (s s);s t r cat (s s,“678 9);pr i nt f C%s n s s);IG 分)A、1 B、E,C*E D、AA、A B C678 9B、A B C67C、12345A B C6D、A B C45678 913、以下程序的输出结果是nai n()char ch34=*123%456,*78*Ji nt i ;For(i=01 i 卜(3分)A、B、C、D A、12345678 0B、123 456 78 0C、12345678D、147【4、给出以下定义::har x=*abcdefg*:har y=C a/b,/c /d /e /f/g ;则正确的叙述为8 分)A、B、C x D xA、数组X和数组Y 等价B、额组x和数组Y 的长度相同C、数组X的长度大于数组Y 的长度D、数组X的长度小于数组Y 的长度15、以下程序的输出结果是mai n()char ch34=123,456。*78*;i nt i;for (i=05 i 3;i+)pr i nt f chi);(3分)A、B x C%D A、12345678 0B、123 456 78 0C、12345678D、14716、以下程序运行后,输出结果是mai nO char cht 25=*69 3*8 25*),*p2;i nt i,j s=0;for (i=0;i 2;i+)pi=chi;for (i=0;i 2,i+)for (j=O;pi O A&pi j ;j+=2)s=10*s+pi j-O;pr i nt f C%dn*,s);N 3 分)A、C B x C%(D、A、638 5B、22C、33D、69 38 2516、以下程序运行后,输出结果是mai n。char ch25=*69 3%=8 25,*p2;i nt i,j,s=0;for (i=0;i i+)pi=chi:for (i=0;i =0?M pi j(r ;pr i nt(%小”,s);N 3 分)0 A、-CB D、A、638 5B、22C、33D、69 38 2517、下列程序执行后的输出结果是mai nO(char ar r 24;s t r cpy(ar r OL*you*);s t r cpy(ar r l z me);ar r t Oj D;pr i nt f(*%s n,ar r);N 3 分)o A、J l C-C 震 D、一A s you ft meB、youC meD、er r18、以下程序运行后,输出结果是nai nO char ch25=*69 3*8 25,*p2:i nt i,j,s=0;Eor (i=0;i 2;i+)pi=chi;Eor (i=0;i =0皴 pi j =O&chi 9 ;i+=2)s=10*s+chi _ O;pr i nt f,s);N 3 分)觑心 B x C x D xA s 12ba56B、6521C、6DN 62函 数(5*1.5)1、请读程序:f(i nt b,i nt n)(i nt i,r;r=l;for(i=0;i D、6A、12B、13C、14D、1513、在C语言中,函数的隐含存储类别是(吩).A、C B、OC.ODx J CA s au t oB、s t at i cC、ext er nD、无存储类别14、以下程序的输出结果是()。t t i ncl u dev oi d fu n(fl oat$a,fl oat *b)(fl oat W;$a=*a+*a:w=*a:*a=*b:*b=W:.mai nO(fl oat X=2.0,Y=3.0;fl oat *px=&x,*PY=&y;fu n(px,PY);pr i nt f(w%2.(3分)O A、OC O D、_A、4,3B、2,3C、3,4D、3,215s下列程序段的输出结果是()#i ncl u dev oi d fu n(i nt *x,i nt *Y)(pr i nt f(%d%d *X,*Y);*X=3;*Y=4;mai nOi nt X=l,Y=2jfu n(&y,&x);pr i nff(w%d%d”,x,Y)?(吩)A、B、OCs ED.A、2 1 4 3B x 1 2 1 2Cs 2 1 2 1Ds 2 1 3 416s下面程序的输出结果是()。i ncl u demai nOi nt a=1,2,3,4,5,6,7,8,9,0,*p;P=a:p r i n t f%d n ,*P+9);)(吩)。A、(B、OC|OD JA、0B、1C、1017、若 定 义,i nt a=511,*b=&a;,贝i j pr i nt f(%d n ,*b);的输出结果为()。(3分)_ O A、C B、C Cs D、DA、无确定值B、a的地址C、512D、51118、以卜程序的输出结果是(J。/i ncl u de/i ncl u demai nOchar *P=abcde0fghj i k 0;pr i nt f(w%d n”,s t r l en(P)j(吩)A、此 B、J g C s Q D s AA、12B、15C、6D、519、设有以下语句,贝M )不是对遨组元素的正确引用,其中04i 10。i nt a10=0,1,2,3,4,5,6,7,8,9 ,*P=a5(3分)A、J O B、C、D、DA、aP aB、*(&ai)C、Pi Ds *(*(a+i)20、请选出以下程序的输出结果()。includemainO int a=l,2,3,4,i;int X=0;for(i=0j iA、可以把defi ne和i f定义为用户标识符DB、可以把defi ne定义为用户标识符,但不能把i f定义为用户标识符C、可以把i 淀义为用户标识符,但不能把defi ne定义为用户标识符D、defi ne和i 嘟不能定义为用户标识符3、以下程序的输出结果是#defi ne f(x)x*xmai n()i nt a=6,b=2,c;c=f(a)/f(b);pr i nt f(%d n,c)jA s O B、C、Z D、CA、9B、6C、36D、184、请读程序:#defi ne A DD(x)x+xmai nO(i nt i n=l,n=2,k=3;i nt s u m=A DD(i r r l-n)*k;pr i nt f(s u i nP%d,s u m);)上面程序的运行结果是(吩)A、CB x C、C)D、BA、SUITF9B、s u r o=10C、s u r o=12D、s u m=185、以下程序的运行结果是#defi ne MIN(x,y)(x)CB x C、O D、BA s 10B、15C、100D、150b、以|、欷74M、止碉6足(3分)A、B、。C、D、CA、预处理命令行都必须以#号开始B、在程序中凡是以#号开始的语句行都是预处理命令行C、C程序在执行过程中对预处理命令行进行处理D、以下是正确的宏定义#defi ne IB M_PC7、以下程序的输出结果是defi ne f(x)x*xr oai n()i nt a=6,b=2,cjc=f(a)/f(b)jpr i nt f(/z%d n”,c);(吩)OA x B、C、O D、_A、9B、6C、36n、1 RX、执 仃I、回刖程序后,a刖值是defi ne SQR(X)X*Xmai n()i nt a=10,k=2,nr l;a/=SQR(k+i n)/SQR(k+i n);pr i nt f a);)(吩)A、B、C、D、BA.10B、1C、9D、09、以下程序运行后,输出结果是#defi ne PT 5.5t t di fi ne S(x)PT*x*xmai nO i nt 3=1,b=2;pr i nt (%4.If/n”,S(a+b);(吩)0 A、B、G C、D、BA、49.5B、9.5C、22.0D、45.010、下列程序执行后的输出结果是t t defi ne MA(x)x*(x-l)mai n。i nt a=l,b=2zpr i nt f(%d n”,MA(l+a+b);(3分)Jj f.-A x B、QCS D、BA、6B、8C、10D、1211、以下叙述中正确的是()。A)用#i ncl u de包含的头文件的后缀不可以是“.a”B)若一些源程序中包含某个头文件,当该头文件有错时,只需对该头文件进行修改,包含此头文件的所有源程序不必重新进行编译、c)宏命令行可以看做是一行c语句D)C编译中的预处理是在编译之前进行的(3分)O A、(B、:OC D、力;A、AB、BC、CD、D12、下面是对宏定义的描述,不正确的是(晨A)宏不存在类型问题,宏名无类型,它的参数也无类型B)宏替换不占用运行时间C)宏替换时先求出实参表达式的值,然后代入形参运算求值D)其实,宏替换只不过是字符替代而已(3分)_ C A、B、C C、J D、cA、AB、BC、CD、D13以下程序的输出结果为()。#i ncl u dedefi ne SQR(x)x*x.mai nO(i nt a,k=3;a=+SQR(k+l);pr i nt f(w%d n”,a);(吩)“A、B、龄 C、”、DA、6B、10C、8D、914、以下说法中正确的是()。A)#defi ne和pfi nff都是C语句C)#defi ne是C语句,而pr i nt f不是Opfi nff C语句,但/加行血不是D)#defi ne和pr i nt面不是C语句(3分)A、&B、C、O D、_ j|cA、AB、BC、CD、D15、下列程序执行后的输出结果是()。#defi ne MA(x)X*(X-l)#i ncl u demai n。i nt a:1,b=2;pr i nt f(,9%d n”,MA(l+a+b);(3分)O A、9 B、O C、D、BA、6B、8Cs 10D、1216、有如下程序:defi ne N 2t t defi ne M N+ldefi ne NUM 2*M+1mai nO i nt i;for(i=l:i=NUM;i+)pr i nt f(%d n ,i);)该程序中的for循环执行的次数是()。(3分)A、B、C、o D、BA、5B、6C、7D、817、程序中头文件t ypel.h的内容是:defi ne N 5defi ne Ml N*3程序如下:#i ncl u de t ypel.h#defi ne M2 N*2mai n。i nt i;i=Ml+M2;pr i nt f(w%d n ,i);程序编译后运行的输出结果是()。(3分)&A、I。B、0 C、。口、lA x 10B、20C、25D、3018、以下正确的描述为()。A)每个C语言程用必须在开头使用预处理命令#i ncl u deB)预处理命令必须位于C源程序的首部C)在C语言中预处理命令都以“旷开头D)C语言的预处理命令只能实现宏定义和条件编译的功能(3分)三 C A、(B、6 C、O D、A、AB、BC、CD、DL9、语句t ypedef l ong cl as s 的作用是()。(3分)A、OB s C、D、5A、建立了一种新的数据类型B、定义了一个整型变量C、定义了一个长整型变量D、定义了一个新的数据类型标识符20、若有以下宏定义:*defi ne N 2早 defi ne Y(n)(N+l)*n)则执行语句z=2*(N+Y(5);后的结果是()。(3分)BA、6 B、C、6D、BA、语句有错误B、z 二 34C、z=70Ds z 无定值指针(1*1.5)1、下列程序的输出结果是int b=2;int func(int*a)b+=*a;return(b);mainO int a=2,res=2;res+=func(&a);print f(/z%d n”,res);(吩)OAx B、OCx D、BA、4B、6C、8D 102、若已定义:int a=0,1,2,3s 4,5,6,1,&9,*p=a,i;其 中0 i*(&ai)C、piD、a103、,下列程军的运行竺果是void fun(int*a,int*b)int*k;k=a;a=b;b=k;.mainO int a=3,b=6,*x=&a,*y=&b;fun(x,y);print f(/x%d%d/z,a,b);)(3分)A、B、OCs CD、BAs 6 3B、3 6C、编译出错Dx 0 0(3分)6 A、e,B、C、6 D、JDA x r oai n(i nt a,char *c)B、mai n(i nt ar c,char *ar v)C、mai n(i nt ar gc,char *ar gv)D、i nai n(i nt ar gv,char *ar gc)5、若有说明:i nt i,j=2,*p=&i;,则能完成i=j耐值功能的语句是(吩)A、B、,C、E,D、A、i=*p;B、p*=*&j;C、i=&j;D、i=*p;6、以下定义语句中,错误的是(3分)A、i nt a=l,2;B、char *a3;C、char s 10二t es t;Ds i nt n=5,a n;7、已有定义i nt k=2;i nt pt r l,*pt r 2;且pr t l和pt r 2均已指向变量k,下面不能正确执行的赋值A、。B、C、D、EA、k=*pt r l+*pt r 2;B、pt r 2=k;C、pt r l=pt r 2;D、k=*pt r l*(*pt r 2);8、若有语句i nt poi nt,a=4;和poi nt二&a;下面均代表地址的一组选项是(吩)A、B、C、。D、DA s a,poi nt,*&aB、&*a,&a,*poi ntCs *&poi nt,*poi nt,&aD、fe+poi nt,poi nt9、若有说明:i nt *pl,*p2,i i f=5,n;以下均是正确赋值语句的选项是(吩)一A、B、C、C D.jcA、pl=&i n;p2=&plB、pl=&m;p2=&n;*pl=*p2;C、pl二如;p2=pl;D、pl=&m;*p2=*pl;10、下面能正确进行字符串赋值操作的是(吩)O A、QB、OCX ODXCA、B、C、D、charcharcharchars l bj=t A bCDE J;*s;s=A B CDE;*s;s canf(%s,s);11、若 有I:囱的犁予段:char s=chi na”,char *p,p=s;则下列叙述正确的是(3分)匚 A、C B (:Cs D、,DA、s 和p完全相同B、数组s 中的内容和指针变量p中的内容相等C、s 数组长度和p所指向的字符串长度相等D、*p与s 0相等12、若有以明语句“char a=/It i s mi ne”;char *p=It i s mi ne”;则以下不正确的叙述是(吩)J&A、绘,B、,0 C、您D、万A、a+1表示的是字符t 的地址B、p指向另外的字符串时,字符串的长度不受限制C、P变量中存放的地址值可以改变D、a巾只能存放10个字符13、以下程序的输出结果是mai n()char *s=12134211;i nt v 4=0,0,0,0,k,i;for (k=0?s k ;k+)s wi t ch(s k)cas e T:i=0;cas e 2:i=l;cas e 3:i=2;cas e 4:i=3;)v i+;)for(k=0;k 4;k+)pr i nt f(/z%d”,v k);(吩)A、。B、C、Ds BA、4 2 1 1B s 0 0 0 8Cx 4 6 7 8Ds 8 8 8 814、以下程序的输出结果是mai n()char *ph*p2,s t r 50=/A B CDEFG/;pl =abed;p2=/efgh/;s t r cpy(s t r+l,p2+l);s t r cpy(s t r+3,pl+3);pr i nt f(%s,s t r);(吩)A、O B、C、D、DA、A fghdEFGB、A bfhdC、A fghdD、A fgd15、若有以下定义和语句:dou bl e r=9 9,*p=&r;*=p=r j则以下正确的叙述是(3分)O A、O B、C、C D、bA、以下两处的*p含义相同,都说明给指针变量p赋值B、在dou bl e r=9 9,*p=&r;”中,把i的地址赋值给了p所指的存储单元C、语句*P=r;”把变量r的值赋给指针变量pD、语句*p=r;”取变量r的值放回r中16、若有以下的说明和语句,则在执行for语句后,*(*(pt+l)+2)表示的数组元素是i nt t 3 3,*pt(3,k;for (k=Oj k BA、*p表示的是指针变量p的地址B、*p表示的是变量a的值.而不是变量a的地址C、*p表下的是指针变量p的殖D、*P只能用来说明P是一个指针变量复杂数据类型(1、在c语言中,下面那种数据类型不属于构造类型()(吩)_j )A x 覃心、OC.o D、AA、枚举类型B、数组类型C、结构体类型D、共用体类型2、C语言结构体类型变量在程序执行期间(3分)A、0 B、e C、O D AA、所有成员一直驻留在内存中B、只有一个成员驻留在内存中C、部分成员驻留在内存申n、沿有成吊酢留在内存由3、在16位IB M-PC机上使用C语言,若有如下定义s t r u ct dat ai nt i;char ch;dou bl e f;b;、一则结构变量b占用内存的字节数是(3分)O A、Q B、OCs 您 D、A、1B、2C、8D、114、在下列定义中的共用体所占内存字节数是()u ni onchar k ;s t r u cti nt m;fl oat f;a;dou bl e d;b;(3分)A、B、C、D、_ AA、8B、14C、18D、105、根据下面的定义,能打印出字母M 的语句是s t r u ct per s on char name9;i nt age;);“s t r u ct per s on cl as s 10二 John”,17,“Pau l、19,Mar y”,18,adam”,16);(3分)=O A、O B、6 C、O D、:DA、pr i nt f cl as s 3.name);B、pr i nt f(%cn,cl as s 3.name1);C、pr i nt f(%cn”,cl as s 2.name1);D、pr i nt f(%cn”,cl as s 2.name0);6、设有以下说明语句s t r u ct s t ui nt a,fl oat b;s t u t ype;则下面的叙述不正确的是(3分)0 A、B、C、D、A、s t r u ct 是结构体类型的关键字B、s t r u ct s t u 是用户定义的结构体类型C、s t u t ype是用户定义的结构体类型需D、a和b都是结构体成员名7、设有如下说明t ypedef s t r u ct STl ong a;i nt b;char c2;NEW;则下面叙述中正确的是_ _ _ _ _。(3分)_ O A、B、O C、O D、CA、以上的说明形式非法B、ST是一个结构体类型C、NEW是一个结构在类型D、NEW是一个结构体变量8、设有如下说明t ypedef s t r u ct i nt n;char c;dou bl e x;STD;则以下选项中,能正确定义结构体数组并赋初值的语句是(3分)A、。B、C、D、AA、STD t t 2=l/A 62,2,B,75 ;B、STD t t =1A”,62,2,B ,75;C、s t r u ct t t 2=1,J A3 ,2,B ;D、s t r u ct t t 2=l,62.5,2,B”,75.0 ;9、以下对结构体类型变量t d的定义中,错误的是_ _ _ _ _。A.t ypedef s t r u ct aaB.s t r u ct aa i nt n;i nt n;fl oat m;fl oat m;A A;t d;A A t d;s t r u ct aa t d;C.s t r u ctD.s t r u ct i nt n;i nt n;fl oat m;fl oat m;aa;t d;s t r u ct aa t d;(3分)cl Us k A I、性牙刖心仃花来是/i ncl u demai n 0 s t r u ct dat e(i nt year,mont h,day;t oday;pr i nt f(%dn”,s i z eof(s t r u ct dat e);)(3分)A、O B、O C、O D、A、6B、8C、10D、1211、以下叙述中错误的是(3分)=OA s O B、C、O D、A、可以通过t ypedef增加新的类型B、可以用t ypedef将已存在的类型用一个新的名字来代表C、用t ypedef定义新的类型名后,原有类型名仍有效D、用t ypedef可以为各种类型起别名,但不能为变量起别名12、以下时结构体类型变量的定义中,不正确的是()(A)t ypedef s t r u ct aai nt n;fl oat m;A A;A A t dl;(B)s t r u cti nt n;fl oat m;aa;s t r u ct aa t dl;(C)#defi ne A A s t r u ct aaA A i nt n;fl oat m;t dl;(D)s t r u cti nt n;fl oat m;t dl;(3分)A、;D13、若要说明一个类型名STP,使得定义语句STP s 等价于char *s,以下选项中正确的是(3分)A、B、C、D、A、t ypedef STP char *s;B、t ypedef*char STP;C、t ypedefD、t ypedefs t p*char;char*STP;14、若有下面的说明和定义:s t r u ct t es t i nt ml;char m2;fl oat m3;u ni on u u char u l 5;i nt u 22;u a,myaa;则s i z eof(s t r u ct t es t )的值是(3分)A、B、O C CDs AA、12B、16C、14D、915、若有以下说明和定义m i on dt(i nt a;char b;dou bl e c;)dat a;以下叙述中错误的是 O(3分)BE1 A、B、,;Q D A、dat a的每个成员起始地址都相同B、变量dat a所占的内存字节数与成员c所占字节数相等C、程序段:dat a.a=5;pr i nt f dat a,c);输出 结果为5.000000D、dat a可以作为函数的实参16、若有以下说明和定义t ypedef i nt *INTEGER;INTEGER p,*q;以下叙述正确的是(3分)筐 A、B、卤 C、蜷 D、BA s P是i nt 型变量B、p是基类型为i nt 的指针变量C、q是基类型为i nt 的指针变量D、程序中可用INTEGER代替i nt 类型名17、若有如下程序:stru ct studentchar name 1 0;flo at score 3 ;stu 3 =75,90,90,TiudaiT,90,85,75);fg u o li7;85,85,70;main()int i;flo a t sum=0,aver;for(i=0;i3;i+)sum=sum+stu i .score 1;aver=sum/i;p rin tf(%6 2f n”,aver);)(3分)D18、有以下程序s t r u ct STU(char name10;i nt nu m;i.nt Scor e;i ncl u der i a i n()s t r u ct STU s 5=wY angSanw,20041,703,Li Si Gu o,20042,58 0,(wangY i n,20043,68 0,“Su nDan,20044,550,“Penghu a”,2004.5,537 ,*p5,*t;i nt i,j;for (i=0;i nu mB、p-nu mC、(*p).nu mD、s t u 3.age20、有以下程序段s t r u ct s ti nt x?i nt *ys )*pt;i nt a =1,2),b =3,4);s t r u ct s t c 21=10,a 20,b);pt=c;以下选项中表达式的值为11的是(3分):A、0 B、C、CD J FA、*pt-yB、pt-xC、+pt-xD、(pt+)-x21、有如下定义s t r u ct per s on char name9 ;i nt age;s t r i ct per s on cl as s 10二 Johu”,17,Pau l,19Mar y”,18,“A dam 16,;根据上述定义,能输出字母M的语句是(3分)|c D B、O C s O D、DA、pr i nft (%cn,cl as s 3.mane);B、pfi nt f(cn,cl as s 3.name1);C、p rin f tc la ss2.name1);D、pr i nt f cl as s 2.name0);A、p是指向s t r u ct node结构变量的指针的指针B、NODE p;语句出错22、有以下程序段t ypedef s t r u ct node i ntNODE p;以下叙述正确的是()(3分)A、C B、。C、dat a;s t r u ct node*next;*N0DE;D、cC、p是指向s t r u ct node结构变量的指针D p是s t r u ct node结构变量23、有以下程序段t ypedef s t r u ct NODE i nt nu m;s t r u ct NODE*next;OLD;以下叙述中正确的是(3分)A、B、。C、D、cA、以上的说明形式非法B、NODE是一个结构体类型C、OLD是一个结构体类型D、OLD是一个结构体变量24、有以下程序struct S int n,int a20;void f(struct S*P)(int i,j,t,for(i=0;i for(j=i+l,j if(p-aip-aj)(t=p-ai;p-ai=p-aj;p-aj=t;)main 0int i ;struct S s=(10,2,3,1,6,8,7,5,4,10,9;(3分)C Ax B、C、D、AA、1,2,3,4,5,6,7,8,9,10,B、10,9,8,7,6,5,4,3,2,1,C、2,3,1,6,8,7,5,4,10,9,D、10,9,8,7,6,1,2,3,%5,25、有以下程序mai n()u ni on u ns i gned i nt n;u ns i gned char c;u l;u l.c=A ;pr i nt f u l.n);)执行后输出结果是(3分)卫)A、B、C、_j cA、产生语法错B、随机值C、A算法与结构化程序设计(1*1.5)1、将三个数排序需要比较_ _ _ _ _ 次。(3分)B、1式、ED、BA、2B、3C、4D、不确定2、算 法 的 表 示 方 法 有。(3分)。A、B、C、D、E、AA、自然语言,传统流程图,N-S流程图,伪代码,计算机语言B、商 辱 言,汇编埼言,机器语言C、C语言,QB A SIC语言,Int er DevD、图形图像法,描述法,编程法E、计算机语言数据类型与标识符(8*1.5)1、执行下列程序时输入:123 空 格 456 空 格 78 9 回车 ,输出结果是mai nO char s 100;i nt c,i;s canf(“%c”,&c);s canf&i);s canf(s”,s);pr i nt f(螺c,%d,%s n”,c,i,s);(3 分)曜,A、EB、Bc D、DA、123,456,78 9B、1,456,78 9C、1,23,456,78 9D、1,23,4562、以下选项中属于C语言的数据类型是(3分)君 A、熏 B、C、p D、J cA、复数型B、逻辑型C、双精度型D、集合型3、在C语言中,不正确的i nt类型的常数是(吩)A、都、C、&、A s 32768B、0L、UJID、OxA F4、以下选项中不属于C语言的类型的是(3分)_ C A,瘴B、JJC.,、DA、s i gned s hor t i ntB、u ns i gned l ong i ntCx u ns i gned i ntD、l ong s hor t5、以下选项中合法的字符常量是(3分)/&A、B、:0 C、O D、乐A、B B、010C、68D、D6、假定x和y为dou bl巴 型,则表达式x=2,y=x+3/2的值是(3分)A、B、C、。D、DA s 3.500000B、3C、2.000000D、3.0000007、以下所列的C语言常