c#两个数进行交换

1.使用中间变量的形式

csharp 复制代码
 private static void Main(string[] args)
        {
           int a1=10;
           int a2=20;
           ChangeNumber(ref a1,ref a2)
           onsole.WriteLine($"a1的值{a1},a2的值{a2}");
           Console.ReadLine();
        }
 public static void ChangeNumber(ref int a1, ref int a2)
        {
            int temp = a1;//temp=10
            a1 = a2;//a1=20
            a2 = temp;//a2=10
        }
//注意:使用ref参数修饰符,把值传递改为引用传递,从而改变外部变量的值

2.位运算(异或法)

csharp 复制代码
a与b异或两次,结果仍然是a:a==a^ b ^ b
a=a ^ b;
b=a ^b; (b=a ^ b ^ b=a)
a=a ^ b; (a= a^ b^ a=b)
相关推荐
sprite_雪碧13 小时前
排版类问题(机试高频)
c语言·数据结构·算法
暮冬-  Gentle°13 小时前
设计模式在C++中的实现
开发语言·c++·算法
2501_9083298513 小时前
实时音频处理C++实现
开发语言·c++·算法
dapeng287013 小时前
移动语义与完美转发详解
开发语言·c++·算法
bbbb36513 小时前
算法工程中的可扩展性与分布式实现方案的技术7
算法
Shining059613 小时前
AI 编译器系列(六)《Stable Diffusion 在 InfiniTensor 推理框架中的适配与工程实践》
人工智能·算法·stable diffusion·大模型·图像生成·ai编译器·infinitensor
佩奇大王13 小时前
P159 摆动序列
java·开发语言·算法
weixin_5375904513 小时前
《C程序设计语言》练习答案(练习1-7)
linux·c语言·算法
计算机学姐13 小时前
基于SpringBoot的网吧管理系统
java·spring boot·后端·spring·tomcat·intellij-idea·mybatis
Boop_wu13 小时前
[Java EE 进阶] SpringBoot 配置文件全解析:properties 与 yml 的使用(1)
java·spring boot·spring·java-ee