C语言刷题随记 —— 水仙花数_#include

\

文章目录

  • 题目
  • 思路
  • 题解
  • 样例输出

题目

打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

例如:153 是一个“水仙花数”,因为 153=1 的三次方+5 的三次方+3 的三次方。

C语言刷题随记 —— 水仙花数_#include_02

思路

利用 for 循环控制 100-999 个数,每个数分解出个位,十位,百位。

题解

#include <stdio.h>


int main()
{
    int i,j,k,n;

    printf("水仙花数:");

    for(n=100;n<1000;n++)
    {
         i=n/100;   //分解出百位
         j=n/10%10; //分解出十位
         k=n%10;    //分解出个位

         if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
         {
             printf("%-5d",n);
         }
    }
    printf("\n");
}

样例输出

C语言刷题随记 —— 水仙花数_#include_03

C语言刷题随记 —— 水仙花数_后端_04