华东交通大学-c++期末考试题库

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

试卷编号:11578所属语言:C语言试卷方案:16(5)cbk试卷总分:100分共有题型:6种━━━━━━━━━━━━━━━一、填空共10题(共计10分)━━━━━━━━━━━━━━━第1题(1.0分)题号:1758若有以下定义,则计算表达式y+=x-=y后的y值是【1】.intx=3,y=2;答案:=======(答案1)=======3第2题(1.0分)题号:1760已知i=8,写出语句a=i--;执行后整型变量a的值是【1】.答案:=======(答案1)=======8第3题(1.0分)题号:1762定义inta[2][4];表示数组a中的元素个数是【1】个.答案:=======(答案1)=======8第4题(1.0分)题号:1764intx;x=4+3%5*2,则x的值为【1】.答案:=======(答案1)=======10第5题(1.0分)题号:1755已知变量a,b都为整型,并且a=7,b=3,则a/b的值为【1】.答案:=======(答案1)=======2第6题(1.0分)题号:1763当a=3,b=2,c=1;时,执行以下程序段后b=【1】.if(ab)if(bc)a=b;elseb=c;elsec=b;答案:=======(答案1)=======2第7题(1.0分)题号:1757设i,j,k均为int型变量,则执行完下面的for循环后,k的值为【1】。for(i=1,j=10;i=j;i++,j--)k=i+j;答案:=======(答案1)=======11第8题(1.0分)题号:1756设k=(a=2,b=a+2,a*b),则k的值为【1】.答案:=======(答案1)=======8第9题(1.0分)题号:1761设a,b,t为整型变量,初值为a=6,b=5,执行完语句t=(ab)?a:b后,t的值是【1】.答案:=======(答案1)=======6第10题(1.0分)题号:1759设x=6,表达式x=(x=9)的值为【1】.答案:=======(答案1)=======0━━━━━━━━━━━━━━━二、判断共10题(共计20分)━━━━━━━━━━━━━━━第1题(2.0分)题号:1571所有关系运算符的运算优先级相同。答案:N第2题(2.0分)题号:1576C程序的注释不能是中文文字信息。答案:N第3题(2.0分)题号:1568inti=10;switch(i/10){case1:printf(A);case2:printf(B);}的输出结果为A。答案:N第4题(2.0分)题号:1569语句inta=2,b=2;if(a==3)b=1;执行后b的值是1。答案:N第5题(2.0分)题号:1577循环结构中的continue语句是使整个循环终止执行。答案:N第6题(2.0分)题号:1575do-while循环的while后的分号可以省略。答案:N第7题(2.0分)题号:1574switch语句不可以用if语句代替。答案:N第8题(2.0分)题号:1573C语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。答案:Y第9题(2.0分)题号:1570a=(b==2)是一个合法的赋值表达式。答案:Y第10题(2.0分)题号:1572C语言不允许混合类型数据间进行运算。答案:N━━━━━━━━━━━━━━━━━三、单项选择共20题(共计40分)━━━━━━━━━━━━━━━━━第1题(2.0分)题号:4614假定所有变量均已正确定义,则下列程序段运行后y的值是()。inta=1,y=4;if(a!=0)y--;elseif(a0)y++;elsey+=y;A:3B:4C:5D:8答案:A第2题(2.0分)题号:4607表达式6!=4的值是()。A:TB:非零值C:0D:1答案:D第3题(2.0分)题号:4602有如下定义:intm=7,n=3;floata=1.5,b=3.0,x;则执行赋值语句x=m/2+n*a/b+1/2;后,x的值为()。A:4.0B:4.5C:5.0D:5.5答案:B第4题(2.0分)题号:4608设有说明语句:chara='\072';则变量a()。A:包含1个字符B:包含2个字符C:包含3个字符D:包含4个字符答案:A第5题(2.0分)题号:4605表达式10/4*2.5值的数据类型为()。A:intB:floatC:doubleD:不确定答案:C第6题(2.0分)题号:4617语句while(!E);括号中的表达式!E等价于()。A:E==0B:!E=1C:E!=0D:E==1答案:A第7题(2.0分)题号:4613下面程序段执行后的结果为:()。intsum=0,n=6;do{sum=sum+n;n++;}while(n8);printf(%d,%d,sum,n);A:6,7B:13,7C:13,8D:以上结果都不对答案:C第8题(2.0分)题号:4612若有说明:inta[3][4];则对a数组元素的正确引用是()。A:a[3][4]B:a[2,3]C:a[2-1][0]D:a(2)(1)答案:C第9题(2.0分)题号:4619在C语言中,要求参加运算的数必须时整数的运算符是()。A:/B:*C:%D:=答案:C第10题(2.0分)题号:4601以下选项中合法的实型常数是()。A:3E3.1B:E-2C:2E3D:2.3E答案:C第11题(2.0分)题号:4615若变量x=8,则执行语句y=x10?x+4:x-2;后,y的值为()。A:8B:10C:12D:6答案:D第12题(2.0分)题号:4604以下标识符中,作为合法的C用户定义标识符的是()。A:1_aB:ifC:x*yD:x_k2答案:D第13题(2.0分)题号:4606以下运算符中,优先级最高的运算符是()。A:=B:!C:/D:+答案:B第14题(2.0分)题号:4610已知ch是字符型变量,下面不正确的赋值语句是()。A:ch=a+b;B:ch='0';C:ch='\41';D:ch=65;答案:A第15题(2.0分)题号:4611已有定义intx;f1oaty;且执行scanf(%d,%f,&x,&y);语句,若从第一列开始输入数据123,45.678(回车),则x的值为()。A:12345B:123C:45D:345答案:B第16题(2.0分)题号:4609为表示关系x≥y≥z,应使用C语言表达式()。A:(x=y)&&(y=z)B:(x=y)AND(y=z)C:(x=y=z)D:(x=y)&(y=z)答案:A第17题(2.0分)题号:4616若intk=7,x=12;则能使值为3的表达式是()。A:x%=(k%=5)B:x%=(k-k%5)C:x%=k-k%5D:(x%=k)-(k%=5)答案:D第18题(2.0分)题号:4618C语言对嵌套if语句的规定是:else总是与()。A:其之前最近的if配对B:第一个if配对C:缩进位置相同的if配对D:其之前最近的且尚未配对的if配对答案:D第19题(2.0分)题号:4600下列程序段的输出结果为()。floata=32.24;printf(%06.1f,a);A:0032.2B:0032.3C:32.2D:32.3答案:A第20题(2.0分)题号:4603设j和k都是int类型,则下面的for循环语句()。for(j=1;j10;j++)printf(%d,j);A:最多执行10次B:最多执行9次C:是无限循环D:循环体一次也不执行答案:B━━━━━━━━━━━━━━━━四、程序填空共2题(共计8分)━━━━━━━━━━━━━━━━第1题(4.0分)题号:672/*----------------------------------------------------【程序填空】---------------------------------------------------------功能:下面程序可求出矩阵a的主对角线上的元素之和,请填空使程序完整。-------------------------------------------------------*/#includestdio.hmain(){inta[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j;for(i=0;i3;i++)for(j=0;j3;j++)/******SPACE**********/if(【?】)/******SPACE**********/sum=sum+【?】;printf(sum=%d,sum);}答案:=======(答案1)=======i==j=========或=========j==i=======(答案2)=======a[i][j]第2题(4.0分)题号:673/*----------------------------------------------------【程序填空】功能:输出100以内能被3整除且个位数为6的所有整数,请将程序补充完整。-------------------------------------------------------*/main(){inti,j;/***********SPACE***********/for(i=0;【?】;i++){j=i*10+6;/***********SPACE***********/if(【?】)printf(%d,j);}}答案:=======(答案1)=======i10=========或=========i=9=======(答案2)=======j%3==0━━━━━━━━━━━━━━━━五、程序改错共2题(共计12分)━━━━━━━━━━━━━━━━第1题(6.0分)题号:626/*------------------------------------------------------【程序改错】--------------------------------------------------------功能:输入10个整数,统计出正数之和以及负数之和。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。------------------------------------------------------*/#includestdio.hvoidmain(){intsum1=0,sum2=0,i,x;i=1;while(i=10){/**********************FOUND***********************/scanf(%d,x);if(x=0)sum1=sum1+x;elsesum2=sum2+x;/**********************FOUND***********************/i--;}printf(sum1=%d\nsum2=%d\n,sum1,sum2);}答案:=======(答案1)=======scanf(%d,&x);=======(答案2)=======i++;=========或=========i=i+1;=========或=========i+=1;第2题(6.0分)题号:627/*------------------------------------------------------【程序改错】--------------------------------------------------------功能:以下程序能求出1*1+2*2+......+n*n=1000中满足条件的最大的n。------------------------------------------------------*/#includestdio.h#includestring.hmain(){intn,s;s=n=0;/**********FOU

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功