问题 单项选择题

有以下程序
  #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)=1
  f (2)=f (1)+l=2
  最后,j的值为1+2=3。
【考点链接】函数的递归调用需要有一个结束的条件。

单项选择题
单项选择题