执行程序时,给变量x输入10,则以下程序的输出结果是( )。 int fun(int n) main() { if(n==1)return 1; { int x; else scan

admin2020-03-15  16

问题 执行程序时,给变量x输入10,则以下程序的输出结果是(  )。
int fun(int n)           main()
{  if(n==1)return 1;    {  int x;
else                      scanf(’’%dt’’,&x);x=fun(x);
return(n+fun(n—1));     prinff(’’%d\n’’,x);
}                         }

选项 A、45
B、50
C、60
D、55

答案D

解析 本题在函数int fun(int n)的定义中又出现了对函数fun的调用,所以函数fun是递归函数。因而在主函数中调用x=fun(x)时,当输入10赋给变量x时,递归调用的过程为fun(10)=10+fun(9)=10+9+fun(8)=10+9+8+fun(7)=…=10+9++8+7+6+5+4+3+2+1=55。
转载请注明原文地址:https://kaotiyun.com/show/VxCp777K
0

最新回复(0)