用c++求1000内的完数,然后就是没运行出来,求大家帮我看看🧐

#include
main()
{
int i,n=1000,sum=0;
printf("please enter 1000内的所有完数:");
for(i=1;i
{
while(n%i==0)
n--;
sum+=i;
}
if(n==sum)
printf("%d\n",n);

}

你这逻辑有问题啊,第一次i等于1的时候,根本就出不了循环啊。