用C语言帮我写一个三位数的水仙花数程序
时间: 2024-11-24 14:40:40 浏览: 17
水仙花数是一个特殊的整数,它的各位数字立方之和等于其本身。例如,153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
下面是一个简单的C语言程序,用于检查一个三位数是否为水仙花数:
```c
#include <stdio.h>
// 函数定义:检查是否为水仙花数
int is_armstrong_number(int num) {
int original_num, sum = 0;
original_num = num;
// 将数字分解为每一位并计算它们的立方和
while (original_num != 0) {
int remainder = original_num % 10;
sum += remainder * remainder * remainder; // 立方求和
original_num /= 10;
}
// 如果原始数字和立方和相等,则是水仙花数
if (num == sum)
return 1;
else
return 0;
}
int main() {
int num;
printf("请输入一个三位数: ");
scanf("%d", &num);
// 检查输入的数是否是水仙花数
if (is_armstrong_number(num))
printf("%d 是一个水仙花数.\n", num);
else
printf("%d 不是水仙花数.\n", num);
return 0;
}
```
当你运行这个程序时,它会提示你输入一个三位数,然后判断该数是否为水仙花数,并给出相应的结果。
阅读全文