2013年计算机二级C语言上机题库三十四_第2页

考试站(www.examzz.com)   【考试站:中国教育考试第一门户】   2013年5月13日
 改错题
  下列给定程序中,函数fun的功能是:将长整型数中每一位上为奇数的数依次取出,构成一个新数放在t中,高位仍在高位,低位仍在低位,当s中的数为87653142时,t 中的数为7531。
  请改正程序中的错误,使其能得出正确结果。
  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
  试题 程序:
  #include <conio.h>
  #include <stdio.h>
  void fun(long s, long *t)
  {
  int d;
  long s1 = 1;
  /********found********/
  t = 0;
  while (s > 0)
  {
  d = s%10;
  /********found********/
  if (d%2 == 0)
  {
  *t = d*s1 + *t;
  s1 *= 10;
  }
  s /= 10;
  }
  }
  main()
  {
  long s, t;
  printf("\nPlease enter s: ");
  scanf("%ld", &s);
  fun(s, &t);
  printf("The result is: %ld\n", t);
  }
  第1处:t =0;应改为*t =0;
  第2处:if (d%2 ==0)应改为if(d%2!=0)

相关文章