C#程序设计经典300例
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

实例016 将两个数的值交换——函数的使用及引用传递

【实例描述】

本实例主要介绍函数的声明和使用方法。实例从控制台输入两个整数,然后利用函数参数的引用传递来实现对两个整数的值进行交换,效果如图2-16所示。

图2-16 将两个数的值交换

【实现过程】

(1)创建一个名为Exchange的控制台应用程序。

(2)为Program类添加一个静态函数,用于对两个数的数值进行交换,代码如下:

    static void Exchange(ref int number1, ref int number2)
    {
        int temp = number2;                     //将第二个数存放到临时变量中
        number2 = number1;                      //将第一个数的值赋给第二个数
        number1 = temp;                         //将临时变量赋值给第一个数
    }

(3)输入两个整数并交换其值,在main函数中添加代码如下:

    Console.WriteLine("请输入第一个数:");
    int number1 = int.Parse(Console.ReadLine());
    Console.WriteLine("请输入第二个数:");
    int number2 = int.Parse(Console.ReadLine());
    Program.Exchangle(ref number1, ref number2);
    Console.WriteLine("将两个数进行交换...");
    Console.WriteLine("第一个数等于:{0} 第二个数等于:{1}", number1, number2);

【代码解析】

本实例代码主要利用函数的引用传递来实现对两个数的值进行交换。实例代码中定义了一个名为Exchange的函数,static表示该函数为静态函数,void表示该函数无返回值,其中number1和 number2 为函数的两个整数参数,参数前面的 ref 关键字表示该参数为值类型的引用传递。所谓引用传递,即将数值本身传递到函数体内,在函数中对该参数的修改会造成对数值本身的修改。

实例代码中,从控制台输入number1和number2两个整数,将两个整数作为Exchange函数的参数传入函数中,Exchange 函数对两个整数进行值的交换。调用完 Exchange 函数后,从控制台输出number1和number2,数值已发生交换。

注意:如果函数的参数是引用传递,在调用该函数时,必须在参数前加上ref关键字。