雨课堂学堂在线学堂云《计算机语言程序设计(营口理工学院)》单元测试考核答案_第1页
雨课堂学堂在线学堂云《计算机语言程序设计(营口理工学院)》单元测试考核答案_第2页
雨课堂学堂在线学堂云《计算机语言程序设计(营口理工学院)》单元测试考核答案_第3页
雨课堂学堂在线学堂云《计算机语言程序设计(营口理工学院)》单元测试考核答案_第4页
雨课堂学堂在线学堂云《计算机语言程序设计(营口理工学院)》单元测试考核答案_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

第1题以下不合法的用户标识符是______。Aj2_KEYBDoubleC4dD_8_第2题已定义c为字符型变量,则下列语句中正确的是______。Ac='97'Bc="97"Cc=97Dc="a"第3题以下选项中属于C语言的数据类型是______。A复数型B逻辑型C双精度型D集合型第4题请选出合法的C语言赋值语句______。Aa=b=58Bi++;Ca=58,b=58Dk=int(a+b);第5题请选出可用作C语言用户标识符的一组标识符____B__。①void

②a3_b3③For④2adefine_123

_abcDOWORD

IFcasesizeofA①B②C③D④第6题下列关于C语言用户标识符的叙述中正确的是______。A用户标识符中可以出现下划线和中划线(减号B用户标识符中不可以出现中划线,但可以出现下划线C用户标识符中可以出现下划线,但不可以放在用户标识符的开头D用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头第7题以下符合C语言语法的实型常量是______。A1.2E0.5B3.14159EC.5E-3DE15第8题以下正确的字符串常量是_____。A"\\"B'abc'COlympicGamesD""

第9题以下有4组用户标识符,其中合法的一组是_____。A)

FORB)4d

C)f2_G3

D)WORD

-sub

DO

IFvoidCase

SizeabcdefineAA)BB)CC)DD)第10题以下选项中合法的字符常量是______。A"B"B'\010'C68DD第11题以下______是不合法的C语言常量。AOxFFB1.2e0.5C2LD'\72'第12题以下选项中,与k=n++完全等价的表达式是_____Ak=n,n=n+1Bn=n+1,k=nCk=++nDk+=n+1第13题已有定义:intx=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2的值是______。A6B0C2D1第14题能正确表示a和b同时为正或同时为负的逻辑表达式是______。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)Da*b>0第15题设a、b和c都是int型变量,且a=3、b=4、c=5,则下面的表达式中,值为0的表达式是______。A'a'&&'b'Ba<=bCa||+c&&b-cD!((a<b)&&!c||1)第16题设ch是char型变量,其值为A,且有下面的表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch上面表达式的值是______。AABaCZDz第17题下面程序main(){

intx=10,y=3;printf("%d\n",y=x/y);}的输出是_____。A0B1C3D不确定的值第18题下列关于单目运算符++、--的叙述中正确的是_____。A它们的运算对象可以是任何变量和常量B它们的运算对象可以是char型变量和int型变量,但不能是float型变量C它们的运算对象可以是int型变量,但不能是double型变量和float型变量D它们的运算对象可以是char型变量、int型变量和float型变量第19题有以下程序main(){inti=1,j=1,k=2;

if((j++||k++)&&i++)printf("%d,%d,%d\n",i,j,k);}执行后输出的结果是____。A1,1,2B2,2,1C2,2,2D2,2,3第20题设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是______。Ax=x*100+0.5/100.0;Bx=(x*100+0.5)/100.0Cx=(int)(x*100+0.5)/100.0;Dx=(x/100+0.5)/100.0;第21题设有定义:floata=2,b=4,h=3;,以下C语言表达式中与代数式1/2(a+b)h计算结果不相符的是_____。A(a+b)*h/2B(1/2)*(a+b)*hC(a+b)*h*1/2Dh/2*(a+b)第22题以下4个选项,不能看作一条语句的是___。A{;}

Ba=0,b=0,c=0;Cif(a>0);Dif(b==0)m=1;n=2;第23题有以下定义语句doublea,b;intw;longc;若各变量已正确赋值,则下列选项中正确的表达式是______。Aa=a+b=b++Bw%((int)a+b)C(c+w)%(int)aDw=a==b;第24题若变量均已正确定义并赋值,以下合法的C语言赋值语句是______。Ax=y==5;Bx=n%2.5;Cx+n=i;Dx=5=4+1;第25题执行下面程序中的输出语句后,main(){

inta;printf("%d\n",(a=3*5,a*4),a+5);}a的值是______。A15B20C10D60第26题C语言运算对象必须是整型的运算符是_____。A%B/C=D<=第27题以下不能正确计算代数式值的C语言表达式是_____。A1/3*sin(1/2)*sin(1/2)Bsin(0.5)*sin(0.5)/3Cpow(sin(0.5),2)/3

D1/3.0*pow(sin(1.0/2),2)第28题以下能正确定义且赋初值的语句是_____。Aint

n1=n2=10;Bchar

c=32;Cfloat

f=f+1.1;

Ddouble

x=12.3E2.5;第29题若变量c为char类型,能正确判断出c为小写字母的表达式是______。A'a'<=c<='z'B(c>='a')||(c<='z')C('a'<=c)and('z'>=c)D(c>='a')&&(c<='z')

第30题有如下程序段inta=14,b=15,x;char

c='A';

x=(a&&b)&&(c<'B');执行该程序段后,x的值为______。AtrueBfalseC0D1第31题设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为______。A不定值B4C3D1第32题若变量a、i已正确定义,且i已正确赋值,合法的语句是_____。Aa==1B++iCa=a++=5Da=int(i)第33题有以下程序#include

