回归数是一种特殊的n位数,各位数字的n次幂之和恰好等于它自身,如:
153=1^3+5^3+3^3
1634=1^4+6^4+3^4+4^4
54748=5^5+4^5+7^5+4^5+8^5
试编写一个函数short regress(int num)判断num是否是回归数。要求在main函数中调用regress函数寻找所有的3次幂回归数(又称“水仙花数”),并控制每行2个进行输出显示。
#include<stdio.h>
#include<stdlib.h>
short regress(int num)
{
int a,b,c;
a=num%10;
num/=10;
b=num%10;
c=num/10;
if(num==(aaa+bbb+ccc))
return num;
else
return 0;
}
void main(void)
{
int n,num;
for(n=100;n<1000;n++)
{
num=regress(n);
if(num!=0)
{
printf("%d\n",num);
}
}
system("pause");
}