目录
交换 3 个数字
结论 - C# 中的交换
首页 后端开发 C#.Net教程 C# 中的交换

C# 中的交换

Sep 03, 2024 pm 03:34 PM
c# c# tutorial

由于已经熟悉 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 临时变量交换这些值。

输出:

C# 中的交换

  • 现在让我们看看,如何通过用户输入获取变量的值。

代码:

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 值。

输出:

C# 中的交换

尝试删除 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);
}
}
登录后复制

输出:

C# 中的交换

与上面相同,作为练习,您可以尝试使用用户输入的值交换两个变量而不使用第三个变量吗?

交换 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 个数字。为了清楚起见,我们在每个步骤之后保留了控制台输出语句,并为变量取了较小的值,以便我们可以更轻松地理解正在处理的实际数学计算。

输出:

C# 中的交换

  • 现在,我们应该尝试使用用户输入的值吗?

代码:

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);
}
}
登录后复制

我们可以在这里观察到的一件事是,逻辑总是相同的。我们只是采用动态值而不是硬编码值进行交换。

输出:

C# 中的交换

正如您所检查的,交换过程发生如下:

  • 将 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);
}
}
登录后复制

上述程序之间唯一的区别是突出显示的部分。

输出:

C# 中的交换

如上所述,交换的输出已更改为:

  • 将 x 值赋给 Z
  • 将 y 值赋给 X
  • 将 z 值赋给 Y

我们可以尝试用其他不同的方式交换三个数字。那么,作为练习,您可以尝试使用第四个临时变量交换 3 个变量吗?

结论 - C# 中的交换

在这里,我们使用 C# 编程语言成功地为两个变量和三个变量创建了不同的交换技术。祝学习 C# 愉快。

以上是C# 中的交换的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

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

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

使用 C# 的活动目录 使用 C# 的活动目录 Sep 03, 2024 pm 03:33 PM

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

C# 序列化 C# 序列化 Sep 03, 2024 pm 03:30 PM

C# 序列化指南。这里我们分别讨论C#序列化对象的介绍、步骤、工作原理和示例。

C# 中的随机数生成器 C# 中的随机数生成器 Sep 03, 2024 pm 03:34 PM

C# 随机数生成器指南。在这里,我们讨论随机数生成器的工作原理、伪随机数和安全数的概念。

C# 数据网格视图 C# 数据网格视图 Sep 03, 2024 pm 03:32 PM

C# 数据网格视图指南。在这里,我们讨论如何从 SQL 数据库或 Excel 文件加载和导出数据网格视图的示例。

C# 中的阶乘 C# 中的阶乘 Sep 03, 2024 pm 03:34 PM

C# 阶乘指南。这里我们讨论 C# 中阶乘的介绍以及不同的示例和代码实现。

C# 中的模式 C# 中的模式 Sep 03, 2024 pm 03:33 PM

C# 模式指南。在这里,我们讨论 C# 中模式的介绍和前 3 种类型,以及其示例和代码实现。

c#多线程和异步的区别 c#多线程和异步的区别 Apr 03, 2025 pm 02:57 PM

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

C# 中的质数 C# 中的质数 Sep 03, 2024 pm 03:35 PM

C# 素数指南。这里我们讨论c#中素数的介绍和示例以及代码实现。

See all articles