看看我的C语言问题??在线等等…………

2025-06-28 02:07:27
推荐回答(3个)
回答1:

1:问题的症结是这样的。

a[10]的定义处在内存当中正好是static int n定义的地方,即a[10]与n在

内存当中地址是一样的,所以a[10]的值和static的初始值是一样的,都是3

2:在for(i=0;i<7;i++) f1(); 的调用处改变了n的值,经过循环以后n的值

是10;

3:所以a[10]=n=10;

4:你可以看看内存当中变量的变化,跟踪一下就可以发现问题的。

5:最后建议你的程序结构要好一点,否则很难读明白你的程序。

回答2:

三楼的正解,好厉害!
可是为什么a[10] 刚好是static int n 呢?内存是如何分配的呢?。。

回答3:

是啊,三楼的再解释一下啊!很崇拜你的!