文档章节

实现两个变量交换值

屈耕
 屈耕
发布于 2015/06/17 10:39
字数 173
阅读 13
收藏 0
static void Main(string[] args)
        {
            int a = 10, b = 11;
            a = a + b;
            b = a - b;
            a = a - b;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }

第二种方法:

static void Main(string[] args)
        {
            int a = 10, b = 11;
            //a = a + b;
            //b = a - b;
            //a = a - b;
            a = a ^ b;
            b = a ^ b;
            a = a ^ b;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }

第三种:

 static void Main(string[] args)
        {
            int a = 10, b = 11;
            //a = a + b;
            //b = a - b;
            //a = a - b;

            //a = a ^ b;
            //b = a ^ b;
            //a = a ^ b;

            a = a * b;
            b = a / b;
            a = a / b;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }

其中第二种方式最优,位运算相对较快

还有一种就是借助第三方变量 实现 

static void Main(string[] args)
        {
            int a = 10, b = 11, temp;
            temp = a;
            a = b;
            b = temp;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }


© 著作权归作者所有

共有 人打赏支持
上一篇: Winform
下一篇: IT 电影
屈耕
粉丝 0
博文 9
码字总数 4801
作品 0
成都
高级程序员
私信 提问
Java中交换两个整数变量的值

本文发表在本人GItHub主页,请移步Java中交换两个整数变量的值 阅读原文。 需求 如下,我们定义了两个整数变量,并且分别进行了赋值,下面,我们需要实现的就是将x的值赋值给y,将y值赋值给x...

FunGa
2015/11/02
0
0
算法研究之不使用临时变量实现两个值的交换

变量值的交换经常在程序中使用,一般方法是使用一个临时变量,交换两个数的值,其实,不使用临时变量,依然可以实现这一功能。 1、常规交换方法 int a,b,temp;temp=a;a=b;b=temp;2、通过指针...

eclipse_xu
2012/12/14
0
0
异或交换变量

通常的交换两个变量a,b的过程为 int temp; temp=a a=b; b=temp; 需借助上面的第3个临时变量temp. 采用下面的方法,对于给定两个整数a,b,下面的异或运算可以实现a,b的交换,而无需借助第3个临...

李文良
2015/10/12
174
0
【C++的探索路2】内存空间,引用与函数

上节主要对C++结构化编程的基本架构进行了一个简单的梳理。本系列第二篇文章将对不同区域的内存空间存放什么东西,以及引用与函数进行相应简单的解释与练习。本文章主要是一些基础性概念问题...

u010369450
2017/10/19
0
0
三张图讲清楚Java中的方法的参数传递机制

一 Java中方法的参数传递机制介绍 Java中方法的参数传递机制只有一种:值传递。 二 应用举例 1 代码示例 Java代码 下载 class DataWrap { int a; int b; } public class ReferenceTransferT...

rfuhx7521
2016/09/26
1
0

没有更多内容

加载失败,请刷新页面

加载更多

Charles抓包简单使用

安装Charles, 注册https://blog.csdn.net/qq_25821067/article/details/79848589 打开代理,抓取全部流量 抓移动设备包 移动设备设置代理为当前电脑的Ip地址,端口8888,然后访问chls.pro/...

SuShine
1分钟前
0
0
Elasticsearch的简单操作

package com.dongpeng.es;import java.io.IOException;import java.util.Date;import java.util.HashMap;import java.util.Map;import java.util.concurrent.TimeUnit;impor......

魔法王者安琪拉
3分钟前
0
0
父亲写的散文诗

许飞的单曲《父亲写的散文诗》 一九八四年 庄稼还没收割完 女儿躺在我怀里 睡得那么甜 今晚的露天电影 没时间去看 妻子提醒我 修修缝纫机的踏板 明天我要去 邻居家再借点钱 孩子哭了一整天啊...

简心
4分钟前
0
1
浅谈格雷厄姆的《证券分析》

本杰明-格雷厄姆是价值投资的祖师爷,是巴菲特的师傅,我丝毫不敢对他不敬。他的两本书《证券分析》和《聪明的投资者》是每位做投资者必读的经典之书。 国内读者对《证券分析》作者格雷厄姆的...

酒逢知己千杯少
5分钟前
0
0
非原生app开发app

1.变色龙云,一门app 对域名打包 2.apicloud,wex5,自由平台提供的规则开发 3.react native ,Cordova 框架开发 4.Hbuild IDE打包

妖尾巴
6分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部