C语言实现水仙花数计算:代码示例与原理解析

什么是水仙花数?

水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如 153 = 1³ + 5³ + 3³。

C语言代码实现

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

int main() {
    int num, digit, sum;
    int count = 0;

    for(num = 100; num <= 999; num++) {
        sum = 0;
        for(int i = 0; i < 3; i++) {
            digit = (num / (int)pow(10, i)) % 10;
            sum += pow(digit, 3);
        } 
        if(sum == num) {
            printf('%d ', num);
            count++;
        }
    }
    printf("\n共有%d个水仙花数", count);

    return 0;
}

代码解析

  1. 循环遍历三位数: 代码使用 for 循环遍历 100 到 999 之间的每个三位数。

  2. 计算各位数字立方和: 对于每个三位数 num,代码使用第二个 for 循环依次提取其各位数字,并计算其立方和。

  3. 判断是否为水仙花数: 如果计算得到的立方和等于 num 本身,则表示该数为水仙花数,代码将其输出并计数。

  4. 输出结果: 循环结束后,代码输出所有找到的水仙花数以及它们的总数。

总结

本文介绍了 C语言实现水仙花数计算的方法,并提供了完整代码示例和详细解析。希望对读者学习 C语言编程和算法有所帮助。

C语言实现水仙花数计算:代码示例与原理解析

原文地址: https://www.cveoy.top/t/topic/ooMD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录