4,打印1~n之间的盈数
盈数(又称丰数,过剩数abundant number)是一种特殊的自然数,除去它本身以外的一切正约数的和大于它本身。(12是最小的盈数,945是最小的奇盈数)
1 int test4(int num){ 2 int i=2; 3 for(i; i<=num; i++){ 4 if(test4_1(i)) 5 printf("%d\t",i); 6 } 7 return 0; 8 } 9 int test4_1(int n){ 10 int sum = 0; 11 int n_1 = n/2 ; 12 int i=2; 13 for(i;i<=n_1; i++){ 14 if(n % i == 0) 15 sum += i; 16 } 17 return sum>n; 18 }