下列给定程序中,函数fun的功能是:从整数10—55,查找能被3整除且有一位上的数值是5的数,把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定函数中a1放个位数,a2放十位数。 请改正程序中的错误,使它能得出正确的结果。 注意:不

admin2020-11-27  21

问题 下列给定程序中,函数fun的功能是:从整数10—55,查找能被3整除且有一位上的数值是5的数,把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定函数中a1放个位数,a2放十位数。
  请改正程序中的错误,使它能得出正确的结果。   
  注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
  试题程序:   
#include
int fun(int*b)
{  int k,a1,a2,i=0;
  for(k=10;k<=55;k++)
    {   
/**********found***********/
    a2=k/10;
    a1=k-a2*10:
    if((k%3==0&&a2==5)||(k%3=0&&
    a1==5))
    {
    b=k;i++;
    }
    }
/**********found***********/
    return k;
  }
  main()
  (  int a[100],k,m;
    m=fun(a);
    printf("The result is:\n");
    for(k=0:k    prinff(“%4d”,a[k]),
    prinff(“\n”)
  }   

选项

答案(1)a2=k/10: (2)return(i);

解析  (1)a2存放十位数,所以a2=k/10,其中0书写错误。
  (2)要返回满足条件的个数,即数组b的元素个数,所以返回的是i。
转载请注明原文地址:https://kaotiyun.com/show/xO3p777K
0

最新回复(0)