下列给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位的顺序组成一个新数,作为函数值返回。 例如,从主函数输入一个整数27638496,则函数返回值为26846。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得

admin2017-02-24  32

问题 下列给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位的顺序组成一个新数,作为函数值返回。
例如,从主函数输入一个整数27638496,则函数返回值为26846。
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
unsigned long fun(unsigned long n)
{  unsigned long x=0,s,i;int t;
    s=n;
/*********found*********/
  i=【1】
/*********found*********/
  while(【2】){t=s%10;
    if(t%2==0){
/*********found*********/
    x=x+t*i;i=【3】
  }
  s=s/10;
}
return x;
}
main()
{  unsigned long n=-1;
   while(n>99999999‖n<0)
   { printf("Please input(0<n<100000000):");
    scanf("%ld",&n);}
    printf("\nThe result is:%ld\n",fun(n));
}

选项

答案(1)1 (2)s>0 (3)i*10

解析 填空1:变量i用来控制被取出的偶数在新数中的位置,应赋初值1。
填空2:while语句的循环条件是s>0。
填空3:变量i用来标识个位、百位和千位等。
转载请注明原文地址:https://jikaoti.com/ti/S1i0FFFM
0

最新回复(0)