<stdio.h>main(){

char

c1='1',c2='2';c1=getchar();

c2=getchar();

putchar(c1);

putchar(c2);

}当运行时输入:a<回车>后,以下叙述正确的是______。A变量c1被赋予字符a,c2被赋予回车符B程序将等待用户输入第2个字符C变量c1被赋予字符a,c2中仍是原有字符2

D变量c1被赋予字符a,c2中将无确定值第34题有以下程序main(){char

a1='M',a2='m';

printf("%c\n",(a1,a2));

}以下叙述中正确的是______。A程序输出大写字母MB程序输出小写字母mC格式说明符不足,编译出错D程序运行时产生出错信息第35题有定义语句:intx,y;。若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是_____。A1112↙B11,12↙C11,12↙D11,↙12↙第36题若要求从键盘读入含有空格字符的字符串,应该使用函数______。Agetc()Bgets()Cgetchar()Dscanf()第37题#include<stdio.h>main(){charc1,c2,c3,c4,c5,c6;

scanf("%c%c%c%c",&c1,&c2,&c3,&c4);

c5=getchar();c6=getchar();

putchar(c1);putchar(c2);

printf("%c%c\n",c5,c6);}程序运行后,若从键盘输入(从第1列开始)123<回车>45678<回车>则输出结果是_____。A1267B1256C1278D1245第38题下列描述中不正确的是______。A字符型数组中可以存放字符串B可以对字符型数组进行整体输入、输出C可以对整型数组进行整体输入、输出D不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值第39题以下程序的输出结果是______。main()

{

int

k=17;printf("%d,%o,%x\n",k,k,k);}A17,021,0x11B17,17,17C17,0x11,021D17,21,11第40题若x和y都是int型变量,x=100、y=200,且有下面的程序片段printf("%d",(x,y));上面程序片段的输出结果是______。A200B100C100200D输入格式符不够,输出不确定的值第41题已知i、j、k为int型变量,若从键盘输入:1,2,3↙,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是______。Ascanf("%2d%2d%2d",&i,&j,&k)Bscanf(""%d

%d

%d",&i,&j,&k)Cscanf("%d,%d,%d",&i,&j,&k)Dscanf("i=%d,j=%d,k=%d",&i,&j,&k)第42题有以下程序main(){intm=3,n=4,x;

x=-m++;

x=x+8/++n;

printf("%d\n",x);}程序运行后的输出结果是______。A3B5C-1D2第43题有以下程序main(){chara='a',b;

printf("%c,",++a);

printf("%c\n",b=a++);}程序运行后的输出结果是______。Ab,bBb,cCa,bDa,c第44题有以下程序main(){chara,b,c,d;

scanf("%c,%c,%d,%d",&a,&b,&c,&d);

printf("c,%c,%c,%c\n",a,b,c,d);}若运行时从键盘上输入:6,5,65,66↙。则输出结果是______。A6,5,A,BB6,5,65,66C6,5,6,5D6,5,6,6第45题若在定义语句:inta,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是______。Ascanf("%d",a,b,c)Bscanf("%d%d%d",a,b,c)Cscanf("%d",p)Dscanf("%d",&p)第46题以下程序的输出结果是______。#include<stdio.h>#include<math.h>main()

{

inta=1,b=4,c=2;floatx=10.5,y=4.0,z;z=(a+b)/c+sqrt((double)y)*1.2/c+x;printf("%f\n",z);}A14.000000

B15.400000C13.700000D14.900000第47题若有以下程序:main()

{

intk=2,i=2,m;

m=(k+=i*=k);

printf("%d,%d\n",m,i);}执行后的输出结果是______。A8,6B8,3C6,4D7,4第48题以下程序段的输出结果是______。inta=1234;printf("%2d\n",a);A12B34C1234D提示出错、无结果第49题以下程序的输出结果是______。main(){

char

c='z';printf("%c",c-25);

}AaBzCz-25Dy第50题有以下程序main(){

intm,n,p;

scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p);}若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是______。Am=123n=456p=789Bm=123

n=456

p=789Cm=123,n=456,p=789D123

456

789第51题有以下程序main(){inta,b,d=25;

a=d/10%9;

b=a&&(-1);

printf("%d,%d\n",a,b);}程序运行后的输出结果是_____。A6,1

B2,1C6,0D2,0第1题C语言中用于结构化程序设计的三种基本结构是()A顺序结构、选择结构、循环结构

Bif、switch、breakCfor、while、do-whilDif、for、continue第2题执行下面程序中的输出语句后,main(){

inta;printf("%d\n",(a=3*5,a*4),a+5);}a的值是()。A15B20C10D60第3题以下程序的输出结果是()。

#define

f(x)

