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. 如果立方和等于原数字,则该数字是水仙花数。
相关推荐
ysu_03144 小时前
05 | 持久化撤销提示非核心功能
算法·游戏程序
ysu_03144 小时前
06 | 200个单元测试C项目也能TDD
c语言·单元测试·tdd
浮沉9875 小时前
二分查找算法概述&通用模板
算法
Keven_116 小时前
算法札记:SPFA判负环算法的证明
算法
什巳6 小时前
JAVA练习278- 和为 K 的子数组
java·学习·算法·leetcode
Jerry6 小时前
LeetCode 347. 前 K 个高频元素
算法
Young Doro7 小时前
SAC 算法
线性代数·算法·机器学习
罗超驿7 小时前
2.算法效率的核心密码:时间复杂度和空间复杂度详解
java·数据结构·算法