一維陣列轉換為二位陣列
#include
#include
#define row 3
#define col 2
intmain
(int argc,
char
*ar**)
;int arr2d[row]
[col]
;int i,j;
//一維維整型陣列轉換為二維整型陣列
for(i=
0;i//二維整型陣列列印顯示
for(i=
0;i)printf
("\n");
}system
("pause");
return0;
}
二維陣列轉化為一維陣列
#include
#include
//二維陣列轉一維
/*以列為主的二維陣列要轉為一維陣列時,是將二維陣列由上往下一列一列讀入一維陣列,此時
索引的對應公式如下所示,其中row與column是二維陣列索引,loc表示對應的一維陣列索引:
loc = column + row*行數*/
intmain()
,,};
printf
("原二維陣列:\n");
for(
int i =
0; i <
3; i++
)printf
("\n");
}printf
("進行轉換:\n");
int number[3*
3];for
(int i =
0; i <
3; i++)}
for(
int i =
0; i <3*
3; i++
)printf
("%d"
, number[i]);
printf
("\n");
system
("pause");
return0;
}
三維陣列轉化為一維陣列
#include
#include
//三維轉一維
/*如果是三維陣列,則公式如下所示,其中i(個數u1 )、 j(個
數u2 )、 k(個數u3)分別表示三維陣列的三個索引:
以列為主:loc =i*u2*u3 + j*u3 + k
以行為主:loc =k*u1*u2 + j*u1 + i*/
intmain()
,,},
,,},
,,},
};for(
int i =
0; i <3;
++i)
printf
("\n");
}}printf
("開始轉換:\n");
int number[3*
3*3]
;for
(int i =
0; i <
3; i++)}
}for
(int n =
0; n <3*
3*3; n++
)return0;
}
二維陣列與稀疏陣列之間的轉化
1.稀疏陣列介紹 如果原陣列的非0元素的個數有n個,則稀疏陣列有n 1行,列數不變,一共有三列 第一行儲存的資料 原始陣列的行 原始陣列儲存的列 原始陣列中非0的元素個數 第二行儲存的資料 第乙個非0元素所在的行 第乙個非0元素所在的列 第乙個非0元素的值 2.二維陣列轉化為稀疏陣列 遍歷二維陣列,...
一維陣列與二維陣列
1.一維陣列的定義格式為 型別說明符 陣列名 常量表示式 在定義陣列時,需要指定陣列中元素的個數,方括弧中的常量表示式用來表示元素的個數,即陣列長度。常量表示式中可以包括常量和符號常量,但不能包含變數。c語言不允許對陣列的大小作動態定義,即陣列的大小不依賴於程式執行過程中變數的值。在定義陣列時對陣列...
稀疏陣列轉化二維陣列
public class sparse system.out.println system.out.println 轉化為稀疏陣列儲存 獲取有效值的個數 判斷是否有值 int sum 0 臨時變數,計數用的 for int i 0 i 9 i system.out.println 有效值的個數 su...