打印100-999之间的所有水仙花数.水仙花数是指一个3位数,它的每个位上的数字的立方和等于它本身。如:153=1^3+5^3+3^3。C语言
时间: 2024-02-18 17:03:02 浏览: 172
C语言经典算法例题求100-999之间的“水仙花数
5星 · 资源好评率100%
好的,以下是使用 C 语言编写的代码,可以实现打印 100-999 之间的所有水仙花数:
```c
#include <stdio.h>
#include <math.h>
int main() {
int a, b, c, sum;
for (int i = 100; i < 1000; i++) {
a = i / 100; // 计算百位数
b = i / 10 % 10; // 计算十位数
c = i % 10; // 计算个位数
sum = pow(a, 3) + pow(b, 3) + pow(c, 3); // 计算立方和
if (sum == i) { // 如果立方和等于该数字本身
printf("%d ", i); // 输出该数字
}
}
printf("是水仙花数。\n");
return 0;
}
```
这个程序使用 `for` 循环遍历 100 到 999 之间的所有整数,并使用 `/` 和 `%` 运算符计算每个数字的百位数、十位数和个位数。然后,通过 `pow` 函数计算百、十、个位数的立方和,判断该数字是否为水仙花数。如果是水仙花数,则将其打印出来。最后,输出一个提示,表示所有水仙花数已经打印完毕。
阅读全文