用C语言统计水仙花数
时间: 2024-11-17 15:08:46 浏览: 1
C语言实现水仙花数的两种判定方法
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。在C语言中,你可以创建一个函数来检查给定的整数是否是水仙花数。这里是一个简单的示例:
```c
#include <stdio.h>
// 函数声明
int is_armstrong(int num);
int main() {
int n, i;
printf("请输入一个三位数:");
scanf("%d", &n);
if (n >= 100 && n <= 999) {
if (is_armstrong(n)) {
printf("%d 是水仙花数。\n", n);
} else {
printf("%d 不是水仙花数。\n", n);
}
} else {
printf("输入的不是三位数。\n");
}
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 += remainder * remainder * remainder; // 立方和
original_num /= 10;
}
// 如果原数和它的立方和相等,那么就是水仙花数
return (num == sum);
}
```
在这个程序中,我们首先接收用户输入的一个三位数,然后通过`is_armstrong`函数计算并检查这个数是否满足水仙花数的条件。
阅读全文