王雯静王雯静 2021-06-14 13:10 采纳率: 50%
浏览 12
已采纳

答案是120 想知道解析,最好能详细一点

阅读程序,以下程序的输出结果是( )。

f(int b[],int n)

{ int i,r=1;

for(i=0;i<=n;i++)

r=r*b[i];

return r;

}

int main()

{ int x,a[]={2,3,4,5,6,7,8,9};

x=f(a,3);

printf(“%d\n”,x);

return 0;

}

  • 写回答

3条回答 默认 最新

  • technologist_30 2021-06-14 13:18
    关注

    f(a,3) 调用函数a数组传递给b数组,3传递给n,接着执行函数体进行循环

    i=0时 r = 1*b[0]  = 2 

    i=1时 r = 2*b[1] = 6

    i=2时 r = 2*b[2] = 24

    i=3时 r = 2*b[3] = 120

    循环结束 返回r 也就是120

    n的值为3,循环4次,每次取数组一个元素进行相乘,最终r = 2*3*4*5 

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?