问题
单项选择题
有如下程序: #include <iostream> using namespace std; int getSum(int num); int main () {int i;for (i=1; i<4; i++) cout<<getSum(i);return 0; } int getSum(int hum) {static int sum=O;sum+=num;return sum; } 上述程序执行后的输出结果是( )。
A.136
B.248
C.123
D.135
答案
参考答案:A
解析: 在函数getSum()中,局部变量sum被声明为static,并且初始化为0。该程序使用getSum()函数计算并报告当前计算所得结果。由于sum是static变量,因此它在函数调用过程中始终保持其值,即使函数调用结束,其空间也不会被释放,下次再调用时,上次运行结果仍然保留。