求100~499之间的所有水仙花数,即各位数字的立方和恰好等于该数本身的数。用cc语言写
时间: 2024-10-13 10:12:46 浏览: 8
当然可以。在C语言中,我们可以通过遍历指定范围内的每一个三位数,计算其各位数字立方之和,并检查是否等于原数本身来找出所有的水仙花数。以下是一个简单的示例代码:
```c
#include <stdio.h>
// 函数来计算一个整数的各位立方和
int sumOfCubes(int num) {
int digits[3];
int sum = 0;
// 分割出百位、十位和个位
digits[0] = num / 100;
digits[1] = (num % 100) / 10;
digits[2] = num % 10;
// 计算立方和
sum = digits[0]*digits[0]*digits[0] + digits[1]*digits[1]*digits[1] + digits[2]*digits[2]*digits[2];
return sum;
}
// 主函数查找并打印水仙花数
void findWaterLilies() {
for (int i = 100; i <= 499; ++i) {
if (sumOfCubes(i) == i) {
printf("%d ", i); // 打印找到的水仙花数
}
}
}
int main() {
findWaterLilies();
return 0;
}
```
当你运行这段代码,它会输出153, 370, 和 371,这些都是100到499之间满足条件的水仙花数。
阅读全文