学习通c++水仙花程序
时间: 2023-12-22 10:06:48 浏览: 25
以下是C语言的水仙花程序:
#include <stdio.h>
#include <math.h>
int main()
{
int num, temp, sum = 0, digits = 0;
printf("请输入一个三位数:");
scanf("%d", &num);
temp = num;
while (temp > 0) {
digits++;
temp /= 10;
}
temp = num;
while (temp > 0) {
sum += pow(temp % 10, digits);
temp /= 10;
}
if (sum == num)
printf("%d是水仙花数\n", num);
else
printf("%d不是水仙花数\n", num);
return 0;
}
解释:
1. 首先,我们需要定义一个变量num,它是我们要检查的数。
2. 接下来,我们定义一个变量temp,它是num的一个副本。
3. 我们需要计算num的位数,因此我们定义一个变量digits,并用while循环计算。
4. 接下来,我们需要计算num的每一位的立方和。我们定义一个变量sum,并用while循环计算。
5. 最后,我们检查sum是否等于num,如果是,就说明num是水仙花数。
6. 最后,我们使用printf函数输出结果。
注意:如果要检查一个四位数或更高位数的数是否是水仙花数,只需将while循环中的数字3替换为相应的位数即可。