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. 如果立方和等于原数字,则该数字是水仙花数。
相关推荐
SoftLipaRZC2 小时前
单链表的应用:经典OJ题与通讯录项目实战
数据结构
SoftLipaRZC2 小时前
单链表专题:从概念到实现
数据结构
折哥的程序人生 · 物流技术专研8 小时前
Java面试85题图解版 · 特别篇:2026后端高频面试题复盘(算法底层逻辑+高并发架构设计全解析,附Java实战代码)
java·网络·数据库·算法·面试
玖玥拾9 小时前
C/C++ 基础笔记(十四)多态与模板编程
c语言·c++·多态·模板
想吃火锅10059 小时前
【leetcode】14.最长公共前缀js
算法·leetcode·职场和发展
云絮.10 小时前
数据库操作
数据库·mysql·算法·oracle
小林ixn10 小时前
LeetCode 206. 反转链表(迭代 + 递归详解)
算法·leetcode·链表
凡人叶枫11 小时前
Effective C++ 条款17:以独立语句将 newed 对象置入智能指针
java·linux·开发语言·c++·算法
菜鸟‍12 小时前
LeetCode 1 27 和 704 || 两数之和 移除元素 二分查找
算法·leetcode·职场和发展
caimouse13 小时前
Reactos 第1章 概述
c语言·开发语言·架构