C语言输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数字本身。例如,153是一个水仙花数,因为153=1^3+5^3+3^3
时间: 2024-10-22 11:09:03 浏览: 54
水仙花数,也称为阿姆斯特朗数,是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(C语言源代码)
在C语言中,可以编写一段程序来找出所有的水仙花数。首先,我们需要遍历从100到999的所有三位数,然后计算每个数各位数字的立方和,如果和等于原数本身,则认为它是水仙花数。以下是简单的C代码实现:
```c
#include <stdio.h>
#include <stdbool.h>
bool isArmstrong(int num) {
int original = num;
int sum = 0;
while (num != 0) {
int digit = num % 10;
sum += digit * digit * digit;
num /= 10;
}
return original == sum;
}
int main() {
for (int i = 100; i <= 999; ++i) {
if (isArmstrong(i)) {
printf("%d 是一个水仙花数。\n", i);
}
}
return 0;
}
```
在这个程序中,`isArmstrong`函数用于检查一个数是否是水仙花数,`main`函数则循环遍历并打印出符合条件的数。
阅读全文