1樓:匿名使用者
最高維留空, 按照初始化元素來進行分配.
這裡每行三個. 所以 123給第一行. 456給第二行. 7給第三行.
所以是三行.
第一維為3.
若有說明:int a[][3]={1,2,3,4,5,6,7};則a陣列第一維的大小是 a)2 b)3 c)4 d)無確定值
2樓:格子裡兮
若有說明:int a[3]=;則陣列a第一維的大小是3。
int a:第一個中括號表示有此二維陣列有幾行,第二個表示有幾列。
故int a[3]=;說明此陣列有n行,3列;也就是說每行有三個元素,所以第一行有1,2,3 這三個元素,第二行有4,5,6三個元素,第三行有7這個元素,不足的兩個元素由0來補足。
對陣列進行初始化,要麼兩個維度都不寫,由賦值的陣列確定,或者第二維可以不寫,第一維要寫,再由賦值陣列確定。
陣列中的下標是從 0 開始的(而不是 1)。那麼,如何通過下標表示每個陣列元素的呢?通過「陣列名[下標]」的方式。
例如「int a[5];」表示定義了有 5 個元素的陣列 a,這 5 個元素分別為 a[0]、a[1]、a[2]、a[3]、a[4]。其中 a[0]、a[1]、a[2]、a[3]、a[4] 分別表示這 5 個元素的變數名。
如果從 1 開始,那麼陣列的第 5 個元素就是 a[5],而定義陣列時是 int a[5],兩個都是 a[5] 就容易產生混淆。而下標從 0 開始就不存在這個問題了!所以定義一個陣列 a[n],那麼這個陣列中元素最大的下標是 n–1;而元素 a[i] 表示陣列 a 中第 i+1 個元素。
另外,方括號中的常量表示式可以是「數字常量表示式」,也可以是「符號常量表示式」。但不管是什麼表示式,必須是常量,絕對不能是變數。
c 語言不允許對陣列的長度進行動態定義,換句話說,陣列的大小不依賴程式執行過程中變數的值。非通常的情況為動態記憶體分配,此種情況下陣列的長度就可以動態定義。
3樓:誠孓
選b。int a[ ][3]中的3代表這個二維陣列是3列的。
所以該陣列排列如下。
1 2 3
4 5 6
7 0 0
所以該二維陣列為int a[3][3]。
即有3行3列。
所以答案是b。
4樓:匿名使用者
第一維的大小確定方法,用花括號中初值的個數除以第二維的常量表示式,當得到結果為整數時,為第一維的大小,如果不是整數,得到的結果的整數部分加1就是第一維的大小
若有說明:int a[][3]={1,2,3,4,5,6,7};則 a陣列第一維的大小是( ) a、2 b、3 c、4 d、無確定值
5樓:匿名使用者
最高維留空, 按照初始化元素來進行分配.
這裡每行三個. 所以 123給第一行. 456給第二行. 7給第三行.
所以是三行.
第一維為3.
6樓:倒黴熊
第二維的大小是3 ,也就是 一行 有3個元素,
而後面給出了7個元素,也就是2行多,所以總共3行,選擇b。
若有說明:int a[][3]={1,2,3,4,5,6,7,8,9,10};則a陣列第一維的大小是 答案是4 為什麼?
7樓:石頭人浮士
因為陣列有10個數字,二維有三個數,10/3>3,所以計算機會自動將a陣列變成a[4][3]
因此一維的大小為4,「4」指一維有四個元素,而每個元素有3個數字
若有說明int a[3][4] 則對a陣列元素的正確引用為
8樓:達豐
二維陣列引用基本格式:陣列名[行標][列標]。
行標和列標都是從0開始,最大下標為行(列)標長度-1。
比如:a[0][1],表示第一行第二列的陣列元素。
二維陣列:
由行和列組成的二維**形式的元素,其實也就是矩陣。
基本格式:
資料型別 陣列名[行長度][列長度];
行長度為二維陣列行的個數,必須為常量表示式,不能為變數。
列長度為二維陣列每一行列的個數,必須為常量表示式,不能為變數。
二維陣列包含的元素的個數是:行長度*列長度,其中每個元素佔據的位元組數是sizeof(資料型別),故二維陣列佔據的內在位元組數是 行長度*列長度*sizeof(資料型別)。
舉例:定義一個二維陣列a,包含4行4列的元素,每個元素均為int型別int a[4][4];
9樓:韓信靳婉
若有說明int
a[3][4];則對a陣列元素的正確引用是a[1][3]。
a[2][4]越界了
最後一個元素a[2][3]
引用時下標從0開始
第一行a[0][0]
a[0][1]...
第三行a[2][0]
a[2][1]...
程式1.
//定義為區域性性質的陣列
#include
void
main()
printf("\n");
}程式2.
//定義為全域性性質的陣列
#include
inta[5];
//定義為全域性性質的陣列
void
main()
printf("\n");}
定義int a[][3]={1,2,3,4,5,6,7} ;則陣列a第一維的大小是 為什麼
10樓:匿名使用者
第一維大bai小是3.【】
的結合性為自左向du右,具有最高的優
zhi先級別。【
dao3】與左側的a【】結合版,說明a【】(【權】與a結合,說明a【】是一個陣列)的元素是有3個元素的一維陣列。二維陣列其實是陣列元素是一維陣列的一維陣列
12. 若有說明:int a[][3]={1,2,3,4,5,6,7};則陣列a第一維的大小是( )。
11樓:格子裡兮
若有說明:int a[3]=;則陣列a第一維的大小是3。
int a:第一個中括號表示有此二維陣列有幾行,第二個表示有幾列。
故int a[3]=;說明此陣列有n行,3列;也就是說每行有三個元素,所以第一行有1,2,3 這三個元素,第二行有4,5,6三個元素,第三行有7這個元素,不足的兩個元素由0來補足。
對陣列進行初始化,要麼兩個維度都不寫,由賦值的陣列確定,或者第二維可以不寫,第一維要寫,再由賦值陣列確定。
陣列中的下標是從 0 開始的(而不是 1)。那麼,如何通過下標表示每個陣列元素的呢?通過「陣列名[下標]」的方式。
例如「int a[5];」表示定義了有 5 個元素的陣列 a,這 5 個元素分別為 a[0]、a[1]、a[2]、a[3]、a[4]。其中 a[0]、a[1]、a[2]、a[3]、a[4] 分別表示這 5 個元素的變數名。
如果從 1 開始,那麼陣列的第 5 個元素就是 a[5],而定義陣列時是 int a[5],兩個都是 a[5] 就容易產生混淆。而下標從 0 開始就不存在這個問題了!所以定義一個陣列 a[n],那麼這個陣列中元素最大的下標是 n–1;而元素 a[i] 表示陣列 a 中第 i+1 個元素。
另外,方括號中的常量表示式可以是「數字常量表示式」,也可以是「符號常量表示式」。但不管是什麼表示式,必須是常量,絕對不能是變數。
c 語言不允許對陣列的長度進行動態定義,換句話說,陣列的大小不依賴程式執行過程中變數的值。非通常的情況為動態記憶體分配,此種情況下陣列的長度就可以動態定義。
12樓:匿名使用者
int a;第一個中括號表
示有此二維陣列有幾行,第二個表示有幾列;
故int a[3]=;說明此陣列有n行,3列;也就是說每行有三個元素,所以第一行有1,2,3 這三個元素,第二行有4,5,6三個元素,第三行有7這個元素,不足的兩個元素由0來補足
故此定義下陣列a第一維的大小是3
13樓:匿名使用者
若有說明int a[3][4];則對a陣列元素的正確引用是 a[1][3]。a[2][4]越界了最後一個元素a[2][3] 引用時下標從0開始第一行a[0][0] a[0][1]。
。。第三行a[2][0] a[2][1]。。。程式1。
//定義為區域性性質的陣列#include void main() printf("
");}。
14樓:匿名使用者
3,除錯一下就知道了
c語言題目:若有說明int a[][5] =({1,2,3},{4,5},{6,7});則陣列a的第一框大小為()
15樓:匿名使用者
表示二維陣列,第一個表示行數,第二個表示每一行最大容量。
所以第一框為 3。
inta31,23,45,6這樣是錯的嗎
錯了你這個是bai2行的du,給了3行的 初始化zhi 2 行dao 3 列 a 0 0 a 0 1 a 0 2 a 1 0 a 1 1 a 1 2 就這麼多元素了內 1,2,0 賦給第 容一行3,4,0賦給第二行 多出一行 恩,是錯的。建議你再看看陣列。int a 2 3 這樣前面表示宣告一個2行...
若有以下說明和語句且0 i 10。int a1,2,3,4,5,6,7,8,9,
p i這是a i 的地址 p i 才是a i 得值 若有以下說明,並且0 i 10,則 是對陣列元素的錯誤引用。int a 1,2,3,4,5,6,7,8,9,10 b選項在括號中p a是同型別的指標變數的減法,結果是地址值相減,然後除以int所佔位元組大小,故b項等價於a i 在就好選了,故選c ...
若有定義 int a 41,2,3,4,5,6,7,8,9,10,11,12p p a對陣列a元素的引用是正確的
a。a陣列的長度是3,p 4 和 p 4 都會造成超出地址範圍 p 2 表達不正確 p 2 3 是a 2 3 int p 4 表明p是行指bai針,即p指向二維陣列中的一du行。zhi p a 這一句表示 daop指向a 0 也就是 版指向a陣列第0行的第0個元素權 a 0 0 的地址。p 2 表示...