x*xmain(){int

a=6,b=2,c;

c=f(a)/f(b);

printf("%d\n",c);}A9B6C36D18第4题若变量a、i已正确定义,且i已正确赋值,合法的语句是()。Aa==1B++iCa=a++=5Da=int(i);第5题有以下程序main(){

intm,n,p;

scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d\n",m,n,p);}若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是()。Am=123n=456p=789Bm=123

n=456

p=789Cm=123,n=456,p=789D123

456

789第6题有以下程序main(){inta,b,d=25;

a=d/10%9;

b=a&&(-1);

printf("%d,%d\n",a,b);}程序运行后的输出结果是()。A6,1B2,1C6,0D2,0第7题有如下程序段inta=14,b=15,x;char

c='A';x=(a&&b)&&(c<'B');执行该程序段后,x的值为()。AtrueBfalseC0D1第8题下列叙述中正确的是()AC语言编译时不检查语法BC语言的子程序有过程和函数两种CC语言的函数可以嵌套定义DC语言的函数可以嵌套调用第9题设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为()。A不定值B4C3D1第10题以下能正确定义且赋初值的语句是(

)。Aint

n1=n2=10Bchar

c=32;Cfloat

f=f+1.1Ddouble

x=12.3E2.5;第11题C语言运算对象必须是整型的运算符是(

)。A%B/C=D<=第12题以下程序段的输出结果是()。inta=1234;printf("%2d\n",a);A12B34C1234D提示出错、无结果第13题若有说明语句:inta,b,c,*d=&c;则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是()。Ascanf("%d%d%d",&a,&b,d)Bscanf("%d%d%d",&a,&b,&d)Cscanf("%d%d%d",a,b,d)Dscanf("%d%d%d",a,b,*d)第14题若有以下程序:main()

{

intk=2,i=2,m;

m=(k+=i*=k);

printf("%d,%d\n",m,i);

}执行后的输出结果是(

)。A8,6B8,3C6,4D7,4第15题在一个C语言程序中()。Amain函数必须出现在所有函数之前Bmain函数可以在任何地方出现Cmain函数必须出现在所有函数之后Dmain函数必须出现在固定位置第16题若有一些定义和语句

#include<stdio.h>

int

a=4,b=3,*p,*q,*w;

p=&a;q=&b;w=q;q=NULL;则以下选项中错误的语句是()。A*q=0Bw=pC*p=vaD*p=*w第17题有定义语句:intx,y;。若要通过scanf("%d,%d",&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是()。A1112↙B11,12↙C11,12↙D11,↙12↙第18题#include<stdio.h>main(){charc1,c2,c3,c4,c5,c6;

scanf("%c%c%c%c",&c1,&c2,&c3,&c4);

c5=getchar();c6=getchar();

putchar(c1);putchar(c2);

printf("%c%c\n",c5,c6);}程序运行后,若从键盘输入(从第1列开始)123<回车>45678<回车>则输出结果是(

)。A1267B1256C1278D1245第19题以下叙述中正确的是()。A预处理命令行必须位于C源程序的起始位置B在C语言中,预处理命令行都以"#"开头C每个C程序必须在开头包含预处理命令行:#include<stdio.h>

DC语言的预处理不能实现宏定义和条件编译的功能第20题下面程序main(){

intx=100,a=10,b=20,ok1=5,ok2=0;if(a<b)if(b!=15)

if(!ok1)

x=1;

elseif(ok2)x=10;x=-1;printf("%d\n",x);}的输出是()。A-1B0C1D不确定的值第21题有以下程序main(){inti=1,j=1,k=2;

if((j++||k++)&&i++)printf("%d,%d,%d\n",i,j,k);}执行后输出的结果是()。A1,1,2B2,2,1C2,2,2D2,2,3第22题有以下程序main(){

inti=1,j=2,k=3;

if(i++==1&&(++j==3||k++==3))

printf("%d%d%d\n",i,j,k);}程序运行后的输出结果是()。A123B234

C223D233第23题有如下程序,该程序输出结果是()。main(){

float

x=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;

elsey=1.0;printf("%f\n",y);}A0.000000B0.250000C0.500000D1.000000第24题有一函数┌1x>0

y=┤0x=0└-1x<0以下程序段中不能根据x的值正确计算出y的值的是()。Aif(x>0)y=1;elseif(x==0)y=0;elsey=-1By=0;if(x>0)y=1;elseif(x<0)y=-1Cy=0;if(x>=0)if(x>0)y=1;elsey=-1Dif(x>=0)if(x>0)y=1;elsey=0;elsey=-1第25题以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是()。Aif((a>b)&&(b>c))k=1;else

k=0;Bif((a>b)||(b>c))k=1;elsek=0;Cif(a<=b)k=0;elseif(b<=c)k=1;Dif(a>b)k=1;elseif(b>c)k=1;

elsek=0;第26题以下程序的输出结果是()。main()

{

int

a=-1,b=1,

k;if((++a<0)&&!(b--<=0))printf("%d%d\n",a,b);

else

printf("%d%d\n",b,a);}A-1

1B0

1C1

0D0

0第27题若执行以下程序时从键盘上输入9,则输出结果是()。main(){

intn;scanf("%d:",&n);if(n++<10)printf("%d\n",n);

elseprintf("%d\n",n--);}A11B10C9D8第28题阅读以下程序:

main()

{int

x;scanf("%d",&x);if(x--<5)printf("%d\n",x);else

printf("%d\n",x++);}

程序运行后,如果从键盘上输入5,则输出结果是()。A3B4C5D6第29题以下程序的输出结果是()。

main(){

intc;while((c=getchar())!='\n'){switch(c-'2'){case0:case1:putchar(c+4);case2:putchar(c+4);break;case3:putchar(c+3);default:putchar(c+2);break;}}}从第一列开始输入以下数据,↙代表一个回车符。2473↙A668977B668966C66778777D6688766第30题以下程序运行后的输出结果是()。main()

{inta=15,b=21,m=0;switch(a%3)

{case0:m++;break;case1:m++;switch(b%2){default:m++;

case0:m++;break;}

}

printf("%d\n",m);}A1B2C3D4第31题有定义语句:inta=1,b=2,c=3,x;,则以下选项中各程序段执行后,x的值不为3的是()。Aif(c<a)x=1;elseif(b<a)x=2;

elsex=3;Bif(a<3)x=3;elseif(a<2)x=2;

elsex=1Cif(a<3)x=3;if(a<2)x=2;if(a<1)x=1;Dif(a<b)x=b;if(b<c)x=c;if(c<a)x=a;第32题有如下程序,该程序的输出结果是()。main(){int

x=1,a=0,b=0;

switch(x)

{

case0:

b++;

case1:

a++;

case2:

a++;b++;}printf("a=%d,b=%d\n",a,b);}Aa=2,b=1Ba=1,b=1Ca=1,b=0Da=2,b=2第33题有如下程序,该程序输出结果是()。main(){

float

x=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;

elsey=1.0;printf("%f\n",y);}A0.000000B0.250000C0.500000D1.000000第34题若a、b、c1、c2、x、y均是整型变量,正确的switch语句是(

)。

①switch(a+b);{

case1:y=a+b;break;case0:y=a-b;break;

}

switch(a*a+b*b)

{

case3:

case1:y=a+b;break;

case3:y=b-a;break;

}

switch

a

{

casec1:y=a-b;break;

casec2:x=a*b;break;

default:x=a+b;

}

switch(a-b)

{

default:y=a*b;break;

case

3:case4:x=a+b;break;

case10:case11:y=a-b;break;

}A①B②C③D④第35题有以下程序,程序运行时,从键盘输入:01↙,程序执行后的输出结果是()。main(){

chark;inti;for(i=1;i<3;i++){scanf("%c",&k);

switch(k)

{case'0':printf("another\n");case'1':printf("number\n");

}}}Aanothernumber

BanothernumberanotherCanothernumbernumberDnumbernumber第36题以下程序的运行结果是()。#include<stdio.h>main(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}

case2:a++;b++;break;

case3:a++;b++;}printf("a=%d,b=%d\n",a,b);}Aa=1,b=0Ba=2,b=2Ca=1,b=1Da=2,b=1第37题C语言中下列叙述正确的是()A不能使用do-while语句构成的循环Bdo-while语句构成的循环,必须用break语句才能退出Cdo-while语句构成的循环,当while语句中的表达式值为非零时结束循环Ddo-while语句构成的循环,当while语句中的表达式值为零时结束循环第38题以下程序的输出结果是()。main(){

intx=10,y=10,i;for(i=0;x>8;y=++i)printf("%d%d

",x--,y);}A10

1

9

2B9

8

7

6C10

9

9

0D10

10

9

1第39题以下程序的输出结果是()。main(){

int

n=4;while(n--)printf("%d",--n);}A2

0B3

1C3

2

1D2

1

0第40题下面的程序输出是()。main(){

intx=3;do{printf("%d\n",x-=2);}while(!(--x));}A1B1和-2C3和0D死循环第41题t为int类型,进入下面的循环之前,t的值为0,以下叙述中正确的是()。while(t=1){

......}A循环控制表达式的值为0B循环控制表达式的值为1C循环控制表达式不合法D以上说法都不对第42题以下不构成无限循环的语句或语句组是()。An=0;do{++n;}while(n<=0);Bn=0;while(1){n++;}Cn=10;while(n);{n--;}Dfor(n=0,i=1;

;i++)

n+=i;第43题请读程序:#include<stdio.h>main(){

intnum=0;while(num<=2){num++;

printf("%d\n",num);}}上面程序的输出结果是()。①1②1③1④12

2

2

3

3

4A①B②C③D④第44题若变量已正确定义,有以下程序段,其输出结果是()。i=0;do

printf("%d,",i);while(i++);printf("%d\n",i);A0,0B0,1C1,1D程序进入无限循第45题有以下程序,程序执行后的输出结果是()。main(){

inti,s=0;for(i=1;i<10;i+=2)s+=i+1;printf("%d\n",s);}A自然数1~9的累加和B自然数1~10的累加和C自然数1~9中奇数之和D自然数1~10中偶数之和第46题下面的程序输出的是()。main(){

intx=3;do{printf("%d\n",x-=2);}while(!(--x));}A1B1和-2C3和0D是死循环第47题有以下程序,执行后的输出结果是(A)。main(){int

k=5;

while(--k)printf("%d",k-=3);

printf("\n");}A1B2C4D死循环第48题有以下程序,执行后的输出结果是()。main(){int

i;

for(i=1;i<=40;i++){if(i++%5==0)

if(++i%8==0)printf("%d",i);}

printf("\n");}A5B24C32D40第49题有如下程序,该程序的输出结果是()。main(){

int

n=9;

while(n>6)

{

n--;printf("%d",n);

}}A987B876C8765D9876第50题以下程序的输出结果是()。main(){

intnum=0;while(num<=2){

num++;

printf("%d\n",num);

}}A)

