c语言由键盘上输入一个三位正整数,请你判断其是否为三位水仙花数。是输出“TRUE”,否则输出“FALSE”。 输入
时间: 2024-09-28 12:12:45 浏览: 39
C语言程序设计-调用函数fun判断一个三位数是否水仙花数;在main函数中从键盘输入一个三位数,并输出判断结果
5星 · 资源好评率100%
在C语言中,我们可以编写一个程序来检查一个三位正整数是否为水仙花数。水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。下面是一个简单的C程序实现:
```c
#include <stdio.h>
#include <stdbool.h>
bool isArmstrongNumber(int num) {
int original_num, remainder, sum_of_cubes = 0;
// 检查是否为三位数
if (num < 100 || num > 999) {
return false;
}
original_num = num;
while (original_num != 0) {
remainder = original_num % 10; // 取余数
sum_of_cubes += remainder * remainder * remainder; // 计算每个位数的立方
original_num /= 10;
}
// 如果原数等于它的各个位数立方之和,则是水仙花数
return sum_of_cubes == num;
}
int main() {
int num;
printf("请输入一个三位正整数:");
scanf("%d", &num);
bool result = isArmstrongNumber(num);
if (result) {
printf("TRUE\n");
} else {
printf("FALSE\n");
}
return 0;
}
```
在这个程序中,我们首先定义了一个`isArmstrongNumber`函数,用于计算和验证给定数是否为水仙花数。然后在`main`函数中,从键盘读取用户输入的数字,并通过调用`isArmstrongNumber`函数确定结果。如果是水仙花数,就输出"TRUE",否则输出"FALSE"。
阅读全文