Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将一个数组中的值重写为第二个数组,每个数组中的两个字母都被翻转?(C)_C#_Arrays_Loops - Fatal编程技术网

C# 如何将一个数组中的值重写为第二个数组,每个数组中的两个字母都被翻转?(C)

C# 如何将一个数组中的值重写为第二个数组,每个数组中的两个字母都被翻转?(C),c#,arrays,loops,C#,Arrays,Loops,这是一个家庭作业,我已经做了很长时间了,但还没有弄清楚。如果你需要的话,这里有我老师的确切指示;我被困在第五号: 1让用户输入他们想要编码的句子。 2如果消息中的字符数为奇数,请将空格连接到它们的消息,以便我们的消息始终为偶数个字母。 3现在创建一个新的char[],将其称为unCoded,其中每个元素都是来自您的秘密消息的字母。 4现在创建一个空的第二个字符[],将其称为已编码,并定义其长度等于另一个未编码字符[]的长度。 5现在将未编码数组中的值写入编码数组,但每翻转2个字母。 6然后写出原

这是一个家庭作业,我已经做了很长时间了,但还没有弄清楚。如果你需要的话,这里有我老师的确切指示;我被困在第五号:

1让用户输入他们想要编码的句子。 2如果消息中的字符数为奇数,请将空格连接到它们的消息,以便我们的消息始终为偶数个字母。 3现在创建一个新的char[],将其称为unCoded,其中每个元素都是来自您的秘密消息的字母。 4现在创建一个空的第二个字符[],将其称为已编码,并定义其长度等于另一个未编码字符[]的长度。 5现在将未编码数组中的值写入编码数组,但每翻转2个字母。 6然后写出原始的未编码信息。 7然后写出新的编码信息

他还说,第五步必须在一个循环中完成

任何帮助都将不胜感激,谢谢

到目前为止,我所拥有的:

static void Main(string[] args)
    {

        Console.WriteLine("Enter the sentence you want encoded: ");
        string userInput = Console.ReadLine();
        int remainder = userInput.Length % 2;

        if (remainder!=0)
        {
            userInput = userInput + " ";
        }
        char[] unCoded = userInput.ToArray();
        char[] coded=unCoded;
        //coded.Length = unCoded.Length;
        for (int i = 0; i < unCoded.Length; i=i+2)
        {
            coded[0] = unCoded[1];
            coded[1] = unCoded[0];
        }
        string encoded = new string(coded);
        Console.WriteLine("{0}", userInput);
        Console.WriteLine("{0}", encoded);
        Console.ReadKey();

    }

在循环中不使用循环参数,所以只需将前两个值更改几次。考虑你在你的循环中做什么,作为你真正想要达到的第一步。使用i变量并知道它的第一个值是0。然后,当我增长时,循环将对接下来的两个值执行相同的操作

所以只要把i放在0的位置,把i+1放在1的位置


所以。。。到目前为止你有什么?它做了什么你没有预料到的事?所以你在对中翻转一个,编码的[0]被分配给未编码的[1]。我相信您可以认识到,下一步要做的事情是将编码[1]分配给未编码[0]。想一想你如何解决这样一个事实:你现在已经把数组索引硬编码了。是的,但是我怎么能让代码对每个字母都这样做,而不管用户输入的长度如何?你已经知道我在闲逛……: