打印所有的水仙花数,所谓水仙花数是指一个三位数的立方和等于该数的本身c程序代码“”
时间: 2024-10-25 19:12:27 浏览: 43
当然可以,打印所有水仙花数的C语言代码如下:
```c
#include <stdio.h>
// 函数声明
int is_armstrong(int num);
int main() {
int i, limit;
printf("查找所有小于1000的水仙花数:\n");
// 遍历三位数范围内的整数
for (i = 100; i <= 999; ++i) {
// 如果数字是水仙花数,就打印出来
if (is_armstrong(i)) {
printf("%d ", i);
}
}
return 0;
}
// 检查一个数字是否是水仙花数的辅助函数
int is_armstrong(int num) {
int original_num, remainder, sum = 0;
// 把数字分解成每个位上的数字并计算它们的立方和
original_num = num;
while (original_num > 0) {
remainder = original_num % 10;
sum += pow(remainder, 3); // 使用pow函数计算立方
original_num /= 10;
}
// 数字本身就是它各个位上数字立方之和才称为水仙花数
return sum == num;
}
```
这个程序会找出所有小于1000的水仙花数。`is_armstrong`函数用于检查输入的数是否满足水仙花条件。
阅读全文