填空题 1.  下列给定程序中,函数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=______;
    /*********found*********/
    while(______) { t=s% 10;
    if(t% 2==0){
    /*********found*********/
    x=x+t *i;i=______;
    }
    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、(1)1    (2)s>0    (3)i*10    
【答案解析】[考点]
   本题考查:变量赋初值操作;while循环语句;已知数n的各个位数值如何表示数n。
   
   填空1:变量i用来控制被取出的偶数在新数中的位置,应赋初值1。
   填空2:while语句的循环条件是s>0。
   填空3:变量i用来标识个位、百位和千位等。