用c语言实现仙花数”是指一个三位正整数,其各位上的数字的立方和等于该数本身。如: 3+5^3+3^3=153, 因此153是一个水仙花数。输入两个三位正整数a和b(其中 一b),求日b范围内水仙花数的个数。 入输出示例: 命入: 100,999 命出: 4
时间: 2024-02-06 15:12:33 浏览: 84
C语言中的水仙花数,是指一个 n 位数,它的每个位上的数字的n次方之和等于它本身
好的,我明白了。这是一个简单的问题,可以用以下的代码实现:
```c
#include <stdio.h>
int main() {
int a, b, i, j, k, n = 0;
scanf("%d%d", &a, &b);
for (i = a; i <= b; i++) {
j = i / 100; // 获取百位数
k = i % 100; // 获取十位和个位数
if (i == j * j * j + (k / 10) * (k / 10) * (k / 10) + (k % 10) * (k % 10) * (k % 10)) {
n++;
}
}
printf("%d\n", n);
return 0;
}
```
这个程序首先从标准输入中读入两个三位正整数a和b,然后遍历a到b之间的所有整数,对于每个整数,判断它是否是水仙花数,如果是,就将计数器n加1。最后输出n的值,即为水仙花数的个数。
注意,这个程序假设输入的a和b都是合法的三位正整数,没有做输入验证,如果输入不合法的值,程序可能会出现错误。
阅读全文