我想问一下最后一个for语句是干嘛的?还有为什么要a[m][0]呢以及那个a[m][n++]=j是什么意思

#include<stdio.h>
main()
{
int i,j,k,sum;
int a[10][20],m,n;
for(i=2;i<=1000;i++){
m=n=0;
sum=0;
for(j=1,k=0;j<i;j++)
if(i%j==0){
sum+=j;
a[m][n++]=j;}
if(i==sum){
printf("%d its factors are %d",i,a[m][0]);
for(k=1;k<=n-1;k++)
printf(",%d",a[m][k]);
printf("\n");
m++;}
}
return 0;
}

最后一个for循环是输出i所有的除了1以外的因子的
a[m][0]是i的第一个因子,任何自然数的第一个因子都是1,所以a[m][0]就是1
a[m][n++]就是将i的所有因子保存到这个二维数组中

有帮助请采纳