以下程序的输出是【 】。 #include<iostream> using namespace std; fun(intm) { static int n=1; n=m*n; return

admin2009-01-15  28

问题 以下程序的输出是【  】。
   #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

解析 局部静态变量在离开作用域之后,并没有被销毁,而是仍然驻留在内存当中,直到程序结束。第一次调用 fun 函数时n的值等于1,第二次调用 fun 函数时n的值等于2,第三次调用 fun 函数时n的值等于6,每次调用 fun 函数时,保留上次调用时n的值不变。
转载请注明原文地址:https://jikaoti.com/ti/ZQd0FFFM
0

最新回复(0)