下面一个程序不知哪有问题呀,应该是有程序要求的数存在的 main() { int num,j,s=0; clrscr(); for(num=1;num<=1000;num++) { for(j=1;j<num;j++) { if(num%j==0) s=s+j; } if(s==num) { printf( "%d its factors are:",num); for(j=1;j<num;j++) {if(num%j==0) printf("%d,",,j); }
} } }
----------------解决方案--------------------------------------------------------
main()
{ int num,j,s=0;
clrscr();
for(num=1;num<=1000;num++)
{ for(j=1;j<=num;j++)
{ if(num%j==0)
s=s+j;
}
if(s==num)
{ printf( "%d its factors are:",num);
for(j=1;j<num;j++)
{if(num%j==0)
printf("%d,",,j);
} }
}
}
----------------解决方案--------------------------------------------------------
main() { int num,j,s=0; clrscr(); for(num=1;num<=1000;num++) { for(j=1;j<num;j++) { if(num%j==0) s=s+j; if(s==num) printf( "%d its factors are:",num); } }
for(j=1;j<num;j++) { if(num%j==0) printf("%d,",j); } }
----------------解决方案--------------------------------------------------------
你这个是求什么数的?
----------------解决方案--------------------------------------------------------
main() { int num,j,s; clrscr(); for(num=1;num<=1000;num++) { s=0; for(j=1;j<num;j++) { if(num%j==0) s=s+j; } if(s==num) { printf( "%d its factors are:",num); for(j=1;j<num;j++) {if(num%j==0) printf("%d,",j); }
} } }
第一for每次循环后s要至0;注意红色是我加了, 还有,编程序要注意风格习惯; 那个大括号要对齐: 今天打了一天的工,好累啊, 我要睡觉了,明天还要呢 唉,
----------------解决方案--------------------------------------------------------