求助,为什么没有输出
程序代码:#include<stdio.h>
main()
{
int a,b1,b2,b3,i;
a=100;
for(i=0;i<900;i++)
{
a+=i;
b1=a/100;
b2=(a%100)/10;
b3=a%10;
if(a==b1*b1*b1+b2*b2*b2+b3*b3*b3)
printf("%d",a);
}
}
题目要求输出所有三位的水仙花数,为什么没有输出呢?求大神
程序代码:#include<stdio.h>
main()
{
int a,b1,b2,b3,i;
a=100;
for(i=0;i<900;i++)
{
a+=i; //这里使用+i是不对的,这么写是每次让a加上i,而每一次i的值是在增加的,第一次i是1,第二次i是2,
//这时候相当于给a加上了2,再循环一次i就变成了3,再执行这句a+=i实际上市a=a+3,以此类推。所以,
//直接把水仙花数跳过了。最终没有输出
b1=a/100;
b2=(a%100)/10;
b3=a%10;
if(a==b1*b1*b1+b2*b2*b2+b3*b3*b3)
printf("%d",a);
}
}
