求100-999的水仙花数。

水仙花是数的每位数字的立方和恰好等于这个数,例如153=111+555+333
#include
#include
int fun(int num, int N){
int sum = 0;
int n=num;
while (n > 0){
int d = n % 10;
sum = sum + pow(d, N); //pow(d,n)是一个幂函数,d的n次方
n /= 10;
}
if (sum == num){
printf(“水仙花数为:%d\n”, num);
}return 0;
}

int main(){
int num = 0;
for (int num = 100; num <1000; num++)
{
int ret = fun(num, 3);
if (ret != 0)
{
printf("%d\n", ret);
}
}
system(“pause”);
}

你可能感兴趣的:(求100-999的水仙花数。)