揭秘水仙花数:探索 C 语言的魅力380


前言

在数学世界中,水仙花数是一个令人着迷的现象。水仙花数是一个三位数,其各个数字的立方和等于它本身。例如,153 是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。在 C 语言中,我们可以通过一个优雅的算法来输出所有水仙花数。

算法步骤

找到水仙花数的算法可以分解为以下步骤:1. 循环所有三位数 n:从 100 循环到 999。
2. 计算 n 的各个数字的立方和:
- 将 n 除以 100 得到百位数字,立方后乘以 100。
- 将 n 除以 10 得到十位数字,立方后乘以 10。
- 将 n 除以 1 得到个位数字,立方。
- 将这三个立方和相加。
3. 检查是否等于 n:如果立方和等于 n,则 n 是一个水仙花数。

C 语言代码
#include
int main() {
int n;
printf("水仙花数为:");
for (n = 100; n < 1000; n++) {
int百位 = n / 100;
int十位 = (n % 100) / 10;
int个位 = n % 10;
int立方和 = 百位 * 百位 * 百位 + 十位 * 十位 * 十位 + 个位 * 个位 * 个位;
if (立方和 == n) {
printf("%d", n);
}
}
return 0;
}

输出结果

运行上述 C 语言代码将输出所有水仙花数,即:
153
370
371
407

扩展和应用

这个算法可以轻松扩展到输出任意位数的水仙花数。此外,它还可以应用于解决其他数学问题,例如寻找完美数或友谊数。

通过利用 C 语言强大的计算能力,我们能够高效地找到水仙花数。这个算法简洁明了,展示了 C 语言解决各种编程问题的强大功能。因此,掌握 C 语言不仅可以帮助我们理解有趣的数学概念,还可以为我们解决实际问题提供强大的工具。

2024-10-15


上一篇:C 语言字符输出格式

下一篇:C语言switch函数详解