C# 中的交换
由于已经熟悉 C#(发音为 C Sharp 编程语言),我们可以直接了解 C# 中的 Swapping。 “交换”一词与英语词典中的单词具有相同的含义。这都是关于价值观的交换。让我们了解如何使用 C# 来实现此技术。
交换 2 个数字
在两个不同变量之间交换值时,我们可以通过两种方式来实现。第一种方法是使用第三个变量(也称为临时变量),第二种方法是不使用任何其他变量。
让我们看看下面如何使用第三个变量。
代码:
using System; class First { static void Main() { int a=75,b=84,t; t=a; a=b; b=t; Console.WriteLine("Values after swapping:"); Console.WriteLine("a is :"+a); Console.WriteLine("b is :"+b); } }
在上面的简单程序中,我们采用了两个整数值并使用 3rd 临时变量交换这些值。
输出:
- 现在让我们看看,如何通过用户输入获取变量的值。
代码:
using System; class First { static void Main() { string a,b; int temp,c,d; Console.Write("Enter value for a :"); a = Console.ReadLine(); c = Convert.ToInt32(a); Console.WriteLine("A's value is {0}", c); Console.Write("Enter value for b : "); b = Console.ReadLine(); d = Convert.ToInt32(b); Console.WriteLine("B's value is {0}", d); temp=c; c=d; d=temp; Console.WriteLine("Values after swapping are:"); Console.WriteLine("a is : "+c); Console.WriteLine("b is : "+d); } }
在这里,我们使用 ReadLine 方法来读取用户输入值。然后我们将该值转换为整数,否则它将读取为 ASCII 值。
输出:
尝试删除 ToInt32 函数并检查程序的行为。
- 现在让我们看看通过第二种方法交换两个值而不使用第三个变量:
代码:
using System; class First { static void Main() { int a=85,b=58; a=a+b; b=a-b; a=a-b; Console.WriteLine("Values after swapping :"); Console.WriteLine("a is "+a); Console.WriteLine("b is "+b); } }
输出:
与上面相同,作为练习,您可以尝试使用用户输入的值交换两个变量而不使用第三个变量吗?
交换 3 个数字
- 成功执行2个号码的交换后,现在让我们继续交换3个号码。
代码:
using System; class First { static void Main() { int a=4,b=5,c=6; //swapping a=a+b+c; Console.WriteLine("After First step A value is "+a); b=a-(b+c); Console.WriteLine("After Second step B value is "+b); c=a-(b+c); Console.WriteLine("After Third step C value is "+c); a=a-(b+c); Console.WriteLine("After Fourth step A value is "+a); Console.WriteLine("Values after swapping are:"); Console.WriteLine("a is "+a); Console.WriteLine("b is "+b); Console.WriteLine("c is "+c); } }
由于我们已经了解了如何在不使用第三个变量的情况下交换数字的技术,因此我们使用相同的方法来交换 3 个数字。为了清楚起见,我们在每个步骤之后保留了控制台输出语句,并为变量取了较小的值,以便我们可以更轻松地理解正在处理的实际数学计算。
输出:
- 现在,我们应该尝试使用用户输入的值吗?
代码:
using System; clas1s First { static void Main() { string a,b,c; int x,y,z; Console.Write("Enter value for x :"); a = Console.ReadLine(); x = Convert.ToInt32(a); Console.WriteLine("X's value is {0}", x); Console.Write("Enter value for y : "); b = Console.ReadLine(); y = Convert.ToInt32(b); Console.WriteLine("Y's value is {0}", y); Console.Write("Enter value for z : "); c = Console.ReadLine(); z = Convert.ToInt32(c); Console.WriteLine("Z's value is {0}", z); x=x+y+z; Console.WriteLine("After Fourth step X value is "+x); y=x-(y+z); Console.WriteLine("After Second step Y value is "+y); z=x-(y+z); Console.WriteLine("After Third step Z value is "+z); x=x-(y+z); Console.WriteLine("After Fourth step X value is "+x); Console.WriteLine("Values after swapping are:"); Console.WriteLine("X is : "+x); Console.WriteLine("Y is : "+y); Console.WriteLine("Z is : "+z); } }
我们可以在这里观察到的一件事是,逻辑总是相同的。我们只是采用动态值而不是硬编码值进行交换。
输出:
正如您所检查的,交换过程发生如下:
- 将 x 值赋予 Y
- 将 y 值赋予 Z
- 将 z 值赋予 X
完美吧?那么,我们可以尝试用其他方式来赋值吗?当然可以。
- 非常非常简单,我们只需要依次分配 Y 和 Z 值或 Y 值来求和,然后元素的顺序就可以改变了。下面我们就来看看吧。
代码:
width="638">using System; class First { static void Main() { string a,b,c; int x,y,z; Console.Write("Enter value for x :"); a = Console.ReadLine(); x = Convert.ToInt32(a); Console.WriteLine("X's value is {0}", x); Console.Write("Enter value for y : "); b = Console.ReadLine(); y = Convert.ToInt32(b); Console.WriteLine("Y's value is {0}", y); Console.Write("Enter value for z : "); c = Console.ReadLine(); z = Convert.ToInt32(c); Console.WriteLine("Z's value is {0}", z); x=x+y+z; Console.WriteLine("After Fourth step X value is "+x); z=x-(y+z); Console.WriteLine("After Second step Z value is "+z); y=x-(y+z); Console.WriteLine("After Third step Y value is "+y); x=x-(y+z); Console.WriteLine("After Fourth step X value is "+x); Console.WriteLine("Values after swapping are:"); Console.WriteLine("X is : "+x); Console.WriteLine("Y is : "+y); Console.WriteLine("Z is : "+z); } }
上述程序之间唯一的区别是突出显示的部分。
输出:
如上所述,交换的输出已更改为:
- 将 x 值赋给 Z
- 将 y 值赋给 X
- 将 z 值赋给 Y
我们可以尝试用其他不同的方式交换三个数字。那么,作为练习,您可以尝试使用第四个临时变量交换 3 个变量吗?
结论 - C# 中的交换
在这里,我们使用 C# 编程语言成功地为两个变量和三个变量创建了不同的交换技术。祝学习 C# 愉快。
以上是C# 中的交换的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

使用 C# 的 Active Directory 指南。在这里,我们讨论 Active Directory 在 C# 中的介绍和工作原理以及语法和示例。

多线程和异步的区别在于,多线程同时执行多个线程,而异步在不阻塞当前线程的情况下执行操作。多线程用于计算密集型任务,而异步用于用户交互操作。多线程的优势是提高计算性能,异步的优势是不阻塞 UI 线程。选择多线程还是异步取决于任务性质:计算密集型任务使用多线程,与外部资源交互且需要保持 UI 响应的任务使用异步。
