我这个代码为什么不行
#include
#include
int main()
{
int n,i,j,k,sum;
scanf("%d",&n);
for(i=pow(10,n-1);i<=pow(10,n)-1;i++)
{
do
{
j=i%10;
k=pow(j,3);
sum=sum+k;
}
while(j==i);
if(sum==i)
printf("%d\n",i);
}
}
水仙花数不一定是3次方,有多少位就是多少次方的和
#include <stdio.h>
#include <math.h>
int main()
{
int n,i,j,k,sum;
scanf("%d",&n);
for(i=pow(10,n-1);i<=pow(10,n)-1;i++)
{
int mid = i;
sum = 0;
do
{
j=mid%10;
k=pow(j,n);
sum=sum+k;
mid /= 10;
}while(mid != 0);
if(sum==i)
printf("%d\n",i);
}
}