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

admin2017-11-24  7

问题 下列给定程序中,函数fun的功能是:从整数10到55之间,查找能被3整除且有一位上的数值是5的数,把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定函数中a1放个位数,a2放十位数。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MOD11.C中,不得增行或删行,也不得更改程序的结构!
#nclude
intfun(int*b)
{int k,a1,a2,i=0;
for(k=10;k<=55;k++)
{
/**********found**********/
a2=k/100;
al=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<m;k++)
printf(’’%4d’’,a[k]);
printf(’’\n’’);
}

选项

答案1.a2=k/10; 2.return i;

解析 1.a2存放十位数,所以是a2=k/10,此处是一个书写错误。
2.根据题意,要返回能被7整除的数的个数,从循环体中可以知道其个数是由i来计算的,所以返回的是i。
转载请注明原文地址:https://kaotiyun.com/show/XSID777K
0

相关试题推荐
最新回复(0)