下列程序的运行结果是( )。 #include<stdio.h> void sub(int*s,int*y) {static int m=4; *y=s[0]; m++; } void main() {

admin2011-06-10  30

问题 下列程序的运行结果是(    )。    #include<stdio.h>    void sub(int*s,int*y)    {static int m=4;    *y=s[0];    m++;    }    void main()    {int a[]={1,2,3,4,5},k;    int x;    printf("\n");    for(k=0;k<=4;k++)    {sub(a,&x);    printf("%d,",x);    }    }

选项 A、1,1,1,1,1,
B、1,2,3,4,5,
C、0,0,0,0,0,
D、4,4,4,4,4,

答案A

解析 本题中sub(int*s,int*y)函数的参数是两个指针型变量,在函数体内将数组s的第一个元素赋给y。主程序内,首先定义了一维数组并赋初值,然后通过for循环,5次调用sub(a,&x)函数,每一次调用都是将数组a的第一个元素1赋给x,并输出。
转载请注明原文地址:https://jikaoti.com/ti/FfB0FFFM
0

最新回复(0)