C/C++ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方

C/C++ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 面向对象

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ 设计模式

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C++ STL

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 技术杂谈

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 常用函数

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 图像处理

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 算法/面试

零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C/C++ 项目实战


一.结果演示

'water flower'number is:153  370  371  407

二.源代码

程序分析:利用 for 循环控制 100-999 个数,每个数分解出个位,十位,百位。源码如下:

[wppay]

/************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C/C++ 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如: 153 是一个“水仙花数”,因为 153=1 的三次方+ 5 的三次方+ 3 的三次方
//@Time:2021/09/30 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/************************************************************************/

#include <stdio.h>
#include <math.h>
#include <windows.h>

int main()
{
    int i, j, k, n;
    printf("'water flower'number is:");
    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");
}


[/wppay]

开通 vip 会员可免费阅读所有文章哟

代码下载:code.c


注意:

有些同学会发现在 Win 10 中运行代码,显示 ASCII 码是乱码,解决办法可以参考:《C/C++ printf(“%c“,219)控制台输出出乱码》


三.猜你喜欢


   

推荐文章

发表评论