21xrx.com
2024-12-23 02:40:46 Monday
登录
文章检索 我的文章 写文章
C语言二维数组初值设置方法
2023-06-16 11:07:53 深夜i     --     --
C语言 二维数组 初值设置 循环语句 指针 二维数组视为一维数组

在C语言中,给一个一维数组赋初值非常容易,可以在定义数组时简单地在花括号里输入初始值就可以了。但是,如果想给一个二维数组赋初值,就有些麻烦了。那么怎么给二维数组赋初值呢?本文将介绍多种方法来实现这一目的。

方法一:使用循环语句

我们可以使用两个嵌套的循环语句来遍历整个数组,并将每个元素的初值设置好。看下面这个例子:


#include

int main()

{

  int data[3][4] = {0}; // 将所有元素的初值设置为零

  for (int i = 0; i < 3; i++)

  {

    for (int j = 0; j < 4; j++)

    {

      data[i][j] = i + j;

    }

  }

  // 输出数组的所有元素

  for (int i = 0; i < 3; i++)

  {

    for (int j = 0; j < 4; j++)

    {

      printf("%d ", data[i][j]);

    }

    printf("\n");

  }

  return 0;

}

在上面的示例中,我们首先将整个数组的所有元素初值设置为零。接着,我们使用两个嵌套的 for 循环语句来遍历整个数组。在内层循环中,将每个元素的初值设置为其所在的行数和列数之和。最后,我们输出整个数组的所有元素。

方法二:使用指针

我们也可以使用指向二维数组的指针来给二维数组赋初值。看下面这个例子:


#include

int main()

{

  int data[3][4] = {0}; // 将所有元素的初值设置为零

  int (*p)[4] = data;  // 定义指向二维数组 data 的指针变量

  for (int i = 0; i < 3; i++)

  {

    for (int j = 0; j < 4; j++)

    {

      *(*p + 4 * i + j) = i + j;

    }

  }

  // 输出数组的所有元素

  for (int i = 0; i < 3; i++)

  {

    for (int j = 0; j < 4; j++)

    {

      printf("%d ", data[i][j]);

    }

    printf("\n");

  }

  return 0;

}

在上面的示例中,我们先将整个数组的所有元素初值设置为零。接着,我们定义了一个指向二维数组 data 的指针变量 p ,然后可以通过指针的运算来给数组元素赋值。在内层循环中,我们可以将二维数组视为一个一维数组来进行计算,计算出该元素在一维数组中的下标,然后使用指针运算来给该元素赋值。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复