所谓水仙花数(也称自幂数、自恋数、阿姆斯特朗数),它是一个 3 位数,其每位数字的 3 次幂之和等于它本身。 请编写函数,判断水仙花数。 函数原型 int IsNarc(int x); 说明:参数 x 是任意自然数。若 x 是水仙花数,则函数值为 1 (真),否则为 0 (假)。
时间: 2024-02-22 17:59:17 浏览: 195
水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身,例如:$1^3+5^3+3^3=153$。请编写程序求出100到999之间的所有水仙花数。代码
好的,我会编写一个名为IsNarc的函数,用于判断一个自然数是否是水仙花数。函数代码如下所示:
```
int IsNarc(int x) {
int sum = 0;
int temp = x;
while (temp) {
int digit = temp % 10;
sum += digit * digit * digit;
temp /= 10;
}
return sum == x;
}
```
该函数接受一个自然数参数x,代表要检查的数。函数使用while循环遍历x的每一位数字,计算每位数字的3次幂之和。然后将计算出的和与原数x进行比较,如果相等,则说明x是水仙花数,返回1表示是水仙花数;否则返回0表示不是水仙花数。
阅读全文