B)

C)

D)11

1122

2334AABBCCDD第51题以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main(){intn,k;

floatscore,sum,ave;

sum=0.0;

for(n=1;n<=10;n++){for(k=1;k<=4;k++)

{scanf("%f",&score);

sum+=score;}ave=sum/4.0;printf("NO%d:%f\n",n,ave);}

}上述程序运行后结果不正确,调试中发现有一条语句出现在程序的位置不正确。这条语句是()。Asum=0.0Bsum+=score;Cave=sum/4.0Dprintf("NO%d:%f\n",n,ave)第52题在嵌套使用if语句时,C语言规定else总是()。A和之前与其具有相同缩进位置的if配对B和之前与其最近的if配对C和之前与其最近的且不带else的if配对D和之前的第一个if配对第53题有以下程序main(){

int

i,

j;for(i=1;i<4;i++){for(j=i;j<4;j++)

printf("%d*%d=%d

",i,j,i*j);

printf("\n");}}程序运行后的输出结果是()。A1*1=1

1*2=2

1*3=32*1=2

2*2=43*1=3B1*1=1

1*2=2

1*3=32*2=4

2*3=63*3=9C1*1=11*2=2

2*2=41*3=3

2*3=6

3*3=9D1*1=12*1=2

2*2=43*1=3

3*2=6

3*3=9第54题请读程序:#include<stdio.h>main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)

break;if(b%3==1){b+=3;continue;}b-=5;}printf("%d\n",a);}上面程序的输出结果是()。A7B8C9D10第55题有以下程序,程序运行后的输出结果是()。main(){intk=4,n=0;

for(;n<k;)

{

n++;

if(n%3!=0)

continue;k--;}

printf("%d,%d\n",k,n);}A1,1B2,2C3,3D4,4第56题下面程序的输出是()。main(){

intx=3,y=6,a=0;while(x++!=(y-=1))

{

a+=1;if(y<x)break;

}printf("x=%d,y=%d,a=%d\n",x,y,a);}Ax=4,y=4,a=1Bx=5,y=5,a=1Cx=5,y=4,a=3Dx=5,y=4,a=1第57题以下叙述中正确的是()。Abreak语句只能用于switch语句体中Bcontinue语句的作用是:使程序的执行流程跳出包含它的所有循环Cbreak语句只能用在循环体内和switch语句体中D在循环内使用break语句和continue语句的作用相同第58题以下程序的输出结果是(C)。#include<stdio.h>main(){

