51Testing软件测试论坛

标题: 面试时候的一道题目? [打印本页]

作者: flysky1027    时间: 2007-5-21 12:57
标题: 面试时候的一道题目?
面试的时候遇到的一道题目,觉得很好玩,和大家一起分享一下,希望能得到更多的结果。

在不使用第三个变量的前提下,编写一个函数,使两个变量的值进行交换?

希望大家有不同的思路解决
作者: lonetan    时间: 2007-5-21 13:35
变量是什么类型的
如果是数值型的可以这样
function swith(int &a ,int &b)
{
b=a+b;
a=b-a;
b=b-a;
}
作者: wangzhen    时间: 2007-5-21 15:27
楼上所言即是
作者: kolecat    时间: 2007-5-21 15:42
今年很流行这个面试题么?怎么楼主也遇到了
作者: seifer1754    时间: 2007-5-21 21:29
采用位运算

void swap(int x, int y)
{
  x = x^y;
  y = x^y;
  x = x^y;
}
作者: apl137    时间: 2007-5-21 21:57
lonetan 正确
作者: Lovealice    时间: 2007-5-21 23:56
老题目了
作者: lovefei1027    时间: 2007-5-22 18:36
今年好像流行这个
作者: hbjfx    时间: 2007-5-22 19:11
a=a+b
b=a-b
a=a-b
作者: qiubole    时间: 2007-5-23 13:33
标题: 我来说两句
perl
(a, b)=(b,a)




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2