所以我有一个创建随机数的数组,我想将数字除以10。因此,如果数字是45,我想在彼此下得到6个“ p”,在彼此下得到4个星号(我们将此整体称为一列)。然后,我也希望使用下一个数字,但是我希望这些列彼此相邻而不是在下方。如果看到图片,将会更容易理解。
这就是我得到的:https://gyazo.com/6e4fcf301784e0c385b9ce0d9c938b6a
这就是我想要的(这里有空格而不是'p':https://gyazo.com/778027ad74a2a3d2065348def8f431cd

这是我的代码:

    static void Main(string[] args)
    {
        int[] a = RandomFill(10);
        Print(a);

        int asd = 0;

        for (int i = 0; i <= a.Length-1; i++)
        {
            asd = a[i] / 10;

            for (int j = 0; j <= 10 - asd; j++)
            {
                Console.WriteLine("p");
            }
            for (int k = 0; k < asd; k++)
            {
                Console.WriteLine("*" + " ");
            }
            Console.WriteLine();
        }
        Console.ReadLine();


    }

    static int[] RandomFill(int Length)
    {
        Random rd = new Random();

        int[] array = new int[Length];
        for (int i = 0; i < array.Length; i++)
        {
            array[i] = rd.Next(0, 100);
        }
        return array;
    }

    static void Print(int[] a)
    {
        Console.WriteLine();
        foreach( int element in a)
        {
            Console.Write(element + " ");
        }
    }

最佳答案

似乎有效...

for (int j = 0; j < 10; j++)
            {
                string line = "";
                for (int i = 0; i <= a.Length - 1; i++)
                {
                    if (a[i] >= 10 * (10 - j))
                    {
                        line = line+"*";
                    }
                    else
                    {
                        line = line+"p";
                    }
                }
                Console.WriteLine(line);
            }

09-25 22:10