A-A+
以下程序的输出是【 】。 include<iostream> using namespace
问题详情
以下程序的输出是【 】。
include<iostream>
using namespace std;
fun(intm)
{
static int n=1;
n=m*n;
return(n);
}
void main()
{
int i;
for(i=1;i<=3;i++) cout<<fun(i);
}请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:126
126 解析:局部静态变量在离开作用域之后,并没有被销毁,而是仍然驻留在内存当中,直到程序结束。第一次调用 fun 函数时n的值等于1,第二次调用 fun 函数时n的值等于2,第三次调用 fun 函数时n的值等于6,每次调用 fun 函数时,保留上次调用时n的值不变。