c语言 输入一个数n(n》=3) 求这个位数上的所有水仙花数

注意,是要求随机输入一个大于3的整数,求这个位数的所有水仙花数

#include <iostream>
using namespace std;
int fun(int n)
{
if (n==1)
return 10;
else
return (10*fun(n-1));
}

int num(int n,int a)
{
if (n==1)
return a;
else
return (a*num(n-1,a));
}
void shuixianhua(int n)
{
int i,j,c;
for (i=fun(n-1);i<fun(n);++i)
{
j=i;
c=0;
while(j>0)
{
c+=num(n,j%10);
j/=10;
}
if(c==i)
cout<<c<<endl;
}
}

main()
{
int n;
cin>>n;
shuixianhua(n);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-06-29
啥事水仙花?
第2个回答  2012-06-29
你可以上网搜,太多了,
相似回答