打印出所有的水仙花数。水仙花数是指一个三位数,其各位数字的立方和等于该数本身。如:153是水仙花数,因为153=13+53+33。c语言
时间: 2024-03-29 14:38:04 浏览: 58
好的,以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int i, j, k, num;
for (i = 1; i <= 9; i++) {
for (j = 0; j <= 9; j++) {
for (k = 0; k <= 9; k++) {
num = i * 100 + j * 10 + k;
if (num == i * i * i + j * j * j + k * k * k) {
printf("%d ", num);
}
}
}
}
return 0;
}
```
首先我们使用三重循环枚举所有的三位数,然后判断该数是否为水仙花数,如果是就打印出来。其中,第一个循环枚举百位数,第二个循环枚举十位数,第三个循环枚举个位数。最后输出的结果就是所有的水仙花数。
相关问题
打印所有水仙花数,水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如 153是水仙花数用c语言
在C语言中,我们可以编写一个简单的程序来找出所有的水仙花数。以下是一个基本的示例:
```c
#include <stdio.h>
// 计算一个整数的各位数字立方之和
int sumOfCubes(int num) {
int cubeSum = 0;
while (num > 0) {
int digit = num % 10;
cubeSum += digit * digit * digit;
num /= 10;
}
return cubeSum;
}
// 主函数,遍历并打印水仙花数
void printWaterLilyNumbers() {
for (int i = 100; i <= 999; i++) {
if (sumOfCubes(i) == i) {
printf("%d ", i);
}
}
}
int main() {
printWaterLilyNumbers();
return 0;
}
```
在这个程序中,我们首先定义了一个辅助函数`sumOfCubes`计算输入整数的立方和,然后在`printWaterLilyNumbers`函数中,从100到999逐个检查每个数字是否满足水仙花数条件。如果满足,就将其打印出来。
打印所有水仙花数,水仙花数是指一个三位数,其各位数字的立方和等于该数本身用c语言表示
在C语言中,要打印出所有的水仙花数,你可以编写一个简单的程序来遍历三位数范围内的每一个数,并检查它是否满足水仙花数的条件。水仙花数的定义是每个位上的数字立方之和等于该数自身。
以下是一个简单的示例代码:
```c
#include <stdio.h>
// 函数用于计算三个数立方和
int cubeSum(int num) {
int hundred = num / 100; // 取百位
int ten = (num % 100) / 10; // 取十位
int unit = num % 10; // 取个位
return hundred * hundred * hundred + ten * ten * ten + unit * unit * unit;
}
// 主函数
void printWaterLilyNumbers() {
for (int i = 100; i <= 999; ++i) { // 遍历100到999
if (cubeSum(i) == i) { // 检查是否为水仙花数
printf("%d ", i); // 打印出来
}
}
}
int main() {
printWaterLilyNumbers();
return 0;
}
```
当你运行这个程序,它会输出所有从100到999之间的水仙花数。例如:153, 370, 371, 407 等等。
阅读全文