计算机二级《c语言》基础练习题及答案.docxVIP

计算机二级《c语言》基础练习题及答案.docx

  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文档。上传文档
查看更多
精品文档 精品文档 精品文档 精品文档 (1)t=*x;*X=Y;(2)return(t); (1)t=*x;*X=Y;(2)return(t); 或 return t; 2016年计算机二级《C语言》基础练习题及答案 (1) 1[简答题]下列给定程序中函数fun的功能是:通过某种方式实现两个变量值的交换, 规定不允许增加语句和表达式。 例如,变量a中的值原为8,b中的值原为3,程序运行后a中的值为3,b中的值为 请改正程序中的错误,使它得出正确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更 改程序的结构! 试题程序: lincliade stdl ib ,h finclude . con io .h tifleluda stdi?.h lot fun (Int * 吗 i nt y) ( int c; /** + * + **■**? found* ******* t x/x - y; /?**?*?**** found* ***■*■*** return(y); I vol d i 狂门 { int 上 ug# printf (% d % dhn 且』b) t b- fun (g bJ J prlntm d % d\n 珥片 b); 参考解析: 【参考答案】 【考点分析】 本题考查:指针型变量的使用;通过return语句完成函数值的返回。 【解题思路】 首先,定义变量t作为中间变量,然后进行数据交换,注意参数 x是指针变量,交换时 应使用*x,最后确定返回值;根据代码b=fun(8ab),可以知道返回值将赋给变量 b,而b 中应存放交换前*x中的值,所以函数应返回变量 t。 2[单选题]有以下程序 £ 山业u 1 mJl 肯—(iM it , 4 ? ? 1 IM fj TOC \o 1-5 \h \z ifl ■ ■ | Ji ? . ■ ■ fvv虱 * * | 呻.? (I WMI I ■ ■?仙 fwl 4 € 醫.I* I 程序运行后的输出结果是 3B.1C.2D.4 参考答案:C 步步递归即可得到结参考解析:本题考查函数的递归调用, 将函数参数带入函数中, 步步递归即可得到结 果,结果为2,选项C正确。 3[单选题]以下叙述中正确的是( ) 在算法设计时,可以把复杂任务分解成一些简单的子任务 在C语言程序设计中,所有函数必须保存在一个源文件中 只要包含了三种基本结构的算法就是结构化程序 结构化程序必须包含所有的三种基本结构 ?缺一不可 参考答案:A 参考解析:C语言的程序中,函数不一定都放在同一个源文件中,可以分别放在不同源 文件中,通过#inClude命令来引用,所以 B错误。结构化程序可以包含三种基本结构中的 一种或几种,所以 C D错误。 4[单选题]若有语句:int a[3][4] ,(。 P)[4];P=a;,则以下选项中叙述错误的是 ( )° A.系统将开辟一个名为 P的二维数组,“o][o]中的值即为a[o][o]中的值B.P+1代表a [1][0]的地址C.P中将存放a数组的首地址 D.P+2代表a数组最后一行的首地址 参考答案:A 参考解析:什P)[4]定义了一个数组指针。P可以指向类似于arry[][4] 的数组,题设中, P不是一个二维数组,只是可以指向这类二维数组,因此选项 A错误。P+1代表了第一行第 一个元素的地址,P=a指向数组a的首地址,则 B C选项正确,同理可知选项 D也正确。 故答案为A选项。 5[单选题]有以下程序: ffinL-lu(tr -t Tstiiifl. h fldrfinr 詢 U n - Vi nuinC 1 I int k ? j * J; printT广聲 梟 dW , S(L * j *2) , StJ + k 12))- 程序运行后的输出结果是()。 A.11 , 11B.29 , 29C.26 , 29D.121.121 参考答案:B 参考解析:#define命令是c语言中的一个宏定义命令,标识符一般使用大写,为了区 分其他标识符,它用来将一个标识符定义为一个字符串, 该标识符被称为宏名, 被定义的字 S(k+j+2)=k+j+2}k+j+符串称为替换文本。宏定义不进行其他操作,仅仅只是替换标识符。 S(k+j+2)=k+j+2}k+j+ 2/k+j+2,经计算可得 29, s(j+k+2)=J+k+2}k+j+2/j+k+2 ,计算可得 29。因此输出为 29。2 9。答案为B选项。 6[单选题]有三个关系R、S和T如下: 则由关系R和S得到关系T的操作是() A.自然连接B.交C.除D.并 参考答案:C 参考解析:如果 S=T/R,则s称为T除以R的商。在除运算中s的域由T中那些不出现 在R中的域所组成

文档评论(0)

171****9186 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档