static用法的问题
程序代码:
/*一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。找出1000以内的所有完数。*/ #include<stdio.h> int main() { int i,j,s,n; static int k[10]; for(i = 2;i < 1000;i++) { s = 0; n = -1; for(j = 1;j <= i/2;j++) { if(i % j == 0) { n ++; s = s +j; k[n] = j; } } if(s ==i) { printf("%d is a wanshu",i); for(j=0;j<=n;j++) printf("%d,",k[j]); printf("\n"); } } return 0; }定义数组K的时候为什么要用static, 如果不用static输出结果将不会输出最后一个数,麻烦解答一下,谢谢