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

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

更新时间:2012-12-05 10:01:17 来源:|0 浏览0收藏0

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

地区

获取验证 立即预约

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

看不清楚,换张图片

免费获取短信验证码

  2.编一个程序,输入15个整数存入一维数组,再按逆序重新存放后再输出。

  「解」输入数组的元素,并重新颠倒存放后输出。将存储于数组中的元素颠倒存储,只要首尾相对应的元素两两交换即可。若用指针实现,可让一个指针p指向前端的元素,另一个指针q指向与前端元素对应的后端的元素。循环前,让p指向数组的首元素,让q指向数组的末元素。循环时,让p和q所指两个元素交换,并让p增1,q减l.循环条件是p所指元素在前,q所指元素在后,即p<q.程序如下:

  # include

  main()

  { int a[15],*p,*q, temp;

  printf(“Enter 15 numbers.\n”);

  for(p=a;p<a+15;p++)

  scanf(“%d”, p);

  for(p=a,q=a+14;p<q;P++,q――) {

  temp=*p; *p=*q;*q=temp;

  }

  for(p=a;p<A+15;P++)

  printf(“%d\t”,*p);

  printf(“\n”);

  }

  3.输入一个字符串,按相反的次序输出其中的全部字符。

  「解」要相反的次序输出字符串的全部字符,可用一个字符指针变量,从指向字符串的本字符开始,逆序遍历字符串,输出指针所指字符即可。但为了让字符指针指向字符串的末字符,若不用字符串处理库函数,得用一个循环,让它从字符串的首字符开始,顺序移至字符串的结束标记符,然后倒退一个字符,就能让它指向字符串的末字符。程序如下:

  # include

  # define N 200

  main()

  { char s[N],*p;

  printf(“Enter a string.\n”);

  scanf(“%s”, s);

  for(p=s;*p; p++);

  for(p――; p>=s; p――)

  printf(“%c”,*p);

  printf(“\n”);

  }

  4.输入一个一维实型数组,输出其中的最大值、最小值和平均值。

  「解」设实型数组的元素个数n不超过20.程序输入n,并用循环输入数组的元素,再用循环遍历数组,求出数组的最大值和最小值、数组元素的和。然后求出数组元素的平均值,最后输出结果。程序如下:

  # include

  # define N 20

  main()

  { double a[N],max,min,ave,*p, t;

  int n;

  printf(“Enter n(0<n<20)。\n”);

  do{

  scanf(“%d”,&n);

  if(n>0 && n<20) break;

  printf(“n值不合要求,请重新输入!\n”);

  } while(l);

  printf(“输入%d个实数\n”, n);

  for(n=a;n<A+N; P++){

  scanf(“%lf”,&t);*p=t;

  }

  max=min=ave=*a;

  for(p=p+l;p<A+N; P++){

  if(max<*p) max=*p;

  if(min>*p) min=*p;

  ave+=*p;

  }

  ave/=n;

  printf(“最大值:%f\t最小值:%f\t平均值:%f\n”,max,min,ave);

  }

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

?2013年1月自考报名 

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

分享到: 编辑:环球网校

资料下载 精选课程 老师直播 真题练习

自学考试资格查询

自学考试历年真题下载 更多

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

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

预计用时3分钟

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

安卓版

下载

iPhone版

下载

返回顶部