c语言有关二维数组变量初始化

如题所述

例如对整型二维数组a[3][2]赋值
方法一:
在定义的同时赋值
int a[3][2]={0};//所有数组元素均为0

方法二:
int a[3][2]={1,2,3,4,5,6};//常规的赋值方法

方法三:
int a[3][2]={{1,2},{3,4},{5,6}};//分行的赋值方法

方法四:
int a[3][2]={{1,2},{0},{3}};//部分赋值方法,第一行元素的值分别为1,2,第二行元素值都是0,
第三行第一个元素值为3,第二个元素值为0

方法五:
int a[3][2];/先定义
for(i=0;i<=3;i++) //用双重for循环赋值,i,j表示二维数组下标
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);

希望对你有所帮助。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-06-26

二维数组可以看成特殊的一维数组,每个元素又由一个一维数组组成。

例如:构建一个maxrownum*maxrownum的矩阵

long double **data1_bfE;

data1_bfE=(long double **)malloc(maxrownum*sizeof(long double *));

for(i=0;i<maxrownum;i++)

{

data1_bfE[i]=(long double *)malloc(maxrownum*sizeof(*data1_bfE));

}

data1_bfE[i]=(long double *)malloc(maxrownum*sizeof(*data1_bfE));

动态分配maxrownum个long double的内存空间,跟long double a[5]相似,但前者是堆上分配的,后者是栈上分配的;

data1_bfE=(long double **)malloc(maxrownum*sizeof(long double *));

意思就是定义一个有maxrownum个long double类型的指针的动态数组,然后在里面存放指针,相当于容器,data1_bfE就会成为指针的指针。

注意事项:C语言在定义数组和表示数组元素时常常采用a[ ][ ]的形式,使用方便,不易出错。

本回答被网友采纳
第2个回答  2019-12-21
例如对整型二维数组a[3][2]赋值
方法一:
在定义的同时赋值
int a[3][2]={0};//所有数组元素均为0

方法二:
int a[3][2]={1,2,3,4,5,6};//常规的赋值方法

方法三:
int a[3][2]={{1,2},{3,4},{5,6}};//分行的赋值方法

方法四:
int a[3][2]={{1,2},{0},{3}};//部分赋值方法,第一行元素的值分别为1,2,第二行元素值都是0,
第三行第一个元素值为3,第二个元素值为0

方法五:
int a[3][2];/先定义
for(i=0;i<=3;i++) //用双重for循环赋值,i,j表示二维数组下标
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);
第3个回答  2019-11-08
例如对整型二维数组a[3][2]赋值
方法一:
在定义的同时赋值
int a[3][2]={0};//所有数组元素均为0

方法二:
int a[3][2]={1,2,3,4,5,6};//常规的赋值方法

方法三:
int a[3][2]={{1,2},{3,4},{5,6}};//分行的赋值方法

方法四:
int a[3][2]={{1,2},{0},{3}};//部分赋值方法,第一行元素的值分别为1,2,第二行元素值都是0,
第三行第一个元素值为3,第二个元素值为0

方法五:
int a[3][2];/先定义
for(i=0;i<=3;i++) //用双重for循环赋值,i,j表示二维数组下标
for(j=0;j<=2;j++)
scanf("%d",&a[i][j]);
方法六:
int[][2]={1,2,3,4,5,6};//注意前面那个可以是空的。
方法七:
int a[3][2];/先定义
scanf("%s",a);
第4个回答  2019-12-21
方法一: 在定义的同时赋值 int a[3][2]={0};//所有数组元素均为0 方法二: int a[3][2]={1,2,3,4,5,6};//常规的赋值方法 方法三: int a[3][2]={{1,2},{3,4},{5,6}};//分行的赋值方法

c语言编程如何实现二维数组的创建和初始化?
在 C 语言中,实现二维数组的创建和初始化通常通过使用数组的数组来完成。例如,创建一个 3x3 的二维数组并初始化所有元素为 0 的代码如下所示:在这个示例中,两组花括号被用来表示一个二维数组,每组花括号包含一个一维数组。例如,{0, 0, 0} 表示第一行的三个元素,{0, 0, 0} 表示第二行...

c语言有关二维数组变量初始化
int a[3][2];\/先定义 for(i=0;i<=3;i++) \/\/用双重for循环赋值,i,j表示二维数组下标 for(j=0;j<=2;j++)scanf("%d",&a[i][j]);希望对你有所帮助。

C语言|二维数组的定义、初始化、赋值
在C语言中,二维数组是按行排列的。也就是说,先存放a[0]行,然后是a[1]行,最后是a[2]行;每行中的4个元素也是依次存放。数组a为int类型,每个元素占用4个字节,整个数组共占用4×(3×4)=48个字节。可以这样认为,二维数组是由多个长度相同的一维数组构成的。【实例1】一个学习小组有5个人...

c语言二维数组初始化的三种方式
c语言二维数组初始化的三种方式 int a[3][3]={1,2,3,4,5,6,7,8,9};int a[3][3]={{1,2,3},{4,5},{7}};int a[3][3]={0};

如何用c语言实现二维数组?
使用 C 语言实现二维数组可以通过以下步骤:1. 声明一个二维数组变量:首先,需要声明一个二维数组变量来存储数据。声明二维数组需要指定数组的行数和列数,并可以给数组命名。2. 初始化二维数组:可以选择在声明二维数组时初始化,或者在后续的代码中初始化数组。可以使用循环结构来遍历数组的每个元素,并...

c语言二维数组如何初始化
1 有两种方法 (1)在定义时可以直接赋值来初始化 (2)在定义后可以为其元素一个个来赋值 2 示例 include<stdio.h>void display(int arr[2][3], int row, int col){for (int i = 0; i < row; i++){for (int j = 0; j < col; j++){printf("%d ", arr[i][j]);}puts("...

C语言 指针二维数组怎么初始化
1、数组指针初始化方法:int (*p)[4];char a[3][4];p=a;p=&a[0];p=a+1;p=&a[1]; \/\/都正确 p=a[0]; \/\/错误 p=a[1]; \/\/错误。2、首先,指针p表示的是,指向一个含有4个元素的一维数组的指针,因此,必须把一个含有4个元数的数组的地址赋给指针p才会正确。因为二维数组...

c语言 怎么把一个二维数组初始化为空
int 表示要填充的值,最后的unsigned表示填充的字节数。例如:include<string.h> void main(){ int a[10][20]={0}; \/\/方法一,所有初始化为0 int *p[10][20]={NULL};char c[10][20]={'\\0'};double b[50][200]};memset(b,0,sizeof(b)); \/\/方法二,所有初始化为0 } ...

C语言:定义一个5行5列的二维数组,并初始化所有值(可以整体初始化,也...
include<stdio.h>int main(){int a[5][5],x,y,i,j,k=0,max; for(i=0;i<5;i++)for(j=0;j<5;j++)scanf("%d",&a[i][j]); for(i=0;i<5;i++) {max=a[i][0];y=0;for(j=0;j<5;j++)if(max<a[i][j]){max=a[i][j];x=i; y=j;}for(j=0;j<5;j...

C语言:主函数声明NxN二维数组并初始化,编写函数int fun(int [],int...
int fun(int x[],int n){ int i,j,s,t,(*p)[N]=(int (*)[N])x;for(t=n-1,s=i=0;i<n;i++)for(j=0;j<n;j++)s += i==j || i+j==t ? p[i][j] : 0;return s;} int main(int argc,char *argv[]){ int a[N][N],i,j,s;for(s=i=0;i<N;i++)...

相似回答