问题
单项选择题
下列程序的运行结果是( )。
#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,并输出。