21xrx.com
2024-09-20 08:11:08 Friday
登录
文章检索 我的文章 写文章
C语言程序实现求100以内完数
2023-06-18 08:09:38 深夜i     --     --

完数又称为完全数,是指一个正整数等于它所有因子(除了本身)之和。例如6就是一个完数,因为6=1+2+3。那么如何用C语言求100以内的完数呢?

1. 嵌套循环遍历1到100的所有正整数

2. 内层循环遍历该数的所有因子(除了本身),并累加求和

3. 判断累加和是否等于该数本身,如果相等则输出该数

下面是完整代码的实现:


#include

int main() {

  int i, j, sum;

  printf("100以内的完数为:\n");

  for (i = 1; i <= 100; i++) {

    sum = 0; // 每次循环初始化sum为0

    for (j = 1; j < i; j++) {

      if (i % j == 0) { // 判断j是否为i的因子

        sum += j; // 如果是,则累加

      }

    }

    if (sum == i) { // 判断sum是否等于i本身

      printf("%d\n", i); // 如果是,则输出该数

    }

  }

  return 0;

}

通过该程序,我们可以得到100以内的完数为6、28。因此,关键词可为:C语言、完数、因子、累加、循环。

  
  

评论区

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