万能百科  > 计算机   > 

下列程序的输出结果是( )。void fun(int*X,int

2021-07-13   

问题:

[单选]

下列程序的输出结果是( )。

void fun(int*X,int y)

{ printf("%d%d",*x,*y);*x=3;*y=1;}

main()

{ int x=1,y=2;

fun(&y,&x);

printf("%d%d",x,y);

}

A . 2 1 4 3

B . 1 2 1 2

C . 1 2 3 4

D . 2 1 1 2

正确答案:

C

参考解析:

当执行fun函数时,因为参数传递时是地址传递,因此形参值的改变会影响实参中的数,在执行fun 函数时先输出1 2,接着把*X赋3,*y赋4,此时带回主函数中,输出的值为3 4。

词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。

标签