用C语言三种循环结构求100-999之间所有的水仙花数。
时间: 2024-04-29 21:20:53 浏览: 150
水仙花数指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1³+5³+3³=153。
方法一:for循环
```
#include<stdio.h>
int main()
{
int i;
for (i = 100; i <= 999; i++)
{
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\n", i);
}
}
return 0;
}
```
方法二:while循环
```
#include<stdio.h>
int main()
{
int i = 100;
while (i <= 999)
{
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\n", i);
}
i++;
}
return 0;
}
```
方法三:do-while循环
```
#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\n", i);
}
i++;
} while (i <= 999);
return 0;
}
```
阅读全文