试题题干

参考答案
试题解析
static是静态变量,只初始化一次。输出f(10)的值,即int j中的j=10。
进行第一次循环时,j=1,符合j<=3,即输出f(10)的值,因为f(10)要返回第一个函数才能输出f(10)的值,因为k=0,即++k+j+i的值为12,变量j变为2;
进行第二次循环时,j=2,符合j<=3,即输出f(10)的值,返回第一个函数进行输出,k=1,即输出的值为++k+j+i=2+10+1=13,变量j变为3;
进行第三次循环时,j=3,符合j<=3,即输出f(10)的值,返回第一个函数进行输出,k=2,即输出的值为++k+j+i=3+10+1=14,变量j变为4;
进行第四次循环时,j=4,不符合j<=3,即结束循环,故输出的结果为12、13、14。