下列给定程序中,函数fun的功能是:把形参a。所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]…中,把偶数从数组中删除,奇数个数通过函数值返回。 例如,若a所指数组中的数据最初排列为:9,1,4,2.3,6,5,8,7,删除偶数后a所

admin2021-06-15  40

问题 下列给定程序中,函数fun的功能是:把形参a。所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]…中,把偶数从数组中删除,奇数个数通过函数值返回。
    例如,若a所指数组中的数据最初排列为:9,1,4,2.3,6,5,8,7,删除偶数后a所指数组中的数据为:9,1,3,5,7,返回值为5。  
    请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
    注意:部分源程序给出如下。
    不得增行或删行,也不得更改程序的结构!
    试题程序:
    #inClude
    #define N 9
    intfun (intt a[],int n)
    {  int i,j;
    j=0;
    for=0;i/**********found***********/
    if(a%2=【1】)
      {
/**********found***********/
    a[j]=a=【2】;
    {
/**********found***********/
     return【3】;
    }
    main()
    {  int b[N]={9,1,4,2,3,6,5,8,7},i,n:
    printf("\nThe original data:\n");
    for(i=0;i        printf("%4d",b
    prina("\n");
    n=fun(b,N);
    prinff("\n The number ofodd:%d\n",n);
    printf(’\nThe odd number:\n’);
    for(i=0;i    printf("%4d",b);
    printf("\n");
    }

选项

答案(1)1 (2)j++ (3)j

解析 填空1:根据题意要保留奇数删除偶数,if语句用来判断数组元素是否为奇数,奇数不能被2整除,所以填入if(%2=1)。
    填空2:将奇数赋值给数组元素,数组下标递增。
    填空3:数组中奇数的个数通过函数返回值返回,所以填入j。
转载请注明原文地址:https://kaotiyun.com/show/4Mtp777K
0

最新回复(0)