郑州航空工业管理学院C语言期末考题含答案解析_第1页
郑州航空工业管理学院C语言期末考题含答案解析_第2页
郑州航空工业管理学院C语言期末考题含答案解析_第3页
郑州航空工业管理学院C语言期末考题含答案解析_第4页
郑州航空工业管理学院C语言期末考题含答案解析_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

[>、for(n=100:n<=200:n++){

C语言期末考题(一)

if(n%3)printffVld'.n);Elsecontinue;Break;I

【答案】C

5.c语言函致的隐含存储类别是______.

一、单项选择题(每小题2分,共40分)

A.static

1.表示存储铸的容量时,1曲的准确合义是.B.auto

A.1米

C.register

B.1024字节D.extern

C.I024K字【答案】D

D.1.000字节6.该语句打印结果为(每小d后都有空格)printfC如printf('dprintfCM

【卷案】C\43)));

2.以下定义语句中正确的是______.A.4321

A.inta=i=0;B.434343

B.charA=65+l.b='b,;

C.4332

C.floata=l.*b=&a.*H:=4b;D.432I

D.doublea=0.0,b=l.1:【答案】C

【答案】B7.下列程序段的运行叁果是.

3.switch语句中表达式(expression)的值不允许用的类型是_______。

Sinclude<st<iio.h>

A.bytevoidnain()

B.Ini

(

C.booleancharstr[]='ab<,.«p=str:

D.charprintf(*%d\n*.*(p+3)):

【答案】CJ

【解析】swilch语句用于多重近择.箕叁数可以是字节型、整型成字符型;而有尔笈只

A.67

有甭个值(True.False),一般用于if语句.

B.0

4.与下面程序段等价的是C、字符'C'字地址

for(n=100:n<=200;n++)

D.字?re

(【答案】B

if(n%3==C)coniinue:【解析】先定义了一个指向字符组数组Sir的指针p,指针P指向数组str的首地才.

printf(*Md*,n);p+3将指针将向"HG,又因为字符嵬糠想在存放字符》时会自动在末尾加上、()'.所

)以*(p+3)=0,

A.for(n=l00;(隔3)&&n<=200;"+)printf("Md,.n);8.在位运算中.操作我将左移一位.箕造杲相当于

B.for(n=IOO:(n%3)I|n<=200:n++)printfC*ld'.n):A.榛作就束以2

C,for(n=l00;n<=200;n4+)if(n%3!=0)printfC*4d*.n);B.操作数除以2

C.操作数除以4

D.操作数束以4D.a=a+7=c+b

“案】A【答案】B

【解析】左移运算籽tt«M是双目运算符.其功能杷“VV”左边的运算数的各二优【解析】本题考查(:香音的正确赋值方法.a=»产c+2实际上相当于a=(g+2).进而可分

位登邦左移若干位,由“<<”右边的我指定移动的位致,妻位丢弃,低位补0.左移I第为两个表达式:by+2foa=b.注意:选项助中包含一个不合法的运算符":="!

位,相当于该段案以2・选项C)应改为(int)13.5%3;逸项D)可理解为两个表达式:8同气+1)和a=a+7.其中

9.下列字符串是标识符的是:.第一个是错的,因为匚话有规定贬值号的左边只能是或不变1L不能是表达式或常量

A.JIJ等。

B.9_stud?nt13.下列对字符数姐发行初始化的语句中,____是正破的,

C.longA.chars1[]="abed";

D.LINE1B.chars2[3]="xyz":

【答案】AC.chars3[][1]=<"a',"x',*y')

