文档章节

实现两个变量交换值

屈耕
 屈耕
发布于 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();
        }


© 著作权归作者所有

共有 人打赏支持
屈耕
粉丝 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

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Nginx防盗链、访问控制、解析php相关配置、Nginx代理

一、Nginx防盗链 1. 编辑虚拟主机配置文件 vim /usr/local/nginx/conf/vhost/test.com.conf 2. 在配置文件中添加如下的内容 { expires 7d; valid_referers none blocked server_names *.tes......

芬野de博客
今天
0
0
spring EL 和资源调用

资源调用 import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.PropertySource;import org.springframework.core.io.Resource;......

Canaan_
今天
0
0
memcached命令行、memcached数据导出和导入

一、memcached命令行 yum装telnet yum install telent 进入memcached telnet 127.0.0.1 11211 命令最后的2表示,两位字节,30表示过期时间(秒) 查看key1 get key1 删除:ctrl+删除键 二、m...

Zhouliang6
今天
0
0
Linux定时备份MySQL数据库

做项目有时候要备份数据库,手动备份太麻烦,所以找了一下定时备份数据库的方法 Linux里有一个 crontab 命令被用来提交和管理用户的需要周期性执行的任务,就像Windows里的定时任务一样,用这...

月夜中徘徊
今天
1
1
shell-日志脚本小实验

1.查找日志2018-8-15,求得那一分钟访问量最大。 #/bin/bash#from cc#2018-8-15#2018-08-15.log 哪一分钟 访问量 最大for d in `ls /data/nginx/logs/`doif [ -a 2018-08-15...

chencheng-linux
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部