以下程序运行后的输出结果是______。 void fun(int x, int y) { x=x+y; y=x-y; x=x-y; printf("%d,%d,",x,y); } main ( )

admin2013-02-23  29

问题 以下程序运行后的输出结果是______。
    void fun(int x, int y)
    {
      x=x+y; y=x-y; x=x-y;
       printf("%d,%d,",x,y);
    }
   main ( )
    {
      int x=2,y=3;
      fun(x,y);
      printf("%d,%d\n",x,y);
   }

选项

答案3,2,2,3

解析 主函数中首先定义了整型变量x和y,并分别给它们赋初值为2和3,接着调用fun()函数,fun()函数把实参x和y的值传给形式参数x和y,实参和形参不再有联系.在fun()函数中通过运算使x和y的值交换过来,所以fun()函数中的输出结果是“3,2”。fun()函数调用返回输出x和y依旧是原来的x和y,为“2,3”原因是变量作为形参传值的,对形参的修改并不影响对应的实参。所以最后输出为3,2,2,3。
转载请注明原文地址:https://kaotiyun.com/show/2IJp777K
0

最新回复(0)