首页直播App学习中心
当前位置: 首页 > 自学考试 > 自学考试模拟试题 > 2013自考“高级语言程序设计”习题答案详解(34)

2013自考“高级语言程序设计”习题答案详解(34)

更新时间:2012-12-06 09:44:10 来源:|0 浏览0收藏0

自学考试报名、考试、查分时间 免费短信提醒

地区

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
获取验证 立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

  5.要求函数的功能是在一维数组a中查找x值。若找到,则返回所在的下标值;否则,返回0.设数据放在数组元素的a[1]到a[n]中。在以下给出的函数中,不能正确执行此功能的函数是( )

  ① funa(int *a,int n, int x)

  { *a=x;

  whlie(a[n]!=x) n――;

  return n;

  }

  ② funb(int *a, int n, int x)

  { int k ;

  for( k=l; k<=n; k++)

  if(a[k]==x) return k;

  return 0 ;

  }

  ③ func(int a[], int n, int x)

  { int * k;

  a[O]=x; k=a+n;

  while(*k!=x)k――;

  return k-n;

  }

  ④ fund(int a[], int n, int x)

  { int k=0;

  do k++;

  while((k<N+1) &&(A[K]! =X));

  if((k<N+1) &&[K]==X)) RETURN K;

  else return 0;

  }

  「解」在数组中找指定值是经常遇到的计算要求,有多种编程方法。在这里,数据预放在数组下标1至n的元素中,下标为0的元素没有放数据,程序可以利用这个位置简化查找函数。函数funa先将要查找的情放入a[0],从数据表的最后一个元素开始逆序向前查找。这样做的好处是循环条件不必担心因数组中原先没有值为x的元素而一直顺序查找下去,访问不是数表的元素,需插入条件n>O.在a[0] 处放入x后,这个条件就不必要了,循环至少在访问了a[0] 后终止,并返回0值。所以该函数能完成指定的功能。函数funb采用常规的办法编写,循环在a[1] 与a[n]之间顺序寻找,一旦找到立即返回找到处的下标,直至查找循环结束,查不到指定的值而返回0值。函数func采用与函数funa相同的方法,不过是另外引入一个指针变量。但是该函数return语句后的表达式有严重的错误,应返回k-a,两指针的差,其值等于找到元素的下标。表达式k-n是指针k向前移n个位置的指针值。函数fund预置k为0,循环让 k增 1,并在 k在界内和 a[k] 不等于 x的情况下循环。循环结束有两种情况,或 k已不在界内,或k在界内,并且a[k]等于x.若是后者,函数返回k,而若前者,函数返回比该函数也能正确完成查找工作。这样,不能正确完成查找工作的函数是函数fonc.所以正确选择是③。

  6.以下程序的输出结果是( )

  # include

  subl(char a,char b) {char c;c=a;a=b;b=c;}

  sub2(char *a,char b){ char c;c=*a;*a=b;b=c;}

  sub3(char *a,char *b) { char c;c=*a;*a=*b;*b=c;}

  main()

  { char a, b;

  a=‘A’; b=‘B’; sub3(&a,&b); putchar(a); putchar(b);

  a=‘A’;b=‘B’ ;Sub2(&a,b);putchar(a); rutchar(b);

  a=‘A’; b=‘B’; sub1(a,b); putchar(a);putchar(b);

  }

  ①BABBAB ②ABBBBA

  ③ BABABA ④ BAABBA

  「解」在上述程序中,函数subl完成两形参值的交换,这个交换不影响实参变量,这是一个没有意义的函数。函数sub2将第二个形参的值置入由第一个指针形参所指的变量中,指针形参所指的变量由调用时的实参提供。函数sub3完成将两个形参所指的变量的值交换。程序调用sub3,使变量a和b的值交换输出BA;调用subZ,使变量b的值传送到a,输出BB;调用subl,变量a和b的值不改变,输出AB.所以程序输出BABBAB.正确解答是①。

?2013年高教自考网络辅导课程招生简章

?2013年1月自考报名 

更多信息请访问:自学考试频道    自学考试论坛

分享到: 编辑:环球网校

资料下载 精选课程 老师直播 真题练习
今日直播 更多
峰会

AI时代下职场人必备的工具和技能

公司活动 公司活动

今日11:00-14:00

曹峥

峰会

在职人员如何提升学历

自学考试 自考入门导学

今日11:00-12:00

王涛

峰会

曹骏:赚钱的自媒体该怎么做

AI自媒体 AI自媒体

04月19日 12:00-14:00

曹骏

峰会

顶级大厂财务专家分享:有价值的分析得做到这些

数据分析师 数据分析

04月22日 12:00-13:30

杨晨Alex

更多直播
  • 2020年10月《高等数学(一)00020》全国卷

    难度: 1人已做 做题
  • 2020年8月《高等数学(一)00020》全国卷

    难度: 0人已做 做题
  • 2019年10月《高等数学(一)00020》全国卷

    难度: 0人已做 做题
  • 2019年4月《高等数学(一)00020》全国卷

    难度: 0人已做 做题
更多真题

自学考试资格查询

自学考试每日一练 打卡日历

0
累计打卡
0
打卡人数
去打卡

预计用时3分钟

自学考试各地入口
环球网校移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载

课程咨询

售后服务

APP立减150

注册APP

购课满减券免费领

出版物经营许可证|京B2-20210770| 京公网安备 11010802033350号|京ICP备16038139号|节目制作经营许可证(京)字20130号
知春路校区:北京市海淀区知春路7号致真大厦D座4层北区(地铁10号线西土城出A口)|邮编:100191
版权所有 2003-2024 北京环球创智软件有限公司|联系客服|营业执照

预约成功
您已经成功预约 考试短信提醒
扫码添加客服微信号
添加客服微信号,邀您进群领取学习资料、直播课程等,还能和其他小伙伴一起学习交流。添加时请回复领取

绑定手机号

应《中华人民共和国网络安全法》加强实名认证机制要求,同时为更加全面的体验产品服务,烦请您绑定手机号.

在线咨询