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

admin2020-10-26  17

问题 有以下程序
#include <stdio.h>
int fun(int  n)
{
    if(n==1)
        return  1;
    else
        return(n+fun(n-1));
}
main()
{
    int  x;
    scanf("%d",&x);
    x=fun(x);
    printf("%d\n",x);
}
执行程序时,给变量x输入10,程序的输出结果是

选项 A、55
B、54
C、65
D、45

答案A

解析 该程序考察的是函数的递归调用,在调用一个函数的过程中又出现直接或间接地调用该函数本身,称为函数的递归调用,执行结果为1+2+3+…+8+9+10=55。因此A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/Fx3p777K
0

最新回复(0)