由于已经熟悉 C#(发音为 C Sharp 编程语言),我们可以直接了解 C# 中的 Swapping。 “交换”一词与英语词典中的单词具有相同的含义。这都是关于价值观的交换。让我们了解如何使用 C# 来实现此技术。
在两个不同变量之间交换值时,我们可以通过两种方式来实现。第一种方法是使用第三个变量(也称为临时变量),第二种方法是不使用任何其他变量。
让我们看看下面如何使用第三个变量。
代码:
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); } }
输出:
与上面相同,作为练习,您可以尝试使用用户输入的值交换两个变量而不使用第三个变量吗?
代码:
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); } }
我们可以在这里观察到的一件事是,逻辑总是相同的。我们只是采用动态值而不是硬编码值进行交换。
输出:
正如您所检查的,交换过程发生如下:
完美吧?那么,我们可以尝试用其他方式来赋值吗?当然可以。
代码:
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); } }
上述程序之间唯一的区别是突出显示的部分。
输出:
如上所述,交换的输出已更改为:
我们可以尝试用其他不同的方式交换三个数字。那么,作为练习,您可以尝试使用第四个临时变量交换 3 个变量吗?
在这里,我们使用 C# 编程语言成功地为两个变量和三个变量创建了不同的交换技术。祝学习 C# 愉快。
以上是C# 中的交换的详细内容。更多信息请关注PHP中文网其他相关文章!