當(dāng)前位置:首頁 > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 學(xué)習(xí)筆記 > 嵌入式學(xué)習(xí)筆記:二維數(shù)組定義與使用
嵌入式學(xué)習(xí)筆記:二維數(shù)組定義與使用
時(shí)間:2018-09-13 來源:未知
定義:
二維數(shù)組由一維數(shù)組來構(gòu)成,二維數(shù)組的元素類型實(shí)際為一維數(shù)組。一個(gè)二維數(shù)組由多個(gè)一維數(shù)組來構(gòu)成。
定義方式:int array [2] [3]
類型 數(shù)組名 行 列
二維數(shù)組的大小與存儲(chǔ)規(guī)則
二維數(shù)組的大小=每個(gè)元素(一維數(shù)組)的大小*元素個(gè)數(shù)

存儲(chǔ)規(guī)則:連續(xù),線性

二位數(shù)組元素的訪問
將二維數(shù)組當(dāng)作矩陣去訪問,使用行下標(biāo)與列下標(biāo)去訪問數(shù)組的元素
行下標(biāo)確定在哪一個(gè)一維數(shù)組中,列下標(biāo)確定在一維數(shù)組中的哪一個(gè)元素

賦值 打印 結(jié)果
二維數(shù)組初始化
全部初始化:

注意:此情況可以省略行下標(biāo)
順序初始化:

部分初始化:

注意:未初始化的元素為0
隨機(jī)數(shù)
計(jì)算機(jī)中的隨機(jī)都是屬于偽隨機(jī),不是物理上隨機(jī),屬于模擬算法
使用函數(shù)rand()來產(chǎn)生隨機(jī)數(shù)
#include
int rand(void); //產(chǎn)生一個(gè)隨機(jī)數(shù)并返回
void srand(unsigned int seed) //設(shè)置隨機(jī)數(shù)種子,隨機(jī)算法與隨機(jī)數(shù)種子相關(guān)聯(lián),隨機(jī)數(shù)種子保持不變,產(chǎn)生的隨機(jī)數(shù)值就相同,所以使用時(shí)間來表示隨機(jī)數(shù)種子
具體用法:
① 頭文件:#include //包含time.h ,使用 time() 函數(shù)
//time_t time(time_t *t); //獲取當(dāng)前時(shí)間
② 做定義:int num;
srand(time(NULL));//使用時(shí)間作為隨機(jī)數(shù)種子,只需要設(shè)置一次
num = rand();//將產(chǎn)生的隨機(jī)數(shù)賦值給 num
③ 產(chǎn)生具體例子:
num = rand() % 10; //獲取一個(gè)0-9的隨機(jī)數(shù)
num = rand() % 201 - 100; //獲取一個(gè)-100 ~ 100 的隨機(jī)數(shù)
num = rand() % 11 + 10; //獲取一個(gè) 10 - 20 的隨機(jī)數(shù)
注意及補(bǔ)充
1.二維數(shù)組的數(shù)組名表示數(shù)組的首元素的地址(第0個(gè)一維數(shù)組的地址)


2.puts函數(shù)

作用:效率更高

