有以下程序: #include<stdio.h> int fun(int n) {int a; if(n==1)return 1; a=n+fun(n—1); return a; }

admin2019-02-02  30

问题 有以下程序:
    #include<stdio.h>
    int fun(int n)
    {int a;
      if(n==1)return 1;
      a=n+fun(n—1);
      return a;
    }
    main()
    {printf("%d\n",fun(5));}
    程序的输出结果是(    )。

选项 A、9
B、14
C、10
D、15

答案D

解析 考查函数的递归调用。只需要一步一步递归调用函数即可,执行fun(5)=5+(4+(3+(2+fun(1))))=15,故D选项正确。
转载请注明原文地址:https://kaotiyun.com/show/qoRp777K
0

最新回复(0)