ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:519.79KB ,
资源ID:11763758      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11763758.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机二级《C语言》考前押题密卷与答案详解.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机二级《C语言》考前押题密卷与答案详解.docx

1、计算机二级C语言考前押题密卷与答案详解2015年计算机二级C语言考前押题密卷一、选择题1若有定义“double a;”,则正确的输入语句是()。A.B.C.D.参考答案:D参考解析:本题考查seanf函数的调用形式:scanf(格式字符串,输入项地址表)。题中定义变量a为双精度型变量,双精度变量的格式符为“le”;变量的地址用取地址符“&”加变量名表示,所以选项D正确。2 s1和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句s;则以下选项中正确的是()。A.if(sls2)S;B.if(strcmp(s1,s2)S;C.if(stremp(s2,s1)0)S

2、;D.if(stremp(sl,s2)0)S;参考答案:D参考解析:在C语言中,不能直接比较两个字符串的大小,必须用特定的函数来完成,选项A错误;选项B不管大于还是小于都执行S,不符合题意;选项C正好相反,当s2大于sl时,执行语句S,可知选项D正确。点击查看试题笔记(12)3函数调用strcat(strcpy(str1,str2),str3)的功能是()。A.将字符串str1复制到字符串str2中后再连接到字符串str3之后B.将字符串str1连接到字符串str2之后再复制到字符串str3之后C.将字符串str2复制到字符串str1之后再将字符串str3连接到字符串str1之后D.将字符串s

3、tr2连接到字符串str1之后再将字符串str1复制到字符串str3中参考答案:C参考解析:strcat(sl,s2)函数的功能是把s2字符串连接到s1字符串末尾,strcpy(sl,s2)是把s2字符串复制到sl字符串,要保证s1的容量。4有以下程序:程序的输出结果是()。A.2870B.4284C.2668 D.3981参考答案:A参考解析:1-100内打印出如下数,这个数,可以被7整除,前一个数可以被3整除,再前一个数可以被2整除,最终运行结果为2870,因此正确答案为A。5三种基本结构中,能简化大量程序代码的是()。A.顺序结构B.分支结构C.选择结构D.重复结构参考答案:D参考解析:

4、重复结构也称为循环结构,它根据给定的条件,判断是否需要重复执行某一相同或类似的程序段,这种可以简化大量的程序行。6下列叙述中错误的是()。A.一种数据的逻辑结构可以有多种存储结构B.数据的存储结构与数据的处理效率无关C.数据的存储结构与数据的处理效率密切相关D.数据的存储结构在计算机中所占的空间不一定是连续的参考答案:B参考解析:数据的存储结构分顺序存储结构和链式存储结构,一个数据的逻辑结构可以有多种存储结构。顺序结构中数据元素所占的存储空间是连续的,而链式存储结构中,数据元素通过指针就联系在一起了。所以所占的存储空间不一定是连续的。7有下列函数定义:该函数的类型是()。A.int类型B.fl

5、oat类型C.void类型D.函数无类型说明,定义有错参考答案:A参考解析:本题考查函数值的类型,在函数定义时,由于函数没有说明其类型,系统默认一律自动按整型(int)处理。8下列函数的类型是()。A.IntB.B.不确定C.void D.float参考答案:A参考解析:本题考查函数值的类型。在函数调用时,尽管y的类型是float,x的类型是double,但是因为函数定义时没有指定类型说明,系统默认函数值的类型为int型,所以计算后Y的类型是int型。9设有定义的语句:“char cl=92,c2=92;”,则以下表达式中的值为零的是()。A.B.CD.参考答案:A参考解析:当值相同时按位异或

6、,则为0,按位或与按位与时仍不变,负数也为非0。10下列程序的输出结果是()。A.2B.0C.1D.不确定的值参考答案:C参考解析:第一个if语句,先判断条件,发现a11有以下程序:程序的运行结果是()。A.CDEFB.ABEFC.ABCDD.CDAB参考答案:A参考解析:在函数funl()之前定义了全局字符变量a和b。这两个变量的作用域是从其定义处开始到整个程序末结束。在函数funl()之内定义了两个变量a和b,并且分别初始化为字符C和D 。12设有如下定义:则下列程序段的输出结果为()。A.8,10B.6,8C.7,9 D.6,2参考答案:D参考解析:程序中ptr指针指向数组arr的首地址

7、,*ptr=arr0=6,*(ptr2)=2.故选D。13以下叙述中正确的是()。A.在C程序中无论是整数还是实数,只要在允许的范围内都能准确无误地表示B.C程序由主函数组成C.C程序由若干函数组成D.C程序中只允许包含一个函数参考答案:C参考解析:整型是没有问题的,实型在存诸的时候,是用科学记数法存的,没有办法得到准确值的,是有一定误差的。C程序是由若干的函数组成,不只有主函数,函数是C程序的基本组成部分。但是C程序中必须有一个而且只能有一个以main(主函数)开头的函数,因为C程序的执行是从main函数开始的,所以正确选项为C。14有下列程序段:为使此程序段不陷入循环,从键盘输入的数据应该

8、是()。A.任意正奇数B.任意负偶数C.任意正偶数D.任意负奇数参考答案:D参考解析:本题主要考查do=while循环,因为变量t的初始值等于l,经过第一次do=while循环后,执行t-t-1这条语句一次,所以变量t的值为-1,判断关系表达式t!=n是否成立,如果关系表达式成立,则执行第二次循环,如果关系表达式不成立,退出循环。由此可见,只要输入变量n的值为负奇数,则一定会使t!-n成立,故退出do-while循环。15若变量已正确定义为int型,要给a、b、C输入数据,正确的输入语句是()。A.B.C.D参考答案:D参考解析:scanf是键盘输入语句,%d是打印十进制文件,&x就是把你从键

9、盘输入的值赋给x后面依此类推,因此正确答案为D。16若有运算符:、一、一、%、=D.sizeof、%、=参考答案:D参考解析:主要考查运算符的优先级。sizeof的优先级最高,其次是%,优先级最低的是“=”。17若有定义:“int a23;”,则对a数组的第i行第j列元素的正确引用为()。A.*(*(a+i)+j)B.(a+i)jC.*(a+i+J)D.*(a+i)+J参考答案:A参考解析:通过地址来引用数组元素的方法有下列5种:aij;*(ai+j);*(*(a+i)+j);*(aij);(&a004-3*i+j)。故A正确。18有以下程序段:程序段的输出结果是()。A.B.C.D.9参考答

10、案:B参考解析:第一次n=107 n-后n=9,所以输出9;第二次n=97 n-后n=8,所以输出8;第三次n=87 n- - 后n=7,所以输出7;第四次n=7=7结束。19已知有如下结构体:若有P=&data,则对data的成员a引用正确的是()。A.B.C.D.参考答案:B参考解析:本题主要考查结构指针:p=&data,访问结构体的成员。它可以通过结构变量访问,即data可以用等价的指针形式:(*p).a和p-a来访问结构体变量中的成员。20以下选项中不合法的用户标识符是()。A.abc.cB.fileC.MainD.PRINTF参考答案:A参考解析:C语言规定标识符只能由字母、数字、下

11、划线组成,并且只能由字母或下划线开头。A中包含点符号,因此A选项不合法。21下列叙述中正确的是()。A.一个逻辑数据结构只能有一种存储结构B.逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率参考答案:D参考解析:数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式。一种数据结构可以根据需要采用不同的存储结构,存储结构有顺序和链式两种。不同的存储结构,其处理的效率不同。22下列数据结构中,能用二分法进行查找的是()。A.顺序存储的有序线性表B.结性

12、链表C.二叉链表D.有序线性链表参考答案:A参考解析:二分法查找只用于顺序存储的有序线性表,而顺序查找用于顺序存储的非有序线性表和线性链表。23当执行以下程序段时,()。A.循环体将执行一次B.B.循环体将执行两次C.循环体将执行无限次D.系统将提示有语法错误参考答案:A参考解析:do-while的功能是先执行一次循环体,再判断条件是否成立,当x=-1时,执行d0语句,x=x*x=1,接着执行while后的表达式,其值为0,退出循环,因此循环体只执行了一次。24若a和b均是正整型变量,正确的switch语句是()。A.switch(pow(a,2)+pow(b,2)(注:调用求幂的数学函数)B

13、.C.D.参考答案:A参考解析:B中switch(a*a+b*b);后面不应该有分号,C中应为switch(a)。点击查看试题笔记(5)25常采用的两种存储结构是()。A.顺序存储结构和链式存储结构B.散列方法和索引方式C.链表存储结构和数组D.线性存储结构和非线性存储结构参考答案:A参考解析:线性表的存储通常要用两种存储结构:顺序存储结构和链式存储结构。26数字字符0的ASC值为48,运行以下程序的输出结果是()。A.3,2B.50,2C.2,2 D.2,50参考答案:C参考解析:b+是先用表达式的值然后自增1,因此表达式值为2,b为3;b-a=3 -1=2,因此最后输出的结果为2,2,前一

14、个为字符2,后一个为数字2。27设计软件结构是软件生命周期的()。A.软件定义期B.软件开发期C.软件维护期D.以上3个都不是参考答案:B参考解析:本题是对软件设计结构的考查。设计软件结构是软件概要设计阶段进行的,而概要设计属于软件开发期。28则在使用函数stcat(s1,s2)后,结果是()。A.s1的内容更新为abcdefghiB.s1的内容更新为defghi0C.s1的内容更新为defghiabc0D.s1的内容更新为abcdefghi0参考答案:D参考解析:strcat(sl,s2)函数的功能是把s2字符串连接到sl字符串的末尾,要保证s1有足够的空间容纳下连接后的字符串。29有下列程

15、序:程序执行后的输出结果是()。A.35B.37C.39D.3975参考答案:D参考解析:执行第一次for循环时,用表达式pij!= 0来判断字符串数组指针P是否到达字符串的结尾,如果没有到达,继续执行while中的语句。if语句表示(Pij- 0)除2的余数不为0时,即字符串所有奇数执行后面的语句。所以退出第1次for的循环体时,输出为397,执行第2次循环体。对字符串“2584”进行处理,输出结果为5,因而最后输出结果为3975。30在结构化分析方法中,数据字典的作用是()。A.存放所有需要处理的原始数据B.存放所有处理的结果C.存放所有程序文件D.描述系统中所用到的全部数据和文件的有关信

16、息参考答案:D参考解析:在C语言中,结构化分析方法中的数据字典的作用是描述系统中所用到的全部数据和文件的有关信息。31以下能正确定义二维数组的是()。A.B.C.D.参考答案:B参考解析:选项A中对于二维数组,必须通过赋值的个数来确定其长度,没有赋值则无法确定。选项C中赋的是空值,也不能确定其行下标。选项D中定义的两行三列,而赋值的却是三行两列。32下面for语句的循环次数为()。for(x=l,y=0;(y!=19)&.(x6);x+);A.是无限循环B.循环次数不定C.最多执行6次D.最多执行5次参考答案:D参考解析:本题考查for循环的使用。根据条件考虑x的取值变化,x从1取到5,可以循

17、环5次,但并不知道y如何变化,有可能出现y=19提前跳出循环的情况,所以最多执行5次。33以下选项中正确的整型常量是()。A.12.B.-20C.1.000 D.4 56参考答案:B参考解析:选项A,为float类型;选项c,中间有逗号不是一个常量;选项D,中间有空格,是三个连续的整形常量。34下列叙述中正确的是()。A.用ER图能够表示实体集之间一对一的联系、一对多的联系、多对多的联系B.用ER图只能表示实体集之间一对一的联系C.用ER图只能表示实体集之间一对多的联系D.用ER图表示的概念数据模型只能转换为关系数据模型参考答案:A参考解析:用ER图可以描述实体及其相互之间的联系,还可以描述多

18、个实体集之间的联系和一个实体集内部实体之间的联系。用ER图表示的概念数据模型不仅能转换为关系数据模型,还可以转换为其他数据模型,如网状模型和层次模型等。所以A的说法正确。35有以下程序,其中函数f的功能是将多个字符串按字典顺序排序()。程序运行后的输出结果是()。A.2B.3C.6D.4参考答案:D参考解析:函数void f的功能是将字符指针数组*p中的每个字符串按照从小到大的顺序排列。在主函数main()中,调用f(p,5)后,字符指针数组*p5中的字符串按照字典顺序从小到大排列为如下形式,即*p5-aab-dfg,abbd,abc,cd,dcdbe),因此P1=abdb,strlen(p1

19、)=4。36下列叙述中错误的是()。A.线性表是由n个元素组成的一个有限序列B.线性表是一种线性结构C.线性表的所有结点有且仅有一个前件和后件D.线性表可以是空表参考答案:C参考解析:线性表可以是空表,在线性表中,第一个结点没有前驱结点(前件),最后一个结点没有后继结点,其他结点有且只有一个前驱点(后继点)。37不合法的main()函数命令参数形式是()。A.B.C.D.参考答案:C参考解析:在C语言中,main()函数也可以有参数,例如,main(int argc,char*argv),argc是指字符串的指针数组,而其他几项表达不正确。38若已定义:则能够正确表示数组元素a12的表达式是(

20、)。A.*(*prt+1)2)B.*(*(p+5)C.(*prt+1)+2D.*(*(a+1)+2)参考答案:D参考解析:A:多了外层的*()。B:P是行地址,加5越界。C:少了外层的*()。39若有以下的定义:“int t32;”,能正确表示t数组元素地址的表达式的是()。A.B.C.D.参考答案:C参考解析:数组的下标是从0开始的,选项A中越界,行下标和列下标都不能越界;选项B中,虽然是个地址,但是也同样越界了;选项C中表示的是第一个的首地址;选项D表示的是其元素的值,并不是地址。40若有定义和语句:则输出结果是()。A.20.10B.20,20C.10,20 D.10,10参考答案:D参

21、考解析:本题考查指针变量的赋值。*pp是定义一个指针变量,语句pp=&P是将pp指向指针p,*p和*pp都是指针P所指的内存空间的内容,即b的值。二、程序填空题41请补充main()函数,该函数的功能是:输入两个正整数Num1和num2,求这两个数的最大公约数和最小公倍数。例如,若输入的两个正整数为12,4,则它们的最大公约数为4,最小公倍数为12。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。试题程序:参考解析:三、程序改错题42下列给定程序中,函数proc()的功能是:按顺序给str所指数组中的元素赋予从

22、2开始的偶数,然后再按顺序对每5个元素求一个平均值,并将这些值依次存放在w所指的数组中。若str所指数组中元素的个数不是5的倍数,多余部分忽略不计。例如,str所指数组有17个元素,则只对前15个元素进行处理,不对最后的2个元素求平均值。程序执行结果为The original data:2 4 6 8 1012 14 16 18 2022 24 26 28 3032 24The result:6.00 16.00 26.00请修改函数proc()中的错误,使它能得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。试题程序:参考解析:错误:if(i+1%5=0)

23、正确:if(i+1)%5=0)【解析】按题目中要求,对每5个元素求平均值。每取到5个元素的标志为(i+1)对5取余为0,而表达式“i+1%5”表示的含义为变量i加上1对5取余,因此,应改为“if(i+1)%5=0)”。四、程序设计题43请编写函数proc(),它的功能是计算下列级数和,和值由函数值返回。S=1+x+x2/2 1+x3/3 1+xn/n!例如,当n=20,x=0.2时,函数值为1.。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。试题程序:参考解析:【解析】首先定义两个变量分别存放各项的分母和所有项的和,通过n次循环求出n项的和。最后把所有项的和返回到主函数中。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1