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

admin2019-04-14  34

问题 下列给定程序中,函数fun的功能是:在整数10到55之间,查找能被3整除且有一位上的数值是5的数,把这些数放在b所指的数组中,这些数的个数作为函数值返回。规定函数中a1放个位数,a2放十位数。
请改正程序中的错误,使它能得出正确的结果。
注意:不得增行或删行,也不得更改的程序的结构!
试题程序:
#include<stdio.h>
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%= =0&& a1= =5))
{ b=k;i+ +;}
}
/* * * * * * found * * * * * */
return k;
}
main (  )
{
jint 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;

解析 本题考查:取数值n的各个位;return语句,将需要返回的函数值返回给函数main。
(1)a2存放十位数,所以是a2=k/10,此处是一个书写错误。
(2)根据题意,要返回能被3整除的数的个数,从循环体中可以知道其个数是由i来计算的,所以返回的是i。
转载请注明原文地址:https://kaotiyun.com/show/3mRp777K
0

最新回复(0)