【问题标题】:Using method add all numbers of the array使用方法添加数组的所有数字
【发布时间】:2014-05-23 12:08:39
【问题描述】:

我做得对吗?我正在尝试添加这个二维数组的每个数字并显示总数。我认为我在正确的轨道上,但是如果有人可以帮助我,我会被卡住,我非常感谢。

    int[,] A = new int[3, 4] 
    { 
        { 4, -5, 12, -2},
        { -9, 15, 19, 6},
        { 18, -33, -1, 7}
    };
      private void TotArray(int[,] array) 
      {
          int sum = 0;
          int rows = array.GetLength(0);
          int cols = array.GetLength(1);
          for (int i = 0; i < rows; i++)
          {
              for (int j = 0; j < cols; j++)
              {
                  sum += A[i, j];
              }
          }
       }
    private void button1_Click(object sender, EventArgs e)
    {

        TotArray(A);
    }

【问题讨论】:

  • 那有什么问题?
  • @MattBurland 问题是它什么都不显示

标签: c# arrays methods multidimensional-array


【解决方案1】:

如果要在最后显示总和:

int[,] A = new int[3, 4] 
{ 
    { 4, -5, 12, -2},
    { -9, 15, 19, 6},
    { 18, -33, -1, 7}
};
  private void TotArray(int[,] array) 
  {
      int sum = 0;
      int rows = array.GetLength(0);
      int cols = array.GetLength(1);
      for (int i = 0; i < rows; i++)
      {
          for (int j = 0; j < cols; j++)
          {
              sum += A[i, j];
          }
      }
      MessageBox.Show("The sum of the array is " + sum.ToString() + "."); //Show the sum
   }
private void button1_Click(object sender, EventArgs e)
{
    TotArray(A);
}

【讨论】:

  • 如果我这样做了,我会在 TotArray 收到一个错误,说它无法返回值
【解决方案2】:

您忽略了sum 变量,您应该从您的方法中返回它。除了您的方法看起来不错。另外请记住,您始终可以使用LINQ 进行此类操作:

var sum = A.OfType<int>().Sum();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-20
    • 2018-02-28
    • 2021-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-04
    相关资源
    最近更新 更多