题目描述 如果一个三位数nn的各位数字的立方和等于nn,那么称nn为水仙花数。例如153=13+53+33153=13+53+33,因此153是水仙花数。 给定两个正整数aa、bb,输出在闭区间[a,b][a,b]内的所有水仙花数。 输入描述 两个正整数aa、bb(100≤a≤b≤999100≤a≤b≤999)。 输出描述 在一行里输出闭区间[a,b][a,b]内的所有水仙花数,多个水仙花数按从小到大的顺序输出,中间用空格隔开,行末不允许有多余的空格。如果区间内没有水仙花数,那么输出NO。用C语言
时间: 2024-02-01 09:14:50 浏览: 118
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身
5星 · 资源好评率100%
```
#include <stdio.h>
// 计算一个数的各位数字的立方和
int cubeSum(int num) {
int sum = 0;
while (num > 0) {
int digit = num % 10;
sum += digit * digit * digit;
num /= 10;
}
return sum;
}
int main() {
int a, b;
scanf("%d %d", &a, &b);
int count = 0; // 记录水仙花数的个数
for (int i = a; i <= b; i++) {
if (cubeSum(i) == i) {
printf("%d ", i);
count++;
}
}
if (count == 0) {
printf("NO");
}
return 0;
}
```
阅读全文