求一个范围中的水仙花数C语言include
时间: 2024-12-17 17:47:15 浏览: 1
C语言变种水仙花数.zip
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
在C语言中,我们可以通过遍历给定范围内的每一个三位数来检查是否为水仙花数。以下是一个简单的示例代码片段:
```c
#include <stdio.h>
int is narcissistic(int num) {
int digits[3], sum = 0;
// 分离出每一位数字
while (num > 0) {
digits[2] = num % 10; // 取个位
sum += digits[2] * digits[2] * digits[2];
num /= 10; // 移除个位
}
return (sum == num);
}
// 主函数
int main() {
int start, end, i;
printf("请输入范围的开始和结束:");
scanf("%d %d", &start, &end);
for (i = start; i <= end; i++) {
if (is_narcissistic(i)) {
printf("%d 是水仙花数\n", i);
}
}
return 0;
}
```
在这个程序里,`is_narcissistic()` 函数用于检查一个整数是否为水仙花数。`main()` 函数则负责获取用户输入的范围,并对其中的每个数调用这个函数。
阅读全文