生成随机多维数组的函数

时间:2019-01-14 19:10:40

标签: c#

我正在创建一个函数来为多维数组生成随机值,但出现错误“方法必须具有返回类型”和“;预期”。 这是我的代码:

public static Double[,] X Generate_random()
{
    Random rnd = new Random();
    X = new Double[3, 3];

    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 3; j++)
        {
            X[i, j] = rnd.Next(0, 10);
        }
    }
}

2 个答案:

答案 0 :(得分:1)

我认为您打算像这样编写代码

 public static Double[,] Gerar_Aleatorio() { 
    Random rnd = new Random();              
    Double [,] x;
    x = new Double[3, 3]; 
    for (int i = 0; i < 3; i++) {
          for (int j = 0; j < 3; j++) {
              x[i, j] = rnd.Next(0, 10); 
           } 
     } 
    return x;
 }

答案 1 :(得分:0)

当声明方法的返回类型(在这种情况下为Double[,])时,需要确保通过该方法的所有路径最终都将返回该类型的实例。这可以通过return语句完成,您只需将其放在方法的末尾即可:

return X;

但是,您永远不会显式声明X是什么类型。定义变量时,必须执行:[Type] [VariableName],此外,您可以在同一行上进行赋值(就像对Random所做的那样)。因此,您的X定义应类似于:

Double[,] X = new Double[3, 3];

此外,您在签名中有一个错字(我假设),其中在类型声明旁边的签名中有一个X。应该将其删除,因此您的签名看起来像:

public static Double[,] Generate_random()

放在一起,您将拥有:

public static Double[,] Generate_random()
{
    Random rnd = new Random();
    Double[,] X = new Double[3, 3];

    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 3; j++)
        {
            X[i, j] = rnd.Next(0, 10);
        }
    }

    return X;
}