sample1_7.cs

来自「C#的数值计算的几乎所有算法」· CS 代码 · 共 65 行

CS
65
字号
/*
 * 示例程序Sample1_7: 数组参数
 */

using System;

namespace CSharpAlgorithm.Sample
{
    class Sample1_7
    {
        /**
         * 交换a, b的值, 能成功
         */
        public static void swap(int[] a, int[] b)
        {
            int c = a[0];
            a[0] = b[0];
            b[0] = c;

            Console.WriteLine("\n在函数swap内a, b的值");
            Console.WriteLine("a = " + a[0]);
            Console.WriteLine("b = " + b[0]);
        }

        /**
         * 交换a, b的值, 不成功
         */
        public static void swap2(int[] a, int[] b)
        {
            int[] c = new int[1];
            c = a;
            a = b;
            b = c;

            Console.WriteLine("\n在函数swap2内a, b的值");
            Console.WriteLine("a = " + a[0]);
            Console.WriteLine("b = " + b[0]);
        }

        [STAThread]
        static void Main(string[] args)
        {
            int[] a = { 2 };
            int[] b = { 100 };
            Console.WriteLine("交换前a, b的值");
            Console.WriteLine("a = " + a[0]);
            Console.WriteLine("b = " + b[0]);

            // 试图交换a, b的值
            swap(a, b);

            Console.WriteLine("\n交换后a, b的值");
            Console.WriteLine("a = " + a[0]);
            Console.WriteLine("b = " + b[0]);

            // 试图交换a, b的值
            swap2(a, b);

            Console.WriteLine("\n交换后a, b的值");
            Console.WriteLine("a = " + a[0]);
            Console.WriteLine("b = " + b[0]);
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?