如何用C语言编写一个函数来查找并打印出100至999范围内的所有水仙花数?
时间: 2024-12-11 13:44:08 浏览: 90
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
下面是如何用C语言编写一个函数来查找并打印100到999范围内的所有水仙花数:
#include <stdio.h>
// 函数声明
void findAndPrintSphenicNumbers(int lower, int upper);
int main() {
// 调用函数
findAndPrintSphenicNumbers(100, 999);
return 0;
}
// 定义查找函数
void findAndPrintSphenicNumbers(int start, int end) {
for (int num = start; num <= end; num++) {
int hundreds = num / 100; // 百位
int tens = (num % 100) / 10; // 十位
int ones = num % 10; // 个位
if (hundreds * hundreds * hundreds + tens * tens * tens + ones * ones * ones == num) {
printf("%d is a Sphenic Number.\n", num);
}
}
}
在这个程序中,我们遍历100到999之间的每个数,将它拆分为百位、十位和个位,然后计算它们各自的立方和。如果这个和等于原数,我们就认为这是一个水仙花数,并将其打印出来。
相关推荐

















