A program that uses three methods to reverse and print an array I have this code that uses three methods to do certain tasks. One creates an array, another reverses it and the other one prints it out(it was required to use three methods). A person recommended me to upload my code here as there are a few things that need to be improved.
They said that I do not need to return arrays if I modify them in-place, and GenerateNum could allocate the array itself instead of requiring an array with the correct size to be passed. However as a beginner I didn't quite catch what they were trying to tell me to change in the code. Please help me.
using System;

class Program
{
    static void Main(string[] args)
    {
        string getnums = Console.ReadLine();
        int getnum = Convert.ToInt32(getnums);
        int[] array1 = new int[getnum];

        GenerateNum(getnum,array1);
        RevArray(array1);
        PrintArray(array1);
    }
    static int[] GenerateNum(int getnums, int[] arrayy)
    {

        for (int index = 0; index &lt; getnums; index++)
        {
            arrayy[index] = index;
        }
        return arrayy;
    }
    static int[] RevArray(int[] arrayy)
    {
        for (int index = 0; index &lt; (arrayy.Length)/2; index++)
        {
            int a = arrayy[index];
            arrayy[index] = arrayy[arrayy.Length - index-1];
            arrayy[arrayy.Length-index-1] = a;
        }
        return arrayy;
    }
    static void PrintArray(int[] arrayy)
    {
        Console.WriteLine(string.Join(&quot;,&quot;,arrayy));
    }
}
Let's review your code line by line
string getnums = Console.ReadLine();


The name getnums is not really a good name for a string variable. When you name a variable please try to use noun(s) (w/o adjective). Methods should start with verbs.

int getnum = Convert.ToInt32(getnums);


This is quite error-prone. What if the user types three? Your application will crash with a FormatException.
Please prefer int.TryParse and remember that all input is evil (until proven otherwise).

int[] array1 = new int[getnum];


Yet again array1 is not really a good name. Someone who reads your code will not know what was your intent with this variable. Try to write code that is understandable for others as well.
This is quite error-prone again, because getnum can contain negative number. The array allocation attempt might result in a OverflowException.
Consider to use ArrayPool if you try to allocate an quite big array.

static int[] GenerateNum(int getnums, int[] arrayy)


The arrayy is really a bad name here, you are using Hungarian notation which should be avoided.
You don't need to pass getnums because you can get the Length of the array.
With the current implementation the PopulateArray might be a better name.
Depending on your design the responsibility to allocate memory can be moved over here as well.

for (int index = 0; index &lt; getnums; index++)


Feel free to use array.Length instead of getnums

arrayy[index] = index;


If you design your application in the way that this method should allocate the memory as well then you could rewrite this whole method with the following command:
return Enumerable.Range(0, getnums).ToArray();

int[] RevArray(int[] arrayy)


As it was stated by others as well abbreviation does not add anything here. On the contrary it might make confusion because it could mean other things as well not just reserve, like reveal, revive, review, revisit, etc...

for (int index = 0; index &lt; (arrayy.Length)/2; index++)


The Array class defines a Reverse method, which can do the whole in-place replacement on your behalf without reinventing the wheel.
Here you are using the Length property which is good. I suspect that this code is based on this SO answer. I strongly encourage you to add there a comment where you mention the source of your code.