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

admin2010-09-05  9

问题 以下程序运行后的输出结果是【  】。
   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

解析 函数fun的功能是交换形参x和y的值,因此函数fun中printf语句的输出为:3, 2, 。由于实参向形参的传递是单向的值传递,形参的改变并不影响实参,故在主函数中执行完fun(x, y)语句后,x和y的值仍然是2和3,所以主函数中printf语句的输出是2, 3。
转载请注明原文地址:https://kaotiyun.com/show/R7Wp777K
0

随机试题
最新回复(0)