21xrx.com
2024-09-20 05:38:04 Friday
登录
文章检索 我的文章 写文章
C语言中的完数及其计算方法
2023-06-18 13:03:50 深夜i     --     --
C语言 完数 因子 循环 函数

完数是指一个正整数等于所有它的因子(除了它本身)之和,比如6就是一个完数,因为6的因子有1、2、3,而1+2+3=6。在C语言中,我们可以用简单的代码来计算一个数是否为完数。

首先,我们需要输入一个需要判断的数n,然后设一个变量sum来存储这个数的因子和,初始值为0。接下来,我们用for循环来遍历1到n-1之间的所有数,判断这些数是否为n的因子,如果是,就将它加到sum中。最后判断sum是否等于n,如果是,则n就是一个完数。

下面是C语言计算完数的代码:


#include

int main() {

  int n, sum = 0;

  printf("请输入一个正整数:");

  scanf("%d", &n);

  for (int i = 1; i < n; i++) {

    if (n % i == 0) {

      sum += i;

    }

  }

  if (sum == n) {

    printf("%d是一个完数", n);

  } else {

    printf("%d不是一个完数", n);

  }

  return 0;

}

通过这段代码,我们可以计算出任意正整数是否为完数。除此之外,我们还可以使用C语言的函数来实现完数的计算,例如下面这个函数:


int isPerfect(int n) {

  int sum = 0;

  for (int i = 1; i < n; i++) {

    if (n % i == 0) {

      sum += i;

    }

  }

  if (sum == n)

    return 1;

   else

    return 0;

  

}

这个函数接受一个整数n作为参数,返回值为1表示n是一个完数,返回值为0表示n不是一个完数。

  
  

评论区

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