以下是引用wanglff在2006-3-8 20:28:00的发言:
#include <stdio.h>
main ()
{
int i,j,sum;
for(i=1;i<=1000;i++)
{
sum=0;
for(j=1;j<=i/2;j++)
if (i/j*j==i) //“i/j*j==i;这个表达式是一直正确的”,谁告诉你一直正确的,i/j是整除取商的意思,如果j不能整除i的话,结果返回商值,余数被截除了,所以i/j*j==i表示的是j能够整除i,j是i的因子,这是判断条件,怎么能够删除呢//
if (sum==i)
printf("%d\t",i);
}
}