C语言 输出所有的水仙花数

输出所有的"水仙花数"(水仙花数指一个三位数,其各位数字立方和等于该数本身。例如153是水仙花数,因为1^3+5^3+3^3=153)

这个程序找出所有的三位水仙花数,并输出它们。

(如果每各数字立方和等于原数字,则该数字是水仙花数。)

cpp 复制代码
#include <stdio.h>

int main() {
    int num, sum, digit;
    printf("所有的水仙花数:\n");

    for (int i = 100; i < 1000; i++) {
        int temp = i;
        sum = 0;

        // 计算每个数字的立方和
        while (temp > 0) {
            digit = temp % 10;
            sum += digit * digit * digit;
            temp /= 10;
        }

        if (sum == i) {
            printf("%d\n", i);
        }
    }

    return 0;
}

代码说明

  1. 遍历所有三位数(100 到 999)。
  2. 对每个数字,计算其各位数字的立方和。
  3. 如果立方和等于原数字,则该数字是水仙花数。
相关推荐
晊晌_h7 小时前
嵌入式从0到精通——数据结构总结[特殊字符]
数据结构·算法·排序算法
xiaobobo33307 小时前
c语言中for循环条件中定义临时栈变量的作用域
c语言·for循环条件定义栈变量·大括号作用域·独立栈变量
我找到地球的支点啦8 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
罗西的思考8 小时前
【OpenClaw具身硬件】ZeroClaw 源码阅读笔记(3)--- RAG
人工智能·算法·机器学习
惜离殇8 小时前
从零开始的敲代码生活--Linux应用软件(文件操作基础1)
linux·c语言·文件操作·标准io
浪里镖客9 小时前
位姿转换矩阵写法-个人习惯(计算机理解其实是相反的)
线性代数·算法·矩阵
潘潘的嵌入式日记10 小时前
I²C 从机接收总被覆盖?双缓冲要在 STOP 时交接
c语言·开发语言·单片机
xx~t11 小时前
嵌入式——Linux软件编程——网络1
linux·c语言·网络·vscode·网络协议
小白羊丨12 小时前
如何诊断 Prompt 模板导致的效果下降?
人工智能·算法·prompt
OPEN-F13 小时前
C++11/14新特性精讲:移动语义与智能指针实战
开发语言·c++·算法