inti;for(i=1;i<5;i++)

{

if(i%2)printf("*");elsecontinue;printf("#");}printf("$\n");}A*#*#*#$B#*#*#*$C*#*#$D#*#*$第59题下面程序的输出是()。main(){

inty=9;for(;y>0;y--){

if(y%3==0)

{printf("%d",--y);continue;

}}}A741B852C963D875421第60题以下程序中,while循环的循环次数是()。main(){inti=0;

while(i<10)

{

if(i<1)continue;

if(i==5)break;

i++;

}

......}A1B10C6D死循环,不能确定次数习题第1题下面的程序中()错误(每行程序前面的数字是行号)。#include<stdio.h>main(){floata[3]={0.0};inti;for(i=0;i<3;i++)scanf("%d",a[i]);for(i=1;i<3;i++)a[0]=a[0]+a[i];printf("%f\n",a[0]);}A没有B第4行C第6行D第8行第2题以下程序的输出结果是()。main(){

char*s="12134211";

intv[4]={0,0,0,0},k,i;for(k=0;s[k];k++){

switch(s[k]){

case'1':i=0;case'2':i=1;case'3':i=2;case'4':i=3;}

v[i]++;

}

for(k=0;k<4;k++)

printf("%d

",v[k]);}A4

2

1

1B0

0

0

8C4

6

7

8D8

8

8

8第3题以下程序的输出结果是(B)。main(){

inti,k,a[10],p[3];k=5;for(i=0;i<10;i++)a[i]=i;for(i=0;i<3;i++)p[i]=a[i*(i+1)];for(i=0;i<3;i++)k+=p[i]*2;printf("%d\n",k);}A20B21C22D23第4题若有以下说明:inta[12]={1,2,3,4,5,6,7,8,9,10,11,12};charc='a',d,g;则值为4的表达式是()。Aa[g-c]Ba[4]Ca['d'-'c']Da['d'-c]第5题以下叙述中错误的是()。A对于double类型数组,不可以直接用数组名对数组进行整体输入或输出B数组名代表的是数组所占存储区的首地址,其值不可改变C当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出"下标越界"的出错信息D可以通过赋初值的方式确定数组元素的个数第6题有如下程序:main(){int

n[5]={0,0,0},i,k=2;for(i=0;i<k;i++)

n[i]=n[i]+1;printf("%d\n",n[k]);}该程序的输出结果是()。A不确定的值B2C1D0第7题假定int类型变量占用两个字节,若有定义:intx[10]={0,2,4};,则数组x在内存中所占字节数是()。A3B6C10D20第8题以下程序的输出结果是()。main(){

int

i,a[10];for(i=9;i>=0;i--)a[i]=10-i;printf("%d%d%d",a[2],a[5],a[8]);}A258B741C852D369第9题以下能正确定义一维数组的选项是()。Aintnum[]B#defineN100Cintnum[0..100]

DintN=100;intnum[N];第10题若有定义语句:intm[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是()。Am[--i]Bm[2*2]Cm[m[0]]Dm[m[i]]第11题有以下程序,执行后输出结果是()。main(){

int

m[][3]={1,4,7,2,5,8,3,6,9};int

i,j,k=2;for(i=0;i<3;i++){printf("%d",m[k][i]);

}}A456B258C369D789第12题若有定义语句:inta[3][6];,按在内存中的存放顺序,a数组的第10个元素是()。

Aa[0][4]Ba[1][3]Ca[0][3]Da[1][4]第13题有如下程序main(){int

a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i<3;i++)

for(j=0;j<=i;j++)s+=a[i][j];printf("%d\n",s);}该程序的输出结果是()。A18B19C20D21第14题以下程序的输出结果是()。main(){

inti,x[3][3]={1,2,3,4,5,6,7,8,9,};for(i=0;i<3;i++)

printf("%d,",x[i][2-i]);}A1,5,9B1,4,7,C3,5,7D3,6,9第15题以下数组定义中不正确的是()。Ainta[2][3]Bintb[][3]={0,1,2}Cintc[100][100]={0}Dintd[3][]={{1,2},{1,2,3},{1,2,3,4}}第16题以下程序的输出结果是()。

main()

{

int

a[4][4]={{1,3,5},{2,4,6},{3,5,7}};

printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);

}A0650B1470C5430D输出值不定第17题以下程序的输出结果是()。main(){charch[3][5]={"AAAA","BBB","CC"};

printf("%s\n",ch[1]);}A"AAAA"B"BBB"C"BBBCC"D"CC"第18题有以下程序main(){

intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};

inti,s=0;for(i=0;i<4;i++)s+=aa[i][1];printf("%d\n",s);}程序运行后的输出结果是()。A11B19C13D20第19题以下能正确定义数组并正确赋初值的语句是()。Aint

N=5,b[N][N];Bint

a[1][2]={{1},{3}}Cint

