同过3次循环嵌套找出所有的水仙花数
#include<stdio.h>
#include<math.h>
void main()
{
int a, b, c;
for (a = 0; a < 10; a++)
for (b = 0; b < 10; b++)
for (c = 1; c < 10; c++)
if (a + b * 10 + c * 100 == pow(a, 3) + pow(b, 3) + pow(c, 3))
printf("%d\n", a + b * 10 + c * 100);
}
将所有的水仙花数放在一个数组中
#include<stdio.h>
#include<math.h>
int narcissistic(int num)
{
int a, b, c;
a = num % 10;
b = num % 100 / 10;
c = num / 100;
if (num == pow(a, 3) + pow(b, 3) + pow(c, 3))
return num;
else
return 0;
}
void main()
{
int i,num,arry[5],k = 0;
for (i = 100; i < 1000; i++)
{
num = narcissistic(i);
if (num)
{
arry[k++] = num;
}
}
for (i = 0; i < k; i++)
printf("%d\t",arry[i]);
}