首页 - 网校 - 万题库 - 美好明天 - 直播 - 导航
您现在的位置: 考试吧 > 计算机等级考试 > 计算机二级考试 > C加加 > 模拟试题 > 正文

2018年9月计算机二级C++考试上机练习题及答案(8)

来源:考试吧 2018-07-31 16:15:31 要考试,上考试吧! 万题库
“2018年9月计算机二级C++考试上机练习题及答案(8)”供考生参考。更多计算机等级考试模拟试题等信息请访问考试吧计算机等级考试网。
第 1 页:上机试题
第 3 页:参考答案

  一、程序改错题

  (1)“d3=(d1  (2)“d3=(d2)?d1\d2:-l;”应改为“d3=(d2)?d1/d2:-l;”。

  (3)“d3=(--dl)+(d2++);”应改为“d3=(d1++)+(d2--);或d3=(++d1)+(--d2);”。

  【解析】本题考查了考生对条件表达式和自增自减运算符了解的情况。d3应为d1和d2中较大者的值,所以“(d1(d2)”应改为“(d1>d2)”。若d2不为0,应返回d1/d2的值,而不是d1\d2。第3处应该输d1+1d2-l,所以两者的+

  +、--应反过来。又因为d3应该是两者原值之和,所以++、--应同时为后缀式或前缀形式。

  二、简单应用题

  //必须使用递归

  jntfunl(intn)

  {

  if(n<=0)

  return0;

  if(n==1)

  return1;

  returnn*funl(n-1);

  };

  //不能使用递归

  intfun2(intn)

  {

  if(n<=0)

  retturn0;

  intres=1:

  for(inti=1;i<=n;i++)

  {

  res*=i;

  }

  returnres;

  }

  【解析】本题考查的是递归函数和阶乘算法。递归的阶乘算法可以通过判断传入参数,如果大于1,则返回n*funl(n-1),意思是返回n乘以n-1的阶乘;如果等于1,则返回1。这样递归下去就能最终得出n的阶乘。非递归算法可以先建立一个累乘变量,并初始化为1,然后循环遍历1~n,将遍历的数累乘到变量中即可。

  三、综合应用题

  (1)“while()”应改为“while(infile.get(ch))”。

  (2)应添加“bur[len++]=ch;bur[len]=ch;len++;”。

  (3)应添加“outfile2<  (4)“TCobj();”应改为“TCobi("in.txt");”。

  【解析】本题考查了文件流的使用。根据题意,第1处要获得一个字符,并判断是否到文件结尾,所以应使用get函数;第2处应将ch存入buf数组,同时让len增1;第3处将buf中的字节输出给outfile2,注意同时让i增1,否则while循环将进入死循环;第4处TC只确一个带char*参数的构造函数,所以创建对象时必须使用构造参数,根据题意这个参数应该是“"in.txt"”。

扫描/长按二维码帮助考试通关
2018年等考报考资讯
2018等考各科通关技巧
2018各科最新预测试卷
2018等考各科备考资料

微信搜索"考试吧"了解更多考试资讯、下载备考资料

上一页  1 2 3 

  相关推荐:

  2018年9月全国计算机等级考试试题汇总(各科目)

  2018年全国计算机等级考试必做试题汇总(各科目)

  2018年全国计算机等级考试复习知识点汇总(各科目)

  2018全国计算机等级考试备考经验及应试技巧汇总

  历年真题汇总|考试吧策划:2018年计算机等级考试报考指南

0
收藏该文章
0
收藏该文章
文章搜索
万题库小程序
万题库小程序
·章节视频 ·章节练习
·免费真题 ·模考试题
微信扫码,立即获取!
扫码免费使用
版权声明:如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。
Copyright © 2004- 考试吧计算机等级考试网 出版物经营许可证新出发京批字第直170033号 
京ICP证060677 京ICP备05005269号 中国科学院研究生院权威支持(北京)
在线模拟试题
考证通关杀器
考试最新资讯
一次通关技巧