填空题 1.  下列给定程序中,函数fun的功能是:把形参a所指数组中的偶数按原顺序依次存放到a[0]、a[1]、a[2]…中,把奇数从数组中删除,偶数的个数通过函数值返回。
    例如,若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除奇数后,a所指数组中的数据为:4、2、6、8,返回值为4。
    请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
    注意:部分源程序给出如下。
    不得增行或删行,也不得更改程序的结构!
    试题程序:
    #include<stdio.h>
    #define N 9
    int fun(int a[], int n)
    {  int i,j;
    j=0;
    for (i=0; i<n; i++)
    /*********found*********/
    if(______==0) {
    /*********found*********/
    ______ = a[i]; j++;
    }
    /*********found*********/
    return______;
    }
    main()
    {  int b[N]={9,1,4,2,3,6,5,8,7),i,n;
    printf("\nThe original data:\n");
    for(i=0; i<N; i++)
    printf("%4d", b[i]);
    printf("\n");
    n = fun(b, N);
    printf("\nThe number of even:%d\n", n);
    printf ("\nThe even :\n");
    for (i=0; i<n; i++)
    printf("%4d", b[i]);
    printf("\n");
    }
  • 1、
【正确答案】 1、(1)a[i]%2    (2)a[j]    (3)j    
【答案解析】[考点]
   本题考查:if语句条件表达式;数组变量赋值;函数返回值。
   
   填空1:if语句条件表达式,判断数组元素是否为偶数,对2求余,结果为0,则为偶数;结果为1则为奇数。
   填空2:如果该数组元素是偶数,则将其值保存。
   填空3:最后按要求将偶数个数通过return语句返回给main函数。