在C语言中,水仙花数(也称为阿姆斯特朗数)是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。对于三位数来说,水仙花数满足条件:一个三位数是其各位数字立方和等于其本身。
1. 153 = 1^3 + 5^3 + 3^3
2. 370 = 3^3 + 7^3 + 0^3
3. 371 = 3^3 + 7^3 + 1^3
4. 407 = 4^3 + 0^3 + 7^3
```c
include
int main() {
int i, j, k, m;
printf("输出100~999之间的所有水仙花数:\n");
for (i = 100; i <= 999; i++) {
j = i / 100; // 确定百位上的数字
k = (i % 100) / 10; // 确定十位上的数字
m = i % 10; // 确定个位上的数字
if (i == j * j * j + k * k * k + m * m * m) {
printf("%d\n", i);
}
}
return 0;
}
```
这个程序通过遍历100到999之间的所有数字,并检查每个数字的各位数字立方和是否等于该数字本身,从而找出所有水仙花数并输出。
运行这个程序,你将得到以下输出:
```
输出100~999之间的所有水仙花数:
153
370
371
407
```
这些就是100到999之间的所有水仙花数。