由於已經熟悉 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中文網其他相關文章!