请求帮帮小弟c++问题

4、一个数如果恰好等于它的因子之和,这个数就称为"完数"。 例如,6 的因子为1,2, 3.而6=1+2+3.因此6是“完数"。 找出1000之内的所有完数”并按下面格式输出其因子:The factors of 6are 123。

#include "stdio.h"
void main()
{
    /*
    	完数:所有的因子相加等于这个数本身
    	6=1+2+3
    */
    int i,j,a,b,c;
    printf("1000以内的完数如下:\n");
    for(i=6;i<=1000;i++)
    {
   		a=0;
   		//求i对应的所有的因子
    	for(j=2;j<=i;j++)
    	{
    		if(i%j==0)
    		{
    			
    			a+=i/j;
    		}
    	}
    	if(i==a){
    		//该循环语句的作用就是打印结果
    		for(j=2;j<=i;j++)
	    	{
	    		if(i%j==0)
	    		{
	    			if(i==j){
	    				printf("%d",i/j);	
	    			}else{
	    				printf("%d+",i/j);
	    			}
	    		}
	    	}
    		printf("=%d\n",i);
    	}
    }
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m