4.求1000以内的所有完数

#include
//  完数:一个数的所有的真因子 (即除了自身以外的约数)的和,恰好等于它自身
//  1 不是完数
// 4的因子:1 2 4  除了本身  4 不等于 1+2  所以4不是完数
 

void fun(void){
	int sum,i,j;
	for(i=2;i<1000;i++) {
	sum =0;
	for(j=1;j<i;j++)  //20的因子 就是从1--19里面找(除去本身) 
		if(i%j==0)     //判断余数是不是0 ,进一步判定是不是真因子 
		               //如果说20能被A整除 说明是A20的因子 
		              //比如 20 ÷2 =10 余数是0,那就说2是真因子 
		sum=sum+j;    //把这些个真因子相加,判断是不是完数 
	if(i==sum)
		printf("%d ",i); 
		
	}
}


int main(){
	fun();
	return 0;
	
}

4.求1000以内的所有完数_第1张图片

你可能感兴趣的:(C语言学习,比特鹏哥C语言学习,c语言,开发语言,学习)