class Program {
static void Main(string[] args) {
string getnums = Console.ReadLine();
int getnum=Convert.ToInt32(getnums);
int[] array1=new int[getnum];
GenerateNum(getnum);
RevArray();
PrintArray();
}
static int[] GenerateNum(int g){
for(int index=0; index<g; index++){
array1[index]=index;
}
return array1;
}
static int[] RevArray(){
for(int index=0; index<=getnum/2; index++){
int a=array1[index];
array1[index]=array1[getnum];
array1[getnum]=a;
}
return array1;
}
static void PrintArray(){
Console.WriteLine(array1);
}
}
你好 我正在尝试使用三种方法编写程序,并且每种方法都执行一个操作。 GenerateNum()
以 getnum
参数为单位,并创建一个数字,该数字最多为getnum。 RevArray()
反转数组并 PrintArray()
打印出来。但是我收到错误消息。它们都是名称, 'array1'
并且名称 'getnum'
在当前上下文中不存在。我已经在 Main
方法中定义了它们,为什么它不起作用?请帮我。提前致谢!
我已经在Main方法中定义了它们
在某些方法A
中定义的变量仅适用于该方法。如果要以其他方式使用它们,则需要
后者通常是更可取的(请参阅,例如,全局变量是否不好?)。
例如,GenerateNum
可以定义为
static int[] GenerateNum(int g, int[] array1) { ... }
并称为
GenerateNum(getnum, array1);
代码中还有很多其他可以改进的地方(例如,如果就地修改它们,则无需返回数组,GenerateNum可以分配数组本身,而不是要求使用正确大小的数组通过),因此您可能希望在代码运行后将其提交到https://codereview.stackexchange.com。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句