21xrx.com
2025-03-31 03:28:17 Monday
文章检索 我的文章 写文章
C语言如何判断正整数是不是完数
2023-06-17 06:08:40 深夜i     --     --
C语言 正整数 完数

完数是指一个数的所有因子(除了这个数本身)之和等于这个数本身。而C语言中判断一个正整数是否为完数,要使用循环和条件语句进行计算。

首先,需要输入一个正整数n,然后再用循环从1到n-1的数分别去除n,如果n能够整除i,那么i就是n的一个因子。将所有因子加起来,判断它们的和是否等于n本身,如果相等,则n是完数,如果不相等,则不是完数。

代码实现如下:

#include 
int main()
{
  int n, i, sum = 0;
  printf("请输入一个正整数:");
  scanf("%d", &n);
  for (i = 1; i < n; i++)
  {
    if (n % i == 0)
    {
      sum += i;
    }
  }
  if (sum == n)
  {
    printf("%d是完数\n", n);
  }
  else
  {
    printf("%d不是完数\n", n);
  }
  return 0;
}

  
  

评论区