有以下程序: #include int sum(int*array,int len) { if(len==1) retum array[1]; else return array[1]+sum(arr

admin2016-04-07  20

问题 有以下程序:
    #include
    int sum(int*array,int len)
    {
    if(len==1)
    retum array[1];
    else
    return array[1]+sum(array+1,len一1);
    }
    main()
    {
    int array[5]={0,9,1,2},re$;
    res=sum(array,3);
    printf("%d\n",res);
    }
    程序运行后的输出结果是(    )。

选项 A、27
B、11
C、8
D、12

答案D

解析 main()函数先定义一个数组array,调用sum(array,3)函数,此时函数形参array指向数组首地址,形参len的值为3,在sum函数中,array[1]指向数组中的元素9,sum函数调用3次,完成的功能是将数组array[1]+array[2]+array[3]累加后返还给输出,累加后的值为12。因此,答案为D选项。
转载请注明原文地址:https://jikaoti.com/ti/AGi0FFFM
0

最新回复(0)