定义水仙花数:他是一个三位数,它的百、十、个位上的数的立方和等于该数本身。输入一个三位数,判断它是否是水仙花数。用C语言写出代码
时间: 2024-12-30 19:36:58 浏览: 63
在C语言中,你可以使用条件语句和循环结构来实现对水仙花数的判断。以下是一个简单的程序,它接受用户输入的一个三位数,然后检查其各个位数字的立方和是否等于原数:
```c
#include <stdio.h>
// 函数定义,用于计算并返回三个整数的立方和
int sumOfCubes(int a, int b, int c) {
return a*a*a + b*b*b + c*c*c;
}
// 主函数,接收用户输入的三位数并判断是否为水仙花数
int main() {
int num, hundreds, tens, ones;
// 输入验证,确保是三位数
printf("Enter a three-digit number: ");
scanf("%d", &num);
if (num < 100 || num > 999) {
printf("Invalid input. Please enter a three-digit number.\n");
return 0;
}
// 提取百位、十位和个位数字
hundreds = num / 100;
tens = (num % 100) / 10;
ones = num % 10;
// 计算立方和并与原始数比较
if (sumOfCubes(hundreds, tens, ones) == num) {
printf("%d is a Narcissistic number (or Water Lily number).\n", num);
} else {
printf("%d is not a Narcissistic number.\n", num);
}
return 0;
}
```
在这个程序中,我们首先获取用户输入的三位数,然后将其拆分为百位、十位和个位数字。接着,我们将这些数字的立方相加,如果结果等于原数,则它是水仙花数。
阅读全文
相关推荐



















