A-A+

下列程序的运行结果是()。 #include void fun(int*S

2022-08-05 22:58:03 问答库 阅读 173 次

问题详情

下列程序的运行结果是()。 #include<stdio.h> void fun(int*S,int*p) { static int t=3: *p=s[t]; t--; } void main { int a[]={2,3,4,5),k; int x; for(k=0,k<4,k++) { fun(a,&x); printf("%d,",x); } }
A.5,4,3,2
B.2,3,4,5
C.2,2,2,2
D.5,5,5,5请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:A
依据fun函数,可知其要实现的功能是将S中第(t+1)个元素以前的元素逆置赋给数组P。由于fun中函数定义了静态变量t=3,因此,main函数中调用函数fun(a,&x)时,就是要将数组a中前4个元素逆置赋给数x,最后输出x数组。

考点:程序