水仙花数c语言程序循环嵌套
时间: 2024-11-17 12:06:49 浏览: 30
水仙花数是指一个三位数,其各位数字立方和等于原数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。在C语言中,我们可以编写一个简单的循环嵌套结构来检查一个三位数是否是水仙花数:
```c
#include <stdio.h>
// 函数用于计算一个整数的各个位立方之和
int sumOfCubes(int num) {
int firstDigit = num / 100; // 取百位
int secondDigit = (num % 100) / 10; // 取十位
int lastDigit = num % 10; // 取个位
return firstDigit * firstDigit * firstDigit + secondDigit * secondDigit * secondDigit + lastDigit * lastDigit * lastDigit;
}
// 主函数判断输入的数是否为水仙花数
int main() {
int num, i;
printf("请输入一个三位数:");
scanf("%d", &num);
// 使用循环嵌套结构,如果sumOfCubes的结果等于原数,就说明是水仙花数
for (i = 100; i <= 999; i++) {
if (sumOfCubes(i) == i) {
printf("%d 是水仙花数。\n", i);
}
}
return 0;
}
阅读全文