求[10,10000]内的完备数的和,所谓完备数是指因子各等于本身的数,如6=1+2+3.其中求因子和要求用函数实现。其中部分代码已经给出,请根据已有代码完成本题。
#include
#include
int f(int n) //求n的因子和(因子包含数n本身)
{ int i,k=sqrt(n),s=0;
for(i=1;i<=k;i++)
if( )
if( )
;
else
s+=i+n/i;
return s;
}
int main()
{ int i,s=0;
for(i=10;i<10000;i++)
if( )
{s++; printf("%d ",i);}
printf("\n%d\n",s);
return 0;
}
这个怎么解啊TAT,废物的大一新生想不出来
第一处改为if(n%i==0) s=s+i
第二处改为 if(i==fun(i)) printf("%d",i)