10.fun函数的功能是:通过能就输入蛤x所指的整型数组所有元素只值,在下划故处应D.chars3[][3]=(uxyz"."ranp"}:

填写的是________.【答案】A

tidefineN5【解析】BCD选项和不合字符数圾的定义。

voidfun(intx[N])14.建归算法的执行it程一般来说可先后分成___和______两个阶段.

(A.试探

intm:B,速推

for(m=N-t:m>=0:m-)scanf(*M*.):C,枚举

)0.分析

A.%».X[++fl]【答案】B

B.&x[nHl)【解析】逆归是设计力拓注算法的一种有力的工具.

C.x+(Ei能采用递归描述的,法逋常省达林的杆征:为求解规裳为N的问题,设法将它分解成

D,X*B•-些规模菽小的问题,然后从这生小问覆的佛力便地构造出大同题的解,并且这些粒模

【答案】D较小的问题也能采用用样的分解和券合方法,分解成规模更小的问题.并从这搂更小问

11.关于函数运回值类型和返回值表达式的美里的药法中.错误的是.题的解构造出规楔侑大问题的解.的别地,为规横N=l时,能直接得到解.

A,函数返回值美里决定了返回假表达式的类型递推算法的执行过理分递推和回归两个阶段。在递推阶段,把较复杂的问题的求解推

B.函数返回值的美空是在灾又语致时瑜发的,在函数调用时不能改支到比原问题简单一些杓问题的求解:在回归阶段,3获得最简隼情况的解后,法级返

C.函数返回值的类里就是返回值表达式的类型S.依次怒得精灵杂问题的熔.

D.函数返回假表达式类型与返回值突组不同时.函数表达式克里应转换成函数返回15.有以下程序

使类型voidfun(int*a,inti.intj)

【答案】C(

12.若变量已王确定义并/值,以下符合c语寸语法的表达式是_____.intt;

A.a:=b+lif(i<j)

B.a-b=c+2

C.int18.5Wt=a[jl:

a[i]=a[j]:default:printf(v等凭钳误!\ne):

a[j]=t;I

H*:C,switch(grad?)

j-;(

funfe.L0:case'A':printf(*J5-100\n*):break:

)case*B*:printf{rM>-84\n*);break;

)caserC*:printf(r€0以下\n*>;

nain()default:printf(v等线错误!\n");

(I

intx[]=l2.6.L8}.i;D.switch(grad?)

fun(x.0.2);(

for(i:0:i<4;i++)printfC^2d,.x[i]);caserA*:printf(r^5—10O\n*);break:

)case*B':printf(70—84\n*);break;

程序运行后的Sr出结果是_____•caserC,:printf(r(0以下\n"):break:

A.1263default:printf(*专级错误!\n");)

R.862I【答案】D

C、816217.有以下程序

D.8612■include<stdio.h>

【答案】Cstructord

16.假定等级力疗效七以I:对皮关东:等汲:a分数:曲〜1UJ等缎:b分数:(

60〜84等圾:c分数:60以下对于等级grade输出相应的分数区问,能够完成该intx.y;

功能的程序段之_________.I

A.switch(grade)dt[2]=(1.2.3,4);

(rKiinO

caserA*:printf(r85—100\n,);(

case*B':printf(*60-84\nw);structord叩二3;

caserC*:printf(r60以下\nr);printf(r%d.*.-^p->x):

default:prittf(9等级牯说!\n"):printf(*%d\nr,-*+p->y);

}J

B.switch(grade)程序的运行结果是________。

(A.1.2

case*A':printf(r85--100\n*);break;B、2.3

casefB':printf(*60—84\n");C.3.4

caserC,:Drintf<*60以下\nr):仇4.1

【答案】B

18.有如下程宗

nain()二、填空题(每小题2分,共20分)

(

inta=7.t=5.c=9;

1、执行下面程序段后.k值是________•

if(a<b)if(b<0)c=0:

IntkEn263;

elsec++;

do

printf('MVn'.c);

(

)

k»=n%10:

该程序的检出林果是。

n/=10;

A.0

}

B.10

«hile(n);

C.9

D.7[*■«][,36']

【答案】C

19.若已定义失叁数组inta[3][4]=(2.4,6,8.10h则在故谓用函数f的下茎定义2.在C语言的表达式中,x=x+5用及合运算符可以写成

中.对形参蚊组b定义正确的选项是.

【答案】x+=5

A*f(int)[](6))

B.f(b)inb[][.1]:3.在c语言中.关系运算裨中的“大于等于•表示为一

C.f(intJ[3][]>;

D.t(b)ntb[4][b]:【首索】>-

【答案】B

4.设x=2.5.a=7.y=47.则x^a%3*(int)(x+y)*2/4为.

20.设有如下定义:

structsk【答案】-2.5')

(

intn;5、下面程序段的运行转果是..

floatx:inti=l.s=3:

}data.*p:do

若要使P指向中的n域.正确的武值语句是_______.(

A.p=idati:s+=i++;

B.«pdati;if(s%7==0)continues

C.p=(strjctsk«)&datn:else++i;

D.p(strictsk*)datn;}

【答案】C«hile(s<15>:

【得折】本题主要考言了结构体交■引用成员数据的方法.主婆有以下几种:转构体变printf("%d",i);

量名,戌员名或结构体指针成员名的方法来引用结构体成员。

【答案】8if((n>n/2)&&(str[i]=c))

i++:

6.请补充函我procO,该函数的功能是按条件删除一个字符串指定字存一半的致目.具

体要求如下:扣果该字符》所包含的指定字符的个数是奇数.则不9H除.如果箕森目是偶

数.则勘除原申后芈部分的指定字符。其中.sir指向原字符串.出除后的字符串存放在b

)

所指的我怨中.c中存放指定的字苻.例如,当strttT入%bcabcabcab”.c=bahb的情出)

为"abcahcaca':voidnnin()

扣果str的输人为'abcabcabca•.则b的侑出为"abcnbcabca".注卷:部分》程序给出如(

下。请易改助nainO语数和其他函数中的任何内容,仅展函数procO的横线上填入所循charslr[M].b[N];

写的若干表达式或语句.试题程序:

charc;

SdefincM80syst«n(*cls*)s

voidproc(cherstr[].charb[].charc)

printf(*EnterthestrinQ:\n');

(

Rets(str);

inti=0.;=0;

printf(*Enterthecharacterofthestringdeleted:');

inin=0;intn=0;scanf(*%c*.&c);

while(sti(i)!=*\0')

proc(str.b.c);

(

printf(rThenevstringis:%s\n".b);

if(str[i]==e)n++:i++:

}

【琴素】__i="__J--b(j]='\O

7、局都受量又磐内制变量.是在函数定义的交量,

|

whil«(str[j]!='\0')

【答案】内部#内

{

Kj)=str[j];8.C语言将换字杵的函数是什么?

.++:

strcpy(a,b);

|

b[j]='\O':

9,下列程序段的运行结果是_______.

)

nain()

else(

(

inim=l,t=l;

whik(slr[i]!='\0')

for(;;)

(

Kj+*]=str[i];

m-n+t:

if(str[i]==c)m++;

t++:

if(n>9)break:

)for(j=l;j<=i:j++)

priruf(,M\n,m):printfC^k',219,219);

)printf('\n');

)

【答案】11)

10.以下程序另行错果是________.

2,给定一个只包括•)',J'.,}'字符的10位长度的字符Es,编写一个函数

voidswap2(irt*x,int»y)

判断字符串是否顺序闭合。例如:'0口0口。口010口•为true,,<]0(]<]O'*

(

false(本题14分)

intt:

t=*x;【答案】boolisValid(char•s){

*x=*y:chara[10]=<*.t:

•y=t;inti=0,top=0;

)•hile(s[il!='\(',){

voidnain()if(s(i]==,|'||S[i]=='(')(

(if(s[i]='C)1=')':

inta=10C.b=200;if(s[i]=,C)t=>;

svup2(&a.&b);top**;

printfC3M.a.b);a[top]=t;

)}

elset

【答案】200.)00if(a[top]!s[i])

三、策程题(每小题分,共40分)returnfalse:

else

I,打印核躲,同时在接粽上方打印两个笑脸,(本题10分)tot"-:

}

【答案】程序分析:用i控制行,j来枝制列,j根据i的变化来控制输出黑方格的个

i++:

)

程序源代号:if(top==0)

#include*stdio.h"retuintrue;

uainO

else

returnfalse;

inti.j:}

prinM・输出前小黑肠*/

for(i=l;i<U:i++)

3.统计结构体数组中性别(sex)为'M'的支量的个效。

要求:

①数组元率依次.欲初值为:U.Fndy・.、<2.“加心".下’),]3.

•Rose*,'«1).

②结构体定义为下:structStudent{Intnun:charname[301:ciarsex:!:(本题

分)

【答案】#inc)ude<stdio.h>

stniciStudert{

intnun:

charnan<[30]:

charsex;

):

intEun(structStudent*s.intn)

intnun=C;

inti;

for(i=0:i<n:i++)

I

if(«(i].a。、='M')

{

num♦七

}

)

)

intmainO

structStudent$[3]={

1."Ardy".'M'.2.^iko1,'E'.3."Rose".'M"

):

printfCM".Hunts.3));

return0:

J

C话营期末考题(二)【答案】D

5.以下叙述中错误的是.

一、单项选择题(每小题2分,共40分)A.局部变量的定义可以在函数体和复合语句的内福

B.全局变量的定义可以在函数以外的任何用住

I.若有以下定义和话句:"doubler=99,*p=&r:

C.同一程序内局部变量和全局变量不允许同名

•p=r;•,则以T正哦的以H是________.

D.函数的形卷属于阳部变量

A.两个*p含义相同.都说明始指针变量P赋值

【答案】C

B.在-dojbler»99,*p=&r;"中,把i•的地址赋值蕾了)所指的存转单元

6.下列选项中合法的赋值诒句是.

C.语句“叩寸:”把变量r的值赋给指针交量P

A.a-b=3'l

D.语句"少=r;”取变量r的也放回r中

B.a=34.b=34

【答案】B

C,i-1:

2.下列表达式中,可作为c合法表达式的是.

D.w=(int>(x+yl;

A.[3,2.1,0]

【答案】D

B.()

【解析】选项A是一个合ife的赋值表达大,但结尾没如分号,所以它不是一个赋值语

C.3=2=1=)

句:透项B是一个更子表达式,也因为结是没有加分号而不是合法的底值语句;选项C

D.3/2/1/0

是一个算术表达式,虽然有分号,但这个表达式没有赋值操作,因此,也不是一条状值

【答案】B

语句.

3.执行下列程序段后.m的值是.

7.下列定义教组的语句中.正段的是.

intw=2.x=3.)=4.z=5.m;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论