21xrx.com
2025-04-25 23:43:31 Friday
文章检索 我的文章 写文章
如何在C语言中调用函数求完数
2023-06-13 02:32:54 深夜i     14     0
C语言 函数 完数

在C语言中,我们可以使用函数来求完数。所谓“完数”,就是一个自然数,它的所有因子(不含它本身)的和恰好等于它本身。例如,6就是一个完数,因为6的因子有1、2、3,而1+2+3=6。

要在C语言中求完数,我们可以写一个函数来计算一个自然数的因子和,然后对每个自然数进行判断。具体实现的方法如下所示:

#include 
// 求一个自然数的因子和
int factor_sum(int n) {
  int sum = 0;
  for (int i = 1; i < n; i++) {
    if (n % i == 0) {
      sum += i;
    }
  }
  return sum;
}
// 判断一个自然数是否是完数
int is_perfect(int n) {
  return factor_sum(n) == n;
}
int main() {
  for (int i = 1; i <= 10000; i++) {
    if (is_perfect(i)) {
      printf("%d\n", i);
    }
  }
  return 0;
}

上面这个程序首先定义了一个函数`factor_sum`,它用来求一个自然数的因子和。然后定义了另一个函数`is_perfect`,它用来判断一个自然数是否是完数。最后在`main`函数中,我们对自然数1到10000进行遍历,对于每个数调用`is_perfect`函数来判断它是否是完数,如果是的话就输出它。

本文的

  
  

评论区