求助,为什么多了一个24
求1000以内的完数 并显示因子我写的代码
程序代码:
#include <stdio.h> #include <conio.h> int main() { int a,b,y; for(a=1;a<1000;a++) { y=0; for(b=1;b<=a/2;b++) { if(a%b==0) { y+=b; if(y==a) { printf("%d\n",a); for(b=1;b<=a/2;b++) { if(a%b==0) { printf("因子为%d\n",b); } } } } } } getch(); return 0; }
显示结果 多了24
1000以内的 只有
6
1 2 3
28
1 2 4 7 14
496
1 2 4 8 16 31 62 124 248
求解 谢谢了!~
[ 本帖最后由 k1868548 于 2011-10-30 12:53 编辑 ]