求100到999中的水仙花数(两种方法,c语言)

#include<stdio.h>
int main()
{
 int a,b,c;
 for(a=1;a<=9;a++)
  for(b=0;b<=9;b++)
   for(c=0;c<=9;c++)
   {
    if(a*a*a+b*b*b+c*c*c==a*100+b*10+c)
    printf("%d ",a*100+b*10+c);
   }
   printf("\n");
   return 0;
 } 

运行结果:
153 370 371 407

#include<stdio.h>
int main()
{
 int m,a,b,c;
 for(m=100;m<=999;m++)
 {
  a=m/100;//m的百位
  b=(m%100)/10;//m的十位
  c=m%10;//m的个位
  if(a*a*a+b*b*b+c*c*c==m)
  printf("%d ",m);
 }
 printf("\n");
 return 0;
}

运行结果:
153 370 371 407

猜你喜欢

转载自blog.csdn.net/weixin_43534549/article/details/86699870