C语言 输出水仙数的问题!

来源:百度知道 编辑:UC知道 时间:2024/05/17 01:13:38
#include <stdio.h>
main()
{
int i,j,k;
int a,b;
a=i*100+j*10+k;
b=i*i*i+j*j*j+k*k*k;
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
for(k=0;k<=9;k++)
{ if(a==b)
printf("%d\n",a);
}
}
这个程序有问题吗,为什么输不出要的东西撒~

你把a=i*100+j*10+k; b=i*i*i+j*j*j+k*k*k; 放在循环外面根本不起任何作用,你这样去写程序:
#include"stdio.h"
main()
{ int i,a,b,c;
for(i=101;i<1000;i++)
{
a=i/100;
b=(i-100*a)/10;
c=i-100*a-10*b;
if(i==a*a*a+b*b*b+c*c*c)
printf("%d ",i);
}
getch();
}