求三位水仙花数少输出一个
各位大神,在求水仙花数时老是少输出一个,查了好久没查不问题,最后发现改成逐个相乘才可以,请问为什么?假如是要求十位数的水仙花数,那不是要累死?程序如下:
#include <stdio.h>
#include <math.h>
int main()
{
int number=100,i=0,j=0,k=0;
while(number>=100&&number<=999)
{
i=number/100;
j=(number%100)/10;
k=number%10;
if(pow(i,3)+pow(j,3)+pow(k,3)==number)
//if(i*i*i+j*j*j+k*k*k==number)(改成这样才可以)
{
printf("%d\t",number);
number++;
}
else
number++;
}
printf("\n");
return 0;
}