答案对不上,不知道哪出问题了?

img


求解答!求帮忙!◉‿◉解题思路不是很清晰。不好写啊!谢谢您嘞!

img


从1开始


int Facsum(int n) {
    int i,sum=1;//因为题目包含了1
    for(i=2;i<n;i++){//循环找因子
        if(n%i==0) {
            printf(" %d ",i);
            sum = sum + i;//不要把n/i放进去,在循环的时候i在增加,已经把后面的因子加了上去,没必要再加进去
        }
    }
    printf(" %d ",n);//给你看看n,不要也行
    printf("\n和为:\n");
    return sum;
}

结果为:
1000
2 4 5 8 10 20 25 40 50 100 125 200 250 500 1000
和为:
1340
进程已结束,退出代码0