选择题 40.  有下列程序:
    #include    <stdio.h>
    int b=2;
    int fun(int*k)
    {    b=*k+b;return(b);}
    void main()
    {    int a[10]={1,2,3,4,5,6,7,8},i;
        for(i=2;i<4;i++){b=fun(&a[i])+b;printf
        ("%d",b);)
        printf("\n");
    }
    程序运行后的输出结果是______。
【正确答案】 C
【答案解析】 在程序中子函数fun(int* k)的作用是给静态全局变量加上形参*k的值。在主函数中进行第一次for循环执行时,fun(&a[2l)的返回值为5,所以5+5=10,因而输出结果为10,第二次for循环执行时,fun(&a[3])的返回值为14,所以14+14=28。