🌸c语言如何水仙花数,c语言如何解水仙花数💦

来源:

在编程的世界里,我们经常会遇到一些有趣的挑战,比如寻找水仙花数(Narcissistic number)。水仙花数是指一个n位数(n≥3),其各个位上的数字的n次幂之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。

首先,我们需要了解如何获取一个数字的每一位。这可以通过不断地除以10来实现,每次取余数即可得到当前位的数字。接着,我们需要计算每个位上的数字的立方和,然后与原数比较。如果相等,则说明这个数是水仙花数。

下面是一个简单的C语言代码示例:

```c

include

int main() {

int num, originalNum, remainder, n = 0, result = 0;

printf("请输入一个三位数:");

scanf("%d", &num);

originalNum = num;

// 计算数字的位数

for (originalNum = num; originalNum != 0; ++n) {

originalNum /= 10;

}

originalNum = num;

while (originalNum != 0) {

remainder = originalNum % 10;

result += pow(remainder, n);

originalNum /= 10;

}

if (result == num)

printf("%d 是一个水仙花数。\n", num);

else

printf("%d 不是一个水仙花数。\n", num);

return 0;

}

```

通过这段代码,我们可以轻松地找出给定范围内的所有水仙花数。尝试运行它,看看你能否找到更多的水仙花数吧!✨

标签:

免责声明:本文由用户上传,如有侵权请联系删除!