还剩6页未读,继续阅读
文本内容:
试卷编号9688所属语言C语言试卷方案期中考试试卷总分100分共有题型5种
一、填空共15题(共计15分)第1题〔
1.0分〕题号528设a、b、c为整型数,且a=
2、b=
3、c=4则执行完以下语句a*=16+(b++)-(++c);后,a的值是【1】.答案=====(答案1)=======28第2题〔
1.0分〕题号:78i=5;写出语句i+=012;执行后整型变量i的十进制值是【1】.答案====(答案1)=二==15第3题〔
1.0分〕题号:510假设a是int型变量,则计算表达式a=25/3%3后a的值为【1】.答案====(答案1)======2第4题〔
1.0分〕题号:437以下程序的输出结果为【1】,ttincludestdio.h〃main(){inta=010j=10;printf(〃%d%d\n〃,++aj--);}答案====(答案1)=======910第5题〔
1.0分〕题号431执行下面两个语句输出的结果是[1】,charcl=97c2=98;printf(〃%dclc2);答案====(答案1)=======97b第6题〔
1.0分〕题号:293getcharO函数只能接收一个【1】.答案====(答案1)=======字符第7题〔
1.0分〕题号:440设a=3b=4c=5则表达式!(a+b)+cTb+c/2的值为ru.答案====(答案1第8题〔
1.0分〕题号:95a=13b=6ab的十进制数值为【1】答案====(答案1)====1第9题〔
1.0分〕题号:306当a=lb=2c=3时执行以下程序段后b1].if(ac)b=a;a=c;c二b;答案=二==(答案1)=======2第10题〔
1.0分〕题号:532以下do-while语句中循环体的执行次数是
[1].a=10;b=0;do{b+=2;a~=2+b;}while(a=0);答案====(答案1)=======3第11题〔
1.0分〕题号:398程序段intk二序;while(k=0)程kT循环体语句执行【1】次.答案====(答案1)====0第12题〔
1.0分〕题号:438以下程序的输出结果为【1】,#includestdio.h〃main(){inta;for(a=0;a10;a++);printf(〃%d〃,a);}答案====(答案1)====10第13题〔
1.0分〕题号:336假设有以下数组a数组元素:a
[0]~a
[9]其值为941282107513该数组的元素中,数值最大的元素的下标值是[
11.答案====(答案1)=二==2第14题〔
1.0分〕题号:341定义inta
[2]
[3];表示数组a中的元素个数是
[1]个.答案====(答案1)=二==6第15题〔
1.0分〕题号:328C语言中,数组元素的下标下限为【1】.答案====(答案1)====0
二、判断共15题(共计15分)第1题〔
1.0分〕题号940inta
[9];则a数组的下标范围是1-9答案N第2题〔
1.0分〕题号:935在C程序中%是只能用于整数运算的运算符答案Y第3题〔
1.0分〕题号:929在C语言中,5种基本数据类型的存储空间长度的排列顺序为charint〈longint=floatdouble答案Y第4题〔
1.0分〕题号194假设有定义和语句inta;charc;floatf;scanf(〃%d%c〃,acf);假设通过键盘输入10A
12.5则a=10c=A,f=
12.
5.答案Y第5题〔
1.0分〕题号:961C语言本身并不提供输入输出语句但可以通过输入输出函数来实现数据的输入输出.答案Y第6题〔
1.0分〕题号:721语句scanf(〃%
7.2f〃a);是一个合法的scanf函数.答案N第7题〔
1.0分〕题号:951在执行switch语句时,default和各个case的出现次序不影响执行结果.答案Y第8题〔
1.0分〕题号:869假设有inti=10尸0;则执行完语句if(j=0)i++;elsei—;i的值为IL答案N第9题〔
1.0分〕题号:930关于if语句中,条件表达式只能是关系表达式或逻辑表达式答案N第10题〔
1.0分〕题号:952do-while循环是先判断循环条件表达式后执行循环体;while循环是先执行循环体后判断循环条件表达式.答案N第11题〔
1.0分〕题号:953C语言中的for语句可以用于循环次数已经确定的情况但是不能用于循环次数不确定而只给出循环完毕条件的情况.答案N第12题〔
1.0分〕题号:954continue语句只完毕本次循环而不是终止整个循环的执行.break语句则是完毕整个循环过程不再判断执行循环的条件是否成立.答案Y第13题〔
1.0分〕题号:941在定义二维数组时可以将该数组的两个维数全部省略答案N第14题〔
1.0分〕题号:735如果想使一个数组中全部元素的值为0可以写成inta
[10]={0*10};答案N第15题〔
1.0分〕题号:736inta
[3]={5}{9}};它的作用是将数组各行第一列的元素赋初值其余元素值为
0.答案Y
三、单项选择共20题(共计40分)第1题〔
2.0分〕题号:2056以下程序的输出结果是().main{floatx=
3.6;inti;i=intx;printfz,x=%fi=%d\n,zxi;}A:x=
3.600000i=4B:x=3i=3C:x=
3.600000i=3D:x=3i=
3.600000答案C第2题〔
2.0分〕题号:2214在C语言中,char型数据在内存中的存储形式是.A:补码B:反码C:原码D:ASCII码答案D第3题〔
2.0分〕题号:2174C语言程序中必须有的函数是.A:#includestdio.h〃B:mainC:printfD:scanf答案B第4题〔
2.0分〕题号:2040假设ch为char型变量k为int型变量字符a的ASCII十进制代码为97则以下程序段的执行结果是.ch=a;k=12;printf〃%x%o〃chch;printf〃k=%%%d\n〃,k;A:因变量类型与格式描述符的类型不匹配输出无定值B输出项与格式描述符个数不符输出为零值或不定值C:61141k=%12D:61141k=%d答案C第5题〔
2.0分〕题号:2049以下程序的输出结果为.main{inti=010j=10;printf〃%d%d\n〃,++ij―;A:ll10B:910C:01091:109答案B第6题〔
2.0分〕题号:2189从键盘上输入某字符串时不可使用的函数是
0.A:getcharB:getsC:scanfD:fread答案A第7题〔
2.0分〕题号:2045假设给定条件表达式Ma++:a一则其中表达式MA:和M=0等价B:和M=l等价C:和M!=0等价D:和M!=l等价答案C第8题〔
2.0分〕题号:2144inta=lb=2c=3;ifaba=b;ifaca=c;则a的值为.A:1B:2C:3D:不一定答案A第9题〔
2.0分〕题号:2122以下程序的输出结果是.main{intx=ly=0a=0b=0;switchxcase1:switchycase0:a++;break;case1:b++;break;case2:a++;b++;break;case3:a++;b++;break;printf〃a二%db二%d\n〃ab;A:a=lb=0B:a=2b=lC:a=lb=lD:a=2b=2答案B第10题〔
2.0分〕题号:2050C语言中以下几种运算符的优先次序0的排列是正确的.A:由高到低为:!||算术运算符赋值运算符B:由高到低为!,算术运算符关系运算符II赋值运算符C:由高到低为:算术运算符关系运算符赋值运算符,!IID:由高到低为:算术运算符关系运算符,!,II赋值运算符答案B第11题〔
2.0分〕题号:2263以下不正确的if语句形式是
0.A:ifxyx!=y;B:ifx==yx+=y;C:ifx!=yscanf级d〃xelsescanf,z%d/zy;D:ifxy{x++;y++;}答案C第12题〔
2.0分〕题号:2059以下程序的运行结果是.main{intn;forn=l;n=10;n++{ifn%3==0continue;printf〃%d〃n;A:12457810B:369C:120:1234567890答案A第13题〔
2.0分〕题号:2061在以下给出的表达式中,与do--whileE语句中的E不等价的表达式是.!E==0E0||E0E=0D:E!=0答案C第14题〔
2.0分〕题号:2058以下程序的运行结果是.maininti=lsum=0;whilei10sum=sum+l;i++;printf,/i=%dsum=%d,zisum;A:i=10sum=9B:i=9sum=9C:i=2sum=1D:运行出现错误答案D第15题〔
2.0分〕题号:2068设j和k都是int类型则for循环语句forj=0k=-l;k=l;j++k++printf〃****\n〃;.A:循环完毕的条件不合法B是无限循环C:循环体一次也不执行D:循环体只执行一次答案B第16题〔
2.0分〕题号:2251以下不是无限循环的语句为.A:fory=0x=l;x++y;x=i++i=x;B:for;;x++=i;C:while1{x++;}D:fori=10;;i-sum+=i;答案A第17题〔
2.0分〕题号:2278以下能对一维数组a进展正确初始化的语句是.inta
[10]=00000inta
[10]={};inta[]={0};inta
[10]={10*l};答案C第18题〔
2.0分〕题号:2284假设有说明inta
[3]
[4]={0};则下面正确的表达是().A:只有元素a
[0]
[0]可得到初值0B:此说明语句不正确C:数组a中各元素都可得到初值,但其值不一定为0D:数组a中每个元素均可得到初值0答案D第19题〔
2.0分〕题号:2256printf函数中用到格式符%5s其中数字5表示输出的字符串占用5歹(如果字符串长度大于5则输出按方式
0.A:从左起输出该字符串,右补空格B:按原字符长从左向右全部输出C:右对齐输出该字串,左补空格D:输出错误信息答案B第20题〔
2.0分〕题号:2275以下对二维数组a的正确说明是().A:inta.
[3][]B:floata
(34)C:doublea[l]
[4]D:floata
(3)
(4)答案C
四、程序填空共4题(共计24分)第1题〔
6.0分〕题号:427/*^includestdio.hmain{intcockshenschicks;cocks=0;whilecocks=19/***********SPACE***********/{[J=0;/***********SPACE***********/whilehens=[]{chicks=
100.0-cocks-hens;if
5.O*cocks+
3.0*hens+chicks/
3.0==
100.0printf,z%d%d%d\n〃,cockshenschicks;/***********SPACE***********/[];/***********SPACE***********/[1;;答案====(答案1)====hens====答案2===二33====答案3=二=二=hens++++henshens=hens+1====答案4====【程序填空】题目百鸡问题100元买100只鸡,公鸡一只5元人民币,母鸡一只3元人民币,小鸡一元人民币三只,求100元人民币能买公鸡、母鸡、小鸡各多少只++cockscocks_cocks+lcocks=cocks+1第2题〔
6.0分〕题号:459/**/【程序填空】题目在歌星大奖赛中,有10个评委为参赛的选手打分,分数为广100分选手最后得分为去掉一个最高分和一个最低分后其余8个分数的平均值请编写一个程序实现【程序填空】*/#includestdio.hvoidmainintscoreimaxminsum;max=-32768;min=32767;sum=0;fori=l;i=10;i++printf/zInputnumber%d=〃,i;/***********SPACE***********/scanf〃%d〃,[];sum+=score;/***********SPACE***********/题目以下程序是用选择法对10个整数按升序排序,程序中有4个空,填空使程序完整*//***********SPACE***********/[]mainintijkta[N];fori=0;i〈=NT;i++scanf〃%d〃a[i];fori=0;iN-l;i++if[]max=score;/***********SPACE***********/printfzzCanceledmaxscore:%d\nCanceledminscore:%d\nz/maxmin;/***********SPACE***********/printf,zAveragescore:%d\n,z[!;}答案====答案1=======score====答案2====scoremaxmaxscore====答案3scoremin/***********SPACE***********/[]/***********SPACE***********/forj=i+l;[];j++ifa[j]a[k]k=j;/***********SPACE***********/if[]{t=a[i];a[i]=aLk];a[k]=t;}printfoutputthesortedarray:\n;fori=0;i=N-l;i++printf〃%5d〃a[i];printf〃\n〃;答案====答案1™===^defineN10====答案2====k二i;====答案3jN次Nj【程序填空】str[i]!=0坎str[i]====答案3===str[k]=str[i]滞*str+k=*str+i*str+k=str[i]====答案4str[k]=,\0题目以下程序的功能是删除字符串中的指定字符,字符串和要删除的字符均由键盘输入str[k]=0*/ttinclude〃stdio.h〃maincharstr
[80]ch;intik=0;/***********SPACE***********/gets[];ch=getchar;/***********SPACE***********/fori=0;[];i++/***********SPACE***********/ifstr[i]!=ch{[];k++;}/***********SPACE***********/[];putsstr;*(str+k)=0肃*(st「+k)=NULL
五、程序设计共1题(共计6分)第1题〔
6.0分〕题号:404/*【程序设计】题目编写函数fun求任一整数m的n次方答案====(答案1)注意局部源程序给出如下请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的假设干语句str====答案2===str[i]!=\0————————————————*/^include〃stdio.h〃main{intmn;longs;longfunintint;printf〃输入m和n的值〃;scanf〃%d%d〃,mn;s=funmn;printf/zs=%ld\nz/s;getchO;yzj;longfunintmintn/**********Prograiii**********//**********End**********/yzjFILE*IN*OUT;intn;inti
[2];longo;IN二fopen〃in.dat〃〃r〃;ifIN==NULL{printf,zReadFileError;}OUT=fopen〃out.dat〃,〃w〃;ifOUT二二NULL{printfWriteFileError;}forn=0;n2;n++fscanfIN〃%d〃,i[n];}o=funi
[0]i
[1];fprintfOUTo;fcloseIN;fcloseOUT;答案longintx=l;inti;fori=l;i=n;i++x=x*m;returnx;。