21xrx.com
2025-06-29 12:24:45 Sunday
文章检索 我的文章 写文章
如何用C语言找出1000以内的完数
2023-06-15 12:23:43 深夜i     31     0
完数 因子 循环 函数 C语言

完数是指一个数恰好等于它的因子之和(不包括它自己)。例如,6是一个完数,因为6的因子是1、2、3,而1+2+3=6。

要找出1000以内的所有完数,首先需要编写一个函数,用来计算某一个数的因子之和。然后,从1开始逐个检查1000以内的所有数,如果一个数的因子之和等于它本身,那么这个数就是一个完数。

在C语言中,可以使用循环结构来实现这个功能。具体实现代码如下:

#include 
int getFactorSum(int n) {
  int sum = 0;
  for (int i = 1; i < n; i++) {
    if (n % i == 0) {
      sum += i;
    }
  }
  return sum;
}
int main() {
  for (int i = 1; i <= 1000; i++) {
    if (getFactorSum(i) == i) {
      printf("%d ", i);
    }
  }
  return 0;
}

  
  

评论区