c[2][]={{1,2},{3,4}}Dint

d[3][2]={{1,2},{3,4}}第20题有以下程序main(){

int

m[][3]={1,4,7,2,5,8,3,6,9};int

i,j,k=2;for(i=0;i<3;i++){printf("%d",m[k][i]);}}执行后输出结果是()。A456B258C369D789第21题以下不能正确定义二维数组的选项是()。Ainta[2][2]={{1},{2}}Binta[][2]={1,2,3,4};Cinta[2][2]={{1},2,3}Dinta[2][]={{1,2},{3,4}}第22题下列描述中不正确的是()。A字符型数组中可以存放字符串B可以对字符型数组进行整体输入、输出C可以对整型数组进行整体输入、输出D不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值第23题以下程序的输出结果是()。

main(){char

a[10]={'1','2','3','4','5','6','7','8','9',0},*p;inti;i=8;p=a+i;printf("%s\n",p-3);}A6B6789C'6'D789第24题有以下程序main()

{chara[]={'a','b','c','d','e','f','g','h','\0'};

inti,j;

i=sizeof(a);

j=strlen(a);

printf("%d,%d\n",i,j);

}程序运行后的输出结果是()。A9,9B8,9C1,8D9,8第25题以下程序的输出结果是()。#include<stdio.h>#include<string.h>main()

{charstr[12]={'s','t','r','i','n','g'};printf("%d\n",strlen(str));}A6B7C11D12第26题当执行下面程序且输入:ABC时,输出的结果是()。#include<stdio.h>#include<string.h>main(){

charss[10]="12345";strcat(ss,"6789");gets(ss);printf("%s\n",ss);}AABCBABC9C123456ABCDABC456789第27题以下程序的输出结果是()。main(){

charw[][10]={"ABCD","EFGH","IJKL","MNOP"},k;

for(k=1;k<3;k++)

printf("%s\n",w[k]);

}AABCDFGHKLBABCDEFGIJMCEFGJKODEFGHIJKL习题第1题下面函数intfun1(char*x){

char*y=x;while(*y++);return(y-x-1);}的功能是______。A求字符串的长度B比较两个字符串的大小C将字符串x复制到字符串yD将字符串x连接到字符串y后面第2题下列叙述中正确的是______。AC语言编译时不检查语法BC语言的子程序有过程和函数两种CC语言的函数可以嵌套定义DC语言中,根据函数能否被其它源文件调用,被区分为内部函数和外部函数第3题若有以下程序#include<stdio.h>voidf(intn);main(){

voidf(intn);f(5);}voidf(intn){printf("%d\n",n);}则以下叙述中不正确的是______。A若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数fB若在主函数前对函数f进行说明,则在主函数和其后的其它函数中都可以正确调用函数fC对于以上函数程序,编译时系统会提示出错信息;提示对f函数重复说明D函数f无返回值,所以可用void将其类型定义为无值型第4题有以下程序intf(intn)

{if(n==1)return1;elsereturnf(n-1)+1;

}

main()

{inti,j=0;

for(i=1;i<3;i++)

j+=f(i);

printf("%d\n",j);

}程序运行后的输出结果是______。A4B3C2D1第5题以下程序中的函数reverse的功能是将a所指数组中的内容进行逆置。voidreverse(inta[],intn)

{inti,t;

for(i=0;i<n/2;i++)

{t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}

}main(){intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0;

reverse(b,8);

for(i=6;i<10;i++)s+=b[i];

printf("%d\n",s);}程序运行后的输出结果是______。A22B10C34D30第6题有以下程序

int

*f(int

*x,int

*y)

{

if(*x<*y)returnx;else

returny;}main(){

inta=7,b=8,*p,*q,*r;p=&a;

q=&b;r=f(p,q);printf("%d,%d,%d\n",*p,*q,*r);}执行后输出结果是______。A7,8,8B7,8,7C8,7,7D8,7,8第7题阅读以下函数fun(char

*sl,char

*s2){int

i=0;while(sl[i]==s2[i]&&s2[i]!='\0')i++;return(sl[i]=='\0'&&s2[i]=='\0');}此函数的功能是______。A将s2所指字符串赋给s1B比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0C比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0D比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0第8题已定义以下函数fun(int*p){return*p;}该函数的返回值是______。A不确定的值B形参p中存放的值C形参p所指存储单元中的值D形参p的地址值第9题若程序中定义了以下函数doublemyadd(doublea,doubleb){return(a+b);}并将其放在调用语句之后,则在调用之前应该对函数进行说明,以下选项中错误的说明是______。Adoublemyadd(doublea,b)Bdoublemyadd(double,double)Cdoublemyadd(doubleb,doublea)Ddoublemyadd(doublex,doubley第10题请读程序:

#include<stdio.h>

func(inta,intb){

intc;

c=a+b;

returnc;

}

main()

{intx=6,y=7,z=8,r;

r=func((x--,y++,x+y),z--);

printf("%d\n",r);

}上面程序的输出结果是______。A11B20C21D31第11题请选出以下程序的输出结果______。#include<stdio.h>sub(int*s,inty){

static

int

t=3;y=s[t];t--;}main(){

inta[]={1,2,3,4},i,x=0;for(i=0;i<4;i++){sub(a,x);printf("%d",x);}printf("\n");}A1234B4321C0000D4444第12题有以下程序#include<stdio.h>inta=1;intf(int

c){static

int

a=2;c=c+1;return(a++)+c;}main(){int

i,k=0;for(i=0;i<2;i++){inta=3;k+=f(a);}k+=a;printf("%d\n",k);}程序的运行结果是______。A14B15C16D17第13题以下程序的输出结果是______。main(){

intk=4,m=1,p;p=func(k,m);printf("%d,",p);p=func(k,m);printf("%d\n",p);}func(inta,intb){

staticintm=0,i=2;i+=m+1;m=i+a+b;return(m);}A8,17B8,16C8,20D8,8第14题下面程序的输出是______。int

