计算机二级考试C语言考前特训习题.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机二级考试C语言考前特训习题 一   1、有以下程序:   程序运行后的输出结果是(?)。   A.12 7   B.12 12   C.11 11   D.11 7   参考答案:D   参考解析:本题考查宏定义的用法,宏定义只是做个简单的替换,所以本题中执行f(2)=(2*N+1)=11,执行f(1+1)=(1+1*N+1)=7。选项D正确。   2、设栈的存储空间为S(1:50),初始状态为top=51。现经过一系列正常的人栈与退栈操作后,top=50,则栈中的元素个数为(??)   A.1   B.0   C.50   D.49   答案:A   答案解析:栈是一种特殊的线性表,它所有的插入与删除都限定在表的同一端进行。入栈运算即在栈顶位置插人一个新元素,退栈运算即取出栈顶元素赋予指定变量。栈为空时,栈顶指针top=0,经过入栈和退栈运算,指针始终指向栈顶元素。初始状态为top=51,当top=50时,则栈中S(50:51)存储着元素,51-50=1.元素个数为l。故本题答案为A选项。   3、以下选项中,当X为大于1的奇数时,值为0的表达式是(  ):   A.x%2==0   B.x/2   C.x%2!=0   D.x%2==1   答案:D   参考解析: 算术运算符的优先级高于关系运算符的优先级,所以当X为大于1的奇数时,A选项的值为假,即0。B选项的值为不定值,但绝对不是0。C选项的值为真,即1。D选项的值为真,即1。   4、若有定义语句:   int a[2][3],*p[3];   则以下语句中正确的是( )。   A.p=a;   B.p[0]=8;   C.p[0]=a[1][2];   D.p[1]=a;   参考答案:C   参考解析: A选项错误,因为p是指向一个指针数组,作为数组名,不能指向别的地方。B选项错误,因为p[0]是一个int指针,也就是int*;而a是一个指向指针的指针int**。C选项正确,因为p[0]是一个int*a[1][2]是int,a[1][2]是int*,类型吻合。D选项错误,因为a作为数组名,不能取地址。即使能取,P[1]是int*,a是int***,类型不对。因此C选项正确。   5、以下不合法的字符常量是( )。   A.\\   B.\   C.\018   D.\xcc   参考答案:C   参考解析: 转义字符中,八进制的表示形式为\ddd,但是八进制中不能包含数字8,所以C选项不合法。   6、以下选项中能正确定义二维数组的选项是(  )。   A.double a[][3]={2*3};   B.double a[][3];   C.double a[][3]={};   D.double a[2][3]={{1.0},{2.0},{3.0,4.0}};   参考答案:A   参考解析: 如果第一维的长度没有指定.则定义的同时需要完成初始化,否则不知道分配多大的内存空间给它,所以选项B、C错误;二维数组a[2][3]中只有两个元素,都是一维数组,一维下标最大只能是a[1],所以选项D错误;若完成初始化的二维数组,第一维的长度没有指定,则第一维的大小按如下规则确定:若初值个数能被第二维大小整除,所得的商就是第一维的大小;若不能整除,则所得的商加l作为第一维的大小,所以选项A相当于:double a[1][3]={6};其中a[0][0]=6,其他元素赋值0,故选项A正确,答案为A。   7、以下叙述中正确的是(  )。   A.当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失   B)打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖   B.在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个数据   C.C语言中的文件是流式文件,因此只能顺序存取数据   参考答案:A   参考解析: 文件一旦使用完毕,应该使用关闭文件函数把文件关闭,以避免出现文件数据丢失等错误,所以选项A正确;若使用fopen打开文件函数打开文件时,指定打开方式为 ‘a’,则可以向文件追加信息,而不是覆盖原文件内容,故B选项错误;在文件被打开后,使用文件定位函数rewind或fseek函数,可以将文件指针移到文件的任何位置,所以在写操作完成后,可以直接将文件指针定位到文件首,接着读数据,而不需要先关闭文件,再打开读取,故C选项错误;使用文件定位函数可以随机读写文件,故D选项错误。所以本题答案为A。   8、关于程序模块化,以下叙述错误的是(  )。   A.程序模块化可以提高程序运行的效率   B.程序模块化可以提高程序编制的效率   C.程序模块化可以提高程序代码复用率   D.程序模块化可以提高调试程序的效率

文档评论(0)

156****2829 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档