v题目:
一个数字链由数字的每位平方相加而成。
例子:44->32->13->10->1->1
一个数字链由数字的每位平方相加而成。
例子:44->32->13->10->1->1
4*4+4*4=32,3*3+2*2=13 .........
给你一个数字N计算出N(包括N)以内的所有数据链最后的数是1的个数。1 <=N <=10000
所有子函数都写成递归的哦!
给你一个数字N计算出N(包括N)以内的所有数据链最后的数是1的个数。1 <=N <=10000
所有子函数都写成递归的哦!
#include<stdio.h>
int f(int n)
{
if(n<10)
return n;
else
{
int a=0,b=n;
while(b)
{
a+=(b%10)*(b%10);
b=b/10;
}
return f(a);
}
}
int main()
{
int N;
while(~scanf("%d",&N))
{
int sum=0,i;
for(i=1;i<=N;++i)
if(f(i)==1)
sum++;
printf("%d\n",sum);
}
return 0;
}