从100到999中输出"水仙花数" 例如153,1*1*1+5*5*5+3*3*3=153这样的数.

来源:百度知道 编辑:UC知道 时间:2024/06/21 12:46:24
用C语言来做

for(int i=100;i<999;i++)
{
int a = i/100;
int b = i/10-(i/100)*10;
int c = i%10;
if(a*a*a+b*b*b+c*c*c == i)
printf("%d ",i);
}

153 370 371 407
#include<stdio.h>
#include<math.h>
main()
{
int a,s=0,d=0,i=1,z;
clrscr();
scanf("%d",&a);
z=a;
if(a>999||a<100)
printf("%d bu shi san wei shu",a);
else for(i=1;i<=3;)
{
s=a%10;
a=a/10;
d+=s*s*s;
i++;
}
switch(d==z)
{case 0:printf("%d bu shi shui xian hua shu",z);break;
case 1:printf("%d shi shui xian hua shu",z);break;
default:printf("have question");
}
getch();
}

maini()
{int i,j,k,n;
printf("水仙花数是:");
for(n=100;n<1000;n++)
i=n/100;
j=n/10-i*10;
k=n%10;
if(n==i*i*i+j*j*j+k*k*k)
printf("%4d",n);
}
pr