A-A+
有以下程序 #include<iostream.h> int f(iht n) { if(n
问题详情
有以下程序 #include<iostream.h> int f(iht n) { if(n==1) return 1; else return f(n-1)+1;} void main() { iht i,j=0; for(i=1;i<3;i++)j+=f(i); cout < < j;} 程序运行后的输出结果是
A.4
B.3
C.2
D.1请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:B
解析:在main函数中,对f(1)和f(2)的值进行了累加。过程如下:f(1)=1f(2)=f(1)+l=2最后,j的值为1+2=3。注意:函数的递归调用需要有一个结束的条件。