C语言习题 输出水仙花数

C语言习题 输出水仙花数,第1张

#include    
int main()
{
  int a,b,c,d;
  d=100;
  printf("水仙花数为:\n");
  for(d=100;d<=999;d++)
  {
      int a=d%10;//个位数
     int b=(d/10)%10;//十位数 
     int c=d/100;//百位数
     if(d==a*a*a+b*b*b+c*c*c)
     printf(" %d ",d);
     
  }
  
  
 return 0;
}

该题的难点在于如何取得分别取得数字的各个位上的数字;

以123为例;

取个位数  int a=123%10 ------12....3 取余数 a=3;

取十位数 int b= (d/10)%10.-----b=(12)%10=1....2=2;

取百位数 int c=d/100=1.23=1;

输出水仙花数为:153 370 371 407

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/915302.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存