水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+33。 现在要求输入一个三位数,判断该数是否是水仙花数,如果是,输出“yes”,否则输出“no”用C语言
时间: 2024-10-22 12:29:37 浏览: 46
swift代码-三位水仙花数计算
在C语言中,可以编写如下的函数来判断一个三位数是否是水仙花数:
```c
#include <stdio.h>
#include <stdbool.h>
bool is narcissistic_number(int num) {
// 将数字分解成百位、十位和个位
int hundreds = num / 100;
int tens = (num % 100) / 10;
int ones = num % 10;
// 计算各位数字的立方和
int sum_of_cubes = hundreds * hundreds * hundreds + tens * tens * tens + ones * ones * ones;
// 判断是否等于原数
return sum_of_cubes == num;
}
int main() {
int input;
printf("请输入一个三位数: ");
scanf("%d", &input);
if (is_narcissistic_number(input)) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
}
```
在这个程序中,`is_narcissistic_number` 函数首先将输入的三位数分解成百位、十位和个位,然后计算它们各自的立方和,并检查这个和是否等于原始数字。如果相等,则返回 `true` 表示是水仙花数,否则返回 `false`。
阅读全文