c语言解析水仙花数代码
时间: 2023-08-01 10:09:55 浏览: 63
水仙花数是指一个三位数的各个位上数字的立方和等于该数本身,例如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
以下是C语言解析水仙花数的代码:
```c
#include <stdio.h>
int main()
{
int i, num, digit, sum;
printf("水仙花数:\n");
for (i = 100; i < 1000; i++)
{
num = i;
sum = 0;
while (num > 0)
{
digit = num % 10;
sum = sum + digit * digit * digit;
num = num / 10;
}
if (i == sum)
{
printf("%d\n", i);
}
}
return 0;
}
```
代码解析:
1. 首先定义了三个变量i、num和sum,分别用来表示当前的数字、当前数字的个位数字以及各个位上数字的立方和。
2. 使用for循环,从100到999遍历所有三位数。
3. 将当前数字i赋值给num,将sum清零。
4. 使用while循环,取出num的个位数字digit,计算digit的立方,并加入到sum中。然后将num除以10,继续取出下一个数字,直到num变成0为止。
5. 如果当前数字i等于sum,则说明i是一个水仙花数,输出i。
6. 循环结束,整个程序结束。