输出所有的水仙花数。水仙花数是指一个三位数,其数字立方和等于该数本身。 C语言 for语句
时间: 2024-04-11 11:10:11 浏览: 151
以下是C语言实现输出所有的水仙花数的代码:
```c
#include <stdio.h>
int main() {
int i, digit, sum;
printf("水仙花数有:");
for (i = 100; i <= 999; i++) {
digit = i;
sum = 0;
while (digit) {
int remainder = digit % 10;
sum += remainder * remainder * remainder;
digit /= 10;
}
if (sum == i) {
printf("%d ", i);
}
}
printf("\n");
return 0;
}
```
运行结果:
```
水仙花数有:153 370 371 407
```
相关问题
输出所有的水仙花数。“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。使用c语言do while 语句编写
以下是使用C语言do while语句编写的输出所有水仙花数的代码:
```c
#include <stdio.h>
int main() {
int i = 100;
do {
int a = i / 100; // 百位数
int b = (i / 10) % 10; // 十位数
int c = i % 10; // 个位数
if (i == a * a * a + b * b * b + c * c * c) {
printf("%d ", i);
}
i++;
} while (i < 1000);
return 0;
}
```
输出结果:
```
153 370 371 407
```
c语言 for循环实现1000以内(100-999)的水仙花数的程序,所谓的“水仙花数”是指一个三位数其各位 数字的立方和等于该数本身。(例如:13+53+33=153) 。利用for语句求出三位数中所有的的水仙花数。
在C语言中,你可以使用嵌套的for循环来遍历100到999之间的所有三位数,并检查它们是否满足水仙花数的条件。以下是实现这一功能的简单示例代码:
```c
#include <stdio.h>
// 检查一个数是否是水仙花数
int is_armstrong_number(int num) {
int original_num, remainder, sum = 0;
original_num = num; // 备份原始数值以便计算每位数
while (original_num != 0) {
remainder = original_num % 10; // 取最后一位
sum += pow(remainder, 3); // 立方并累加
original_num /= 10; // 移除最后一位
}
return sum == num; // 如果sum等于原数,则是水仙花数,返回1;否则返回0
}
int main() {
for (int i = 100; i <= 999; ++i) {
if (is_armstrong_number(i)) {
printf("%d 是水仙花数.\n", i);
}
}
return 0;
}
```
在这个程序中,`is_armstrong_number`函数负责检查数字是否为水仙花数,`main`函数通过for循环遍历100至999的所有整数,并调用这个函数。如果找到水仙花数,就打印出来。
阅读全文
相关推荐














