C语言 | 输出水仙花数

例54:C语言编程输出100-1000之间所有的“水仙花数”,所谓的“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。

解析:153是一个水仙花数,因为153=1^3+5^3+3^3,逐个位数判断即可,写代码的时候要考虑到每一位。

源代码演示:

#include<stdio.h>//头文件 
int main()//主函数 
{
  int i,j,k,narcissistic_Number;//定义整型变量 
  printf("水仙花数是:\n");//提示语句 
  //小林这里要测试的100~1000之间的水仙花数 
  for(narcissistic_Number=100;narcissistic_Number<1000;narcissistic_Number++)
  { i=narcissistic_Number/100;//百位数字 
 j=narcissistic_Number/10-i*10;//十位数字 
 k=narcissistic_Number%10;//各位数字 
 if(narcissistic_Number==i*i*i+j*j*j+k*k*k)//符合其各位数字立方和等于该数本身
 { printf("%d ",narcissistic_Number);//输出这个数 
 }
  } printf("\n");//换行 
  return 0;//主函数返回值为0 
}

编译运行结果如下:

水仙花数是:
153 370 371 407

--------------------------------
Process exited after 0.07857 seconds with return value 0
请按任意键继续. . .


C语言 | 输出水仙花数 mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/342298644

(完)