21xrx.com
2024-09-17 03:37:35 Tuesday
登录
文章检索 我的文章 写文章
C语言中如何判断水仙花数
2023-06-15 20:16:02 深夜i     --     --
C语言 函数 水仙花数

水仙花数指的是一个三位数,其各位数字立方和等于这个数本身。例如:153=1^3+5^3+3^3。如果我们在C语言中想要判断一个数字是否为水仙花数,就需要使用到函数。

首先,我们需要定义一个函数来判断一个数字是否为水仙花数。这个函数需要接收一个参数,即待判断的数字,然后判断其是否满足水仙花数的条件。如果满足条件,则返回真,否则返回假。

判断过程的具体实现可以按照以下步骤:

1. 将数字按位拆分得到个位数、十位数和百位数;

2. 将这三个数分别立方后相加;

3. 将相加后的结果与原数字进行比较,判断是否相等。

以下是实现上述步骤的C语言代码:


#include

#include

bool isNarcissistic(int num) {

  int units = num % 10;

  int tens = (num / 10) % 10;

  int hundreds = num / 100;

  return (num == units * units * units + tens * tens * tens + hundreds * hundreds * hundreds);

}

int main() {

  int num;

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

  scanf("%d", &num);

  if (isNarcissistic(num)) {

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

  } else {

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

  }

  return 0;

}

以上代码中,函数isNarcissistic接收一个整型参数num,代表待判断的数字。该函数通过将num按位拆分得到各位数,再分别立方后相加,最后与原数字进行比较,判断num是否为水仙花数。函数返回值为真或假,表示num是否是水仙花数。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复