输出所有的水仙花数所谓水仙花数是指一个三位数其各位数字的立方和等于该数本身输出100到1千内的数

img

#include <stdio.h>
//判断是否是水仙花
int isSxh(int n)
{
    int s = 0;
    int a = n;
    int d = 0;
    while(a>0)
    {
        int d = a%10;
        s += (d*d*d);
        a = a/10;
    }
    if(s == n)
        return 1;
    else
        return 0;
}

int main()
{
    int i;
    for (i=100;i<1000;i++)
    {
        if(isSxh(i))
            printf("%d ",i);
    }
    return 0;
}

供参考:

#include<stdio.h>
int main()
{
    int n,i,s;
    for(i=100;i<1000;i++)
    {
        s=0;n=i;
        while(n)
        {
          s += (n%10)*(n%10)*(n%10);
          n /= 10;
        }
        if(s == i)
          printf("%d\n",i);
    }

    return 0;
}