水仙花数c语言程序当指定范围内无水仙花数时
时间: 2024-12-16 13:30:54 浏览: 3
水仙花数c语言程序.docx
水仙花数是指那些每一位数字立方之和等于该数本身的三位数,比如153(1^3 + 5^3 + 3^3 = 153)。在C语言中编写一个程序检查给定范围内的水仙花数,可以按照以下步骤:
1. 定义一个函数,例如`is narcissistic(int num)`,它接受一个整数作为输入,并计算其各位数字立方和。
2. 使用一个for循环遍历指定范围内的每个整数(从最小到最大值),比如从100到999。
3. 对于每个数,先判断是否是三位数,如果不是则跳过;然后调用`is narcissistic()`函数检查这个数是否是水仙花数。
4. 如果是水仙花数,打印出来或保存到结果数组中。
5. 循环结束后,如果没有找到水仙花数,提示范围内没有水仙花数。
```c
#include <stdio.h>
int is_narcissistic(int num) {
int sum = 0;
while (num > 0) {
int digit = num % 10;
sum += digit * digit * digit;
num /= 10;
}
return sum == num;
}
void find_narcissistic_numbers(int start, int end) {
for (int i = start; i <= end; ++i) {
if (is_narcissistic(i)) {
printf("%d is a Narcissistic number.\n", i);
}
}
if (!find_narcissistic_numbers_count) {
printf("No Narcissistic numbers found in the range from %d to %d.\n", start, end);
}
}
int main() {
int start_range = 100;
int end_range = 999;
find_narcissistic_numbers(start_range, end_range);
return 0;
}
```
阅读全文