## C语言课后习题-完数

C语言课后习题-完数

一个数如果恰好等于它的因子之和,这个数就是“完数‘’。例如6的因子为1,2,3,而6=1+2+3,因此6是完数。编写程序找出1000以内的所有完数,并按照下面格式输出其因子:
6 its factors are 1,2,3

思路:
1-想到是两层循环才可以完成
2-想到有一个变量应该和外层循环的值比较。才可以输出
3-外层循环应该从2开始。并且每次循环都应该刷新sum的值

#include <stdio.h>
void main()
{
    
    
	int j;
	int i;
	int sum;
	for(i=2;i<1000;i++)
	{
    
    
		sum=0;
		for(j=1;j<i;j++)
		{
    
    
			if(i%j==0)
			{
    
    
				sum=sum+j;
			}
		}
		if(sum==i)
			printf("%d\n",i);
	}
}

猜你喜欢

转载自blog.csdn.net/jijijun/article/details/104998734