将for循环的结果存储到数组中并将其复原?

时间:2015-08-29 02:18:27

标签: c# console-application

我想将for循环的结果存储在一个数组中然后反转它。 例: 当我运行程序并输入5时,答案将是

  

54321

我希望它是

  

12345

int num;
int index = 0;
Console.Write("Number: ");
num = int.Parse(Console.ReadLine());
for (int x = num; x > 0; x--)
{
    index = Convert.ToInt32(index + x);
    Console.Write(x);
}
Console.WriteLine("\nThe sum is: {0}", index);
Console.ReadLine();

3 个答案:

答案 0 :(得分:0)

这个怎么样?

Console.Write("Number: ");
var num = int.Parse(Console.ReadLine());   // parse console input
var range = Enumerable.Range(1, num);   //generate array of values from 1 to num
var str = String.Concat(range.Select(x => x.ToString()));   //concatenate array of values
Console.WriteLine(str);     // write string
var sum = range.Sum(); // get sum of array
Console.WriteLine("\nThe sum is: {0}", sum);   // write sum
Console.ReadLine();   // pause

答案 1 :(得分:0)

试试这个

自动增加到总长度

使用此

$("#card").hover(onHover, onOut);

要从用户那里获取每个号码,请尝试此

Console.WriteLine("Input length");
int length;
if (!int.TryParse(Console.ReadLine(), out length))
{
    Console.WriteLine("Invalid number");
}
else
{
    int[] array = new int[length];
    for (int i = length; i > 0; i--)
    {
        array[length - i] = i;
    }
    Console.WriteLine("Array is");
    foreach (var i in array)
    {
        Console.WriteLine(i);
    }
    Console.WriteLine("Reverse Array is");
    foreach (var i in array.Reverse())
    {
        Console.WriteLine(i);
    }
}
Console.ReadKey();

答案 2 :(得分:0)

好的,这些回复都没有真正按照你的要求行事,但我说你的例子确实是误导。

试试这个:

public int[] ArrayAndReverse(int Number)
{

    int[] data = new int[Number];
    int index = 
    for (int x = Number; x > 0; x--)
    {
        index = Convert.ToInt32(index + x);
        Console.Write(x);
    }
    return data.Reverse().ToArray();

}

现在您可以在控制台代码中执行以下操作:

Console.Write("Number: ");
num = int.Parse(Console.ReadLine());
int[] data = ArrayAndReverse(number);
foreach(int i in data)
    Console.Write(i);

另外,不确定为什么你的循环已经被逆转了,我想我说这个例子真的很误导,否则你可以使用:

int[] data = Enum.Range(1, number).ToArray();

这将以正确的顺序为您提供数组。