江南弄 2021-10-29 22:26 采纳率: 77.8%
浏览 15
已结题

我想问一下最后一个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;
}

  • 写回答

1条回答 默认 最新

  • 「已注销」 2021-10-29 23:31
    关注

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

    有帮助请采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月30日
  • 已采纳回答 3月22日
  • 创建了问题 10月29日