m=13;intfun2(intx,inty){

intm=3;return(x*y-m);

}

main()

{inta=7,b=5;printf("%d\n",fun2(a,b)/m);}A1B2C7D10第15题有以下函数int

aaa(char*s){char

*t=s;while(*t++);t--;return(t-s);}以下关于aaa函数的功能叙述正确的是______。A求字符串s的长度B比较两个串的大小C将串s复制到串tD求字符串s所占字节数第16题以下程序的输出结果是______。#include<string.h>main(){char*a="abcdefghi";

int

k;fun(a);puts(a);

}

fun(char*s){intx,y;

char

c;for(x=0,y=strlen(s)-1;

x<y;

x++,y--)

{

c=s[y];

s[y]=s[x];

s[x]=c;}

}AihgfedcbaBabcdefghiCabcdedcbaDihgfefghi第17题以下程序的输出结果是______。main(

){int

w=5;

fun(w);

printf("\n");}fun(int

k){

if(k>0)

fun(k-1);printf("%d",k);}A5

4

3

2

1

B0

1

2

3

4

5C1

2

3

4

5

D5

4

3

2

1

第18题有如下程序intfunc(inta,intb){return(a+b);

}main(){

int

x=2,y=5,z=8,r;r=func(func(x,y),z);printf("%d\n",r);}该程序的输出结果是______。A12B13C14D15第19题有以下程序intf1(intx,inty){returnx>y?x:y;}intf2(intx,inty){returnx>y?y:x;}main(){inta=4,b=3,c=5,d=2,e,f,g;e=f2(f1(a,b),f1(c,d));f=f1(f2(a,b),f2(c,d));g=a+b+c+d-e-f;printf("%d,%d,%d\n",e,f,g);}程序运行后的输出结果是______。A4,3,7B3,4,7C5,2,7D2,5,7第20题有以下程序voidf(int*x,int*y){intt;

t=*x;*x=*y;*y=t;}main(){inta[8]={1,2,3,4,5,6,7,8},i,*p,*q;

p=a;q=&a[7];

while(p<q){

f(p,q);p++;q--;}for(i=0;i<8;i++)printf("%d,",a[i]);}程序运行后的输出结果是______。A8,2,3,4,5,6,7,1,B5,6,7,8,1,2,3,4,C1,2,3,4,5,6,7,8,D8,7,6,5,4,3,2,1,第21题下列叙述中正确的是______。AC语言编译时不检查语法BC语言的子程序有过程和函数两种CC语言的函数可以嵌套定义DC语言的函数可以嵌套调用第22题以下所列的各函数声明中,正确的是_____。Avoidplay(vara:Integer,varb:Integer)Bvoidplay(inta,b)Cvoidplay(inta,intb)DSubplay(aasinteger,basinteger)第23题在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是______。A地址传递B单向值传递C由实参传给形,再由形参传回实参D传递方式由用户指定第24题以下函数值的类型是___A___。fun(floatx){

floaty;y=3*x-4;returny;

}AintB不确定Cvoid

Dfloat第25题以下程序的结果是______。int

a,b;voidfun(){

a=100;b=200;

}main(){

int

a=5,b=7;fun();printf("%d%d\n",a,b);}A100200B57C200100D75第26题设函数fun的定义形式为void

fun(char

ch,float

x)

{……}则以下对函数fun的调用语句中,正确的是______。Afun("abc",3.0)Bt=fun('D',16.5)Cfun('65',2.8)Dfun(32,32)第27题在一个C语言程序中______。Amain函数必须出现在所有函数之前Bmain函数可以在任何地方出现Cmain函数必须出现在所有函数之后Dmain函数必须出现在固定位置第28题有以下程序void

f(int

x,int

y){int

t;

if(x<y){t=x;x=y;y=t;}}main(){inta=4,b=3,c=5;

f(a,b);

f(a,c);

f(b,c);

printf("%d,%d,%d\n",a,b,c);}执行后输出的结果是_____。A3,4,5B5,3,4C5,4,3D4,3,5第29题有以下程序fun(inta,intb){if(a>b)return(a);

elsereturn(b);}main(){intx=3,y=8,z=6,r;

r=fun(fun(x,y),2*z);

printf("%d\n",r);}程序运行后的输出结果是______。A3B6C8D12第30题已定义以下函数fun(char*p2,char*p1){

while((*p2=*p1)!='\0'){p1++;p2++;}}函数的功能是______。A将p1所指字符串复制到p2所指内存空间B将p1所指字符串的地址赋给指针p2C对p1和p2两个指针所指字符串进行比较D检查p1和p2两个指针所指字符串中是否有'\0'第31题有以下程序:voidsum(int*a){

a[0]=a[1];}main(){int

aa[10]={1,2,3,4,5,6,7,8,9,10},i;

for(i=2;i>=0;i--)sum(&aa[i]);

printf("%d\n",aa[0]);}执行后的输出结果是______。A4B3C2D1第32题有以下程序voidf(inta[],inti,intj){

intt;if(i<j){t=a[i];a[i]=a[j];a[j]=t;

f(a,i+1,j-1);}}main(){inti,aa[5]={1,2,3,4,5};

f(aa,0,4);for(i=0;i<5;i++)printf("%d,",aa[i]);printf("\n");}执行后输出结果是______。A5,4,3,2,1B5,2,3,4,1C1,2,3,4,5,D1,5,4,3,2,第33题已定义以下函数intfun(int*p){return*p;}fun函数返回值是_____。A不确定的值B一个整数C形参p中存放的值D形参p的地址值第34题有以下程序voidswap(char*x,char*y){chart;

t=*x;*x=*y;*y=t;}main(){char*s1="abc",*s2="123";

swap(s1,s2);printf("%s,%s\n",s1,s2);}程序执行后的输出结果是______。A123,abcBabc,123C1bc,a23D321,cba第35题有以下程序fun(int

x){int

p;

if(x==0||x==1)

return(3);

p=x-fun(x-2);

return

p;}main(){

printf("%d\n",fun(7));}执行后的输出结果是______。A3B7C2D0第36题有以下程序void

