C 二維陣列建立以及行列的求法

2021-08-21 21:01:31 字數 1675 閱讀 8621

1.普通方法建立二維陣列:

二維陣列的宣告:

對於一維陣列來說,陣列的大小可以省略,但對於二維陣列,c++規定,在宣告和初始化二維陣列時,只有第一維(行數)可以省略。

合法的宣告有:

int a[2][3];

int a[3];

不合法的宣告:

inta

;int

a[2]

;

二維陣列的初始化:

可以在宣告時初始化:

int a[2][3] = ,};

int a[2][3] = ;

也可以部分賦值:

int a[2][3] = ,{}};   //未賦值的預設為零

int a[2][3] = ; //初始化全部為零

但是不能先宣告在全部賦值,即下面的方式是錯誤的:

int a[2][3];

a[2][3] = ,};

求二維陣列元素的總數計算方法為:

int number = sizeof(a)/sizeof(int);
求二維陣列行數的計算方法為:

int row = (sizeof(a)/sizeof(int))/(sizeof(a[0])/sizeof(int));
求二維陣列列數的計算方法為:

int column = sizeof(a[0])/sizeof(int);
2. 可以使用vector建立二維陣列:

初始化方法:

方法1:

vector

>

array;

vector

a;a.push_back(1);

a.push_back(2);

a.push_back(3);

vector

b;b.push_back(4);

b.push_back(5);

b.push_back(6);

array.push_back(a);

array.push_back(b);

方法2:

//生成乙個2*3的二維陣列

vector

>

array(2);

for(int i=0;ifor (int i=0;i}

計算vector二維陣列的行:

array.size()
計算vector二維陣列的列:

array

[0].size()

遍歷vector生成的二維陣列:

void reverse_array(vector

>

array)

for (int i=0;i}

}

二維陣列建立以及新增行列索引的方法

列表 a pd.dataframe np.arange 10 reshape 2,5 index list ab columns list qwxyz print a 字典 temp dict a pd.dataframe temp dict print a a for i in range 3 f...

c 建立二維陣列

c 裡不在 二維陣列 這種型別,二維陣列會被解釋為這個一維陣列的元素是型別是另一種一維陣列。方法一 使用常量 如果將b宣告為乙個常量,如new int a 5 它的實質和一維動態陣列沒有太大區別只是陣列元素被宣告為了int 5 void testfunc unsigned int n unsigne...

二維陣列行列調換

將二維陣列中的行列互調顯示出來 首先來看乙個3 3的陣列 1 2 3 4 5 6 7 8 9 行列轉換後 1 4 7 2 5 8 3 6 9 看到上面這倆可以發現對角線上的數是不動的 發生變化的數只有 2 3 6 4 7 8 用二維陣列表示 0 1 0 2 1 2 由陣列能發現 0 橫行 1 0 2...