沈阳师范大学计算机C语言期末冲刺卷(含六卷).docx
《沈阳师范大学计算机C语言期末冲刺卷(含六卷).docx》由会员分享,可在线阅读,更多相关《沈阳师范大学计算机C语言期末冲刺卷(含六卷).docx(73页珍藏版)》请在课桌文档上搜索。
1、计算机C语言期末冲刺卷(一)一、单项选择题(每小题2分,共100分)1、将用高级程序语言编写的源程序翻译成目标程序的程序称OA、连接程序B、编辑程序C、编译程序D、诊断维护程序【答案】C【解析】将用高级程序语言编写的源程序翻译成目标程序的程序称编译程序。连接程序是一个将几个目标模块和库过程连接起来形成单一程序的应用。诊断程序是检测机器系统资源、定位故隙范围的有用工具。2、计算表达式*执行下面的程序段,变量b的值将变为。doublea-3,b;b=1/2+a;A、0.0B、0.2C、3.0D、3.5【答案】C3、执行以下程序段后,w的值为0intw,a,x=14,y=15;w=(xy)&(WVa
2、);A、-1B、 NULLC、1D、0答案C【薛析】字符变量w的初值为字符A,其ASCII码值为65,字符a,的ASCII码值为97,所以关系表达式wVa的值为1;变量x=14,变量y=15,XY为或,x、y均为真,所以Xy的结果1。因而逻辑表达式(Xy)&(wVa)的值为Io4、下列程序是死循环的是0A、for(;)C、 ints=36;while(s)=s;D、 intm-10;dom一;while(m0);E、 intn-5;while(nl)n;if(n0)break;【答案】A5、以下叙述中正确的是OA、在C语言中,常量名也要遵守标识符的命名规则B、对单目运算符来说,运算对象定在其右
3、侧C、标识符的首字符必须是下划线、字母,其他字符可以是任意的键盘可键入字符D、变量占用内存,常量不占用内存【答案】A【解析】C语言中,用来对变量、符号常量名、函数、数组、类型等命名的有效字符序列统称为标识符,常量名也要遵守标识命名规则,选项A正确;单目运算符的运算对象可以在其左侧或者右侧,如i+或+i,选项B错误;C语言规定标识符只能由字母、数字、下划线组成,选项C错误;般来说,基本类型(整型、字符型等)常量会在编译阶段被编译成立即数,占的是代码段的内存,而字符串常量或基本类型的常量数组占用的是数据段内存。当然,占代码段的内存般不在我们常说的“占内存”范围中,选项D错误;本题答案为A。6、在C
4、语言中,能代表逻辑值“真”的是()。A、 TRUEB、大于O的数C、非O整数D、非O的数【答案】D7、下列定义数组的语句中,正确的是oAintN=IO;B、 #defineN10intxN;intxN;C、intx0.10;D、intX;【答案】B8、可以作为自定义标识符的是oA、2xB、whileC、s&lD_2x【答案Id9、字符串指针变量中存入的是oA、字符串B、字符串的首地址C、第-个字符D、字符串变量【答案】B10、以下选项中,与k=n+完全等价的表达式是oA、 k=n,n=n+lB、 n=n+l,k=nC、 k=+nD、 k=n+l【答案】A【解析】k=n+的意思是先将n的值赋给k
5、,然后n的值再加1,选项A)符合题意;选项B)和C)是先使n的值加1,然后再赋值给k;选项D)等价于k=k+(n+l)o11、c程序的执行过程在下列说法中,是正确的。A、C程序从第个函数开始执行,直到最后一个函数结束B、C程序从第-个函数开始执行,直到主函数结束C、C程序从主函数开始执行,直到最后一个函数结束D、C程序从主函数开始执行,直到主函数结束【答案】D12、C语言中运算对象必须是整型的运算符是oA、%=B、/C、二D、strcatstrcmp.b选项中StrICn返回的是字符串S实际占用内存大小加上结尾符A选项中不能用关系运算符进行大小比较,可以使用strcmpD选项当使用Strcat
6、连接函数时,内存空间会减少一个字符位置。14、下列定义数组的语句中正确的是A、 #definesize10charstrlsize,str2size+2;B、charstr;C、intnum,10,;Dintn=5;intann+2;【答案】A15、有以下程序#includeintf(intx,inty)(return(y-)*x);main()inta=3,b=4,c=5,d;d=f(f(a,b),f(a,c);printf(%dn”,d);程序运行后的输出结果是OA、10B、9C、8D、7【答案】B16、有以下程序:main()(inti,n=0:for(i=2;in=3Dn=4【答案】D
7、17、设PI和p2是指向同个int型维数组的指针变量,k为int型变量,则不能正确执行的语句是OA、k=*pl+*p2B、p2=k;C、pl=p2;D、k=*pl*(*p2);【答案】B18、在执行以下程序时,为了使输出结果为:t=4,则给a和b输入的值应满足的条件是main()(ints,t,a,b;scanf(,%d,%d,&a,&b);s=l;t=l;if(a0)s=s+l;if(ab)t=st;elseif(a=b)t=5;elset=2*s;printf(z,t=%d11,z,t);)AababOC、Oaab【答案】C19、若在某函数内部有定义:inta34;则数组a中各元素。A、可
8、在程序的运行阶段得到初值0B、可在程序的编译阶段得到初值0C、不能得到确定的初值D、可在程序的编译或运行阶段得到初值0【答案】C【解析】在函数内部定义的存储类型为auto的变量或数组,如果没有进行初始化,就不能得到确定值。20、定义共用体的关键字是oA、unionB、 enumC、 structDtypedef【答案】A21、以下运算符中,优先级最高的运算符是oA、?:B、+C、&D、,【答案】B22、当a=l,b=3,c=5,d=5时,执行下面一段程序后,X的值为if(ab)if(cd)x=l;elseif(ac)if(b100)break;B、for(;);C、 intk=1000;do+
9、k;while(k=1000);Dints=36;while(s);【套案】C25、若有以下定义:inta=1,2,3,4,5,6,7;charcl=,b,c2=2,;则数值不为2的表达式是oA、alB,d,-clC、a,3,-c2D、 c20【答案】D【解析】本题考查数组的定义、初始化及其引用,以及对字符ASCn码值的熟悉程度。解本题的关键在于熟悉字符的ASCIl码值。字符在进行数学运算时取其ASCll码值,其中b,的ASCIl码值为98,d的ASCu码值为100,字符2的ASCIl码值为50。根据以上知识,可知D)选项中表达式C2-0的值为50o26、以下运算符中,优先级最高的运算符是()
10、。A、二B、!=C、*(乘号)D、()【答案】D27、若有定义:inta34;不能表示数组元素al1oA、*(al+l)B、*all)C、(*(al)l)D、*(a+5)【答案】D28、以下关于运算符优先顺序的描述中正确的是。A、关系运算符算术运算符赋值运算符V逻辑与运算符B、逻辑与运算符关系运算符算术运算符赋值运算符C、赋值运算符V逻辑与运算符关系运算符算术运算符D、算术运算符V关系运算符赋值运算符V逻辑与运算符【答案】C29、下面正确的字符串常量是oA、aB、376C、nD、376【答案】C30、C语言中,系统的标准输入文件是指A、键盘B、显木器C、软盘D、硬盘【答案】A【解析】此题考查有
11、关标准设备的知识。在多数C语言版本中,stdio.h文件至少定义了4种标准设备文件,可以直接引用不必含有打开操作,包括:标准输入文件指针Stdin缺省为键盘;标准输出文件指针StdoUt缺省为显示器;标准错误输出文件指针StdCrr缺省为显示器;标准打印输出文件指针StdPrn指打印机;止匕外,还可能包括如辅助设备等标准文件指针,且多数文件指针可以被重新定向到其他设备。31、C语言规定,函数返回值的类型是由()决定的。A、return语句中的表达式类型B、调用该函数时的主调函数类型C、在定义函数时所指定的函数类型D、调用该函数时由系统临时【答案】C32、关于for(表达式1;表达式2;表达式3
12、),叙述正确的是。A、表达式1不可以缺省B、表达式2不可以缺省C、表达式3不可以缺省D、三个表达式都可以缺省【答案】D33、若需要利用形参直接访问实参,则应把形参变量说明为()参数。A、指针B、引用C、传值D、常值【答案】B【解析】在进行参数传递时,引用参数是利用形参直接访问实参,形参的变化直接影响实参的变化,而传值参数不会影响实参变量。34、在下列程序段中,枚举变量cl,c2的值依次是Oenumcolor(red,yellow,blue=4,green,whitecl,c2;cl=yellow;c2=white;printf(,%d,%d11z,cl,c2);A、1,6B、2,5C、1,4D
13、、2,6【答案】A35、以下程序的运行结果是ovoidsub(intx,inty,int*z)(*z=y-;)main()inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf(z,%4d,%4d,%4d”,a,b,c);)A、5,2,3B、-5,-12,-7C、-5,-12,-17D、5,-2,-7【答案】A36、对于WhiIe、doWhiIe循环结构,正确的说法是。A、只是表达形式不同B、do-while结构中的语句至少执行一次C、while结构中的语句至少执行一次D、条件成立时,它们有可能一次也不执行【答案】B【解析】注意区别While、
14、doWhiIe两种循环结构的异同:While循环是先判断条件是否成立,成立时才执行;而doWhile先执行再判断,它至少执行-次。37、F面程序的输出结果是omain()(inta34=1,3,5,7,9,11,13,15,17,19,21,23;int(*p)4=a,i,j,k=0;for(i=0;i3;i+)for(j=0;j2;j+)k=pij;printf(%dn”,k);A、17B、18C、19D、23【答案】C【解析】P是指向长度为4的一维数组的指针变量,可看作是:维数组a的行指针,可以像使用数组名一样通过P带数组下标的形式来引用数组中元素,变量k最后是元素a2l的值。38、以下程
15、序的输出结果是o#defineSQR(X)X*Xmain()inta=16,k=2,m=l;a=SQR(k+m)SQR(k+m);printf(,%dn,a);)A、16B、2C、9D、1【答案】B39、以下叙述中正确的是oA、数组下标的下限是1B、数组下标的下限由数组中第-个非零元素的位置决定C、数组下标的下限由数组中第个被赋值元素的位置决定D、charcl,c2,*c3,c440是合法的变量定义语句【答案】D【解析】数组下标的下限是Oo因此D选项正确。40、有以下程序include#includestructa(inta;charb10;doublec;);voidf(structat);
16、main()(structaa=1001,zhangda,1098.0;f(a);pringt(,%d,%s,%6.lfnn,a.a,a.b,a.c);)voidf(structat)(t.a=1002;strcpy(t.b,nchangrongn);t.c=1202.0;程序运行后的输出结果是oA、1001,ZhangDa,1098.0B、1002,ChangRong,1202.0C、1001,ChangRong,1098.0D、1002,ZhangDa,1202.0【答案】A41、以卜条件表达式中能完全等价于条件表达式X的是.A、 (x=0)B、 (x!=0)C、 (x=l)D、 (x!=
17、l)【答案】B42、若变量a,b,t已正确定义,要将a和b中的数进行交换,以下选项中不正确的语句是oA、a=a+b;b=a-b;a=a-b;B、t=a;a=b;b=t;C、a=t;t=b;b=a;Dt=b;b=a;a=t;【答案】C43、设a、b、c、dm、n均为int型变量,且a=5、b=6、C=7、d=8In=2、n=3则逻辑表达式(m=ab)M(n二cd)运算后,n的值为A、0B、1C、2D、3【答案】D44、以下程序的输出结果是omain()inti=0,s=O;for(;)if(i=6)break;i+;s+=i;)printf(%dn”,s);)A、10B、15C、21D、死循环【
18、答案】C45、 个c语言程序是由构成。A、语句B、行号C、数据D、函数【答案】D46、该语句打印结果为(每个d后都有空格)printf(%d,Printf(d,printf(z,%d,43);A、 4321B、 434343C4332D4321【答案】C47、以下不正确的定义语句是oA、doublex5=l.0,2.0,3.0,4.0,5.0;B、inty5=0,1,2,3,4,5;C、charcl=T,2,3,4,5;Dcharc2=,a,b,c,;【答案】B【解析】本题考查对维数组的赋值。选项B)中,y5说明数组中有5个元素,但却给它赋了6个值,数组溢出所以是错误的。48已知inta,b;
19、用语句SCanf(%d%d”,&a,&b);输入a,b的值时,不能作为输入数据分隔符的是oA、,B、.空格C、回车D、Tab键【答案】A【解析】C语言规定在使用Seanf输入时可以用作数据分隔符的有空格,回车和Tab键。用户如果要从键盘输入空格字符,则需要使用其他的输入方式。49、若有定义:charstrl10=,zaaaaaaa,z;charstr210二bbbbb;将字符串str2连接到strl,则下列描述中正确的是。A、StrCat(StrI,str2)可以将字符串Str2连接到strl中BnStrneat(Strl,str2,strlen(str2)可以将字符串str2连接到Strl中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 沈阳 师范大学 计算机 语言 期末 冲刺 含六卷
链接地址:https://www.desk33.com/p-1262789.html