fun2(chara,charb)

{printf("%c%c",a,b);}char

a='A',b='B';void

fun1(){

a='C';

b='D';

}main(){

fun1();printf("%c%c",a,b);fun2('E','F');}程序的运行结果是_____。ACDEFBABEFCABCDDCDAB第37题有以下函数int

fun(char

*s)

{char

*t=s;while(*t++);return(t-s);

}该函数的功能是______。A比较两个字符串的大小B计算s所指字符串占用内存字节的个数C计算s所指字符串的长度D将s所指字符串复制到字符串t中习题第1题以下程序的输出结果是____。main(){

intx=10,y=10,i;for(i=0;x>8;y=++i)printf("%d%d

",x--,y);}A10

1

9

2B9

8

7

6C10

9

9

0D10

10

9

1第2题以下程序的输出结果是______。

main(){char

a[10]={'1','2','3','4','5','6','7','8','9',0},*p;inti;i=8;p=a+i;printf("%s\n",p-3);}A6B6789C'6'D789第3题若有以下说明和语句,请选出哪个是对c数组元素的正确引用______。intc[4][5],(*cp)[5];cp=c;Acp+1B*(cp+3)C*(cp+1)+3D*(*cp+2)第4题下面程序main(){inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

printf("%d\n",*(p+2));}的输出是______。A3B4C1D2第5题下面程序voidprtv(int*x){printf("%d\n",++*x);}main(){

inta=25;

prtv(&a);}的输出是______。A23B24C25D26第6题下面函数intfun1(char*x){

char*y=x;while(*y++);return(y-x-1);}的功能是______。A求字符串的长度B比较两个字符串的大小C将字符串x复制到字符串yD将字符串x连接到字符串y后面第7题以下程序的输出结果是____。main(){

char*s="12134211";

intv[4]={0,0,0,0},k,i;for(k=0;s[k];k++){

switch(s[k]){

case'1':i=0;case'2':i=1;case'3':i=2;case'4':i=3;}

v[i]++;

}

for(k=0;k<4;k++)

printf("%d

",v[k]);}A4

2

1

1B0

0

0

8C4

6

7

8D8

8

8

8第8题以下定义语句中,错误的是______。Ainta[]={1,2}Bchar*a[3]Cchars[10]="test"Dintn=5,a[n]第9题以下不能正确进行字符串赋初值的语句为_____。Achar

str[5]="good!"Bchar

str[]="good!"Cchar

*str="good!"Dchar

str[5]={'g','o','o','d'}第10题在说明语句:int*f();中,标识符f代表的是______。A一个用于指向整型数据的指针变量B一个用于指向一维数组的行指针C一个用于指向函数的指针变量D一个返回值为指针型的函数名第11题有以下程序

int

*f(int

*x,int

*y)

{

if(*x<*y)returnx;else

returny;}main(){

inta=7,b=8,*p,*q,*r;p=&a;

q=&b;r=f(p,q);printf("%d,%d,%d\n",*p,*q,*r);}执行后输出结果是______。A7,8,8B7,8,7C8,7,7D8,7,8第12题阅读以下函数fun(char

*sl,char

*s2){int

i=0;while(sl[i]==s2[i]&&s2[i]!='\0')i++;return(sl[i]=='\0'&&s2[i]=='\0');}此函数的功能是______。A将s2所指字符串赋给s1B比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0C比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0D比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0第13题有以下程序main(){inta[][3]={{1,2,3},{4,5,0}},(*pa)[3],i;

pa=a;

for(i=0;i<3;i++)if(i<2)

pa[1][i]=pa[1][i]-1;else

pa[1][i]=1;

printf("%d\n",a[0][1]+a[1][1]+a[1][2]);}执行后输出结果是______。A7B6C8D无确定值第14题已定义以下函数fun(int*p){return*p;}该函数的返回值是______。A不确定的值B形参p中存放的值C形参p所指存储单元中的值D形参p的地址值第15题若有定义:int*p[3];,则以下叙述中正确的是______。A定义了一个基类型为int的指针变量p,该变量具有三个指针B定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针C定义了一个名为*p的整型数组,该数组含有三个int类型元素D定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素第16题有以下程序段inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;

b=p[5];b中的值是______。A5B6C8D9第17题若有说明语句:inta,b,c,*d=&c;则能正确从键盘读入三个整数分别赋给变量a、b、c的语句是______。Ascanf("%d%d%d",&a,&b,d)Bscanf("%d%d%d",&a,&b,&d)Cscanf("%d%d%d",a,b,d)Dscanf("%d%d%d",a,b,*d)第18题有以下程序main(){

int

a[]={2,4,6,8,10},y=0,x,*p;p=&a[1];for(x=1;x<3;x++)

y+=p[x];printf("%d\n",y);}程序运行后的输出结果是_____。A10B11C14D15第19题若有一些定义和语句

#include<stdio.h>

int

a=4,b=3,*p,*q,*w;

p=&a;q=&b;w=q;q=NULL;则以下选项中错误的语句是______。A*q=0Bw=pC*p=vaD*p=*w第20题有以下程序main(){

char

*s[]={"one","t

温馨提示

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

评论

0/150

提交评论