若有說明陣列inta4則以下對陣列a的

2021-03-03 21:27:13 字數 3140 閱讀 5582

1樓:匿名使用者

c唄,裡可以用運算子,只要不超過規定的最大數減一就行。

2樓:匿名使用者

c是對的

a的那個4已經超出範圍了

b,沒有這種寫法

d不能用圓括號,只能用方括號

若有說明 int a[3][4],則對 a 陣列元素的正確引用是

3樓:匿名使用者

a[2][4]越界了

最後乙個元素a[2][3]

引用時下標從0開始

第一行a[0][0] a[0][1]...

第三行a[2][0] a[2][1]...

若有說明:int a[3][4];則對a 陣列元素的正確引用是 () a a[2][4] b a[1][3] c a[1+1][0] d a(2)(1)

4樓:匿名使用者

選b和c

int a[3][4],陣列高維下標從0-2,陣列低維下標從0-3a的低維下標是4,超過最大低維下標,所以不合法b的兩個下標都落在合法區域

c的高維下標是1+1常量,即為2,也是合法的d的表達方式不合法,陣列下標要用,而不能用()

5樓:匿名使用者

a、a[2][4]是錯的,原因是第一維越界,不存在a[4]。

d、a(2)(1)是錯的,只有函式、強制型別轉換、算式才使用圓括號。

所以正確的答案是b、c。

若有說明語句:int a[2][4];,則對a 陣列元素的 正確引用是

6樓:少年遊

選a,因為陣列的下標是從0開始的,所以正確的引用是a[0~1][0~3],超過這個範圍會提示陣列越界

12. 若有說明:int a[][3]={1,2,3,4,5,6,7};則陣列a第一維的大小是( )。

7樓:格仔裡兮

若有說明: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 語言不允許對陣列的長度進行動態定義,換句話說,陣列的大小不依賴程式執行過程中變數的值。非通常的情況為動態記憶體分配,此種情況下陣列的長度就可以動態定義。

8樓:匿名使用者

int a;第乙個中括號表

示有此二維陣列有幾行,第二個表示有幾列;

故int a[3]=;說明此陣列有n行,3列;也就是說每行有三個元素,所以第一行有1,2,3 這三個元素,第二行有4,5,6三個元素,第三行有7這個元素,不足的兩個元素由0來補足

故此定義下陣列a第一維的大小是3

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("

");}。

10樓:匿名使用者

3,除錯一下就知道了

若有說明int a[3][4] 則對a陣列元素的正確引用為

11樓:達豐

二維陣列引用基本格式:陣列名[行標][列標]。

行標和列標都是從0開始,最大下標為行(列)標長度-1。

比如:a[0][1],表示第一行第二列的陣列元素。

二維陣列:

由行和列組成的二維**形式的元素,其實也就是矩陣。

基本格式:

資料型別 陣列名[行長度][列長度];

行長度為二維陣列行的個數,必須為常量表示式,不能為變數。

列長度為二維陣列每一行列的個數,必須為常量表示式,不能為變數。

二維陣列包含的元素的個數是:行長度*列長度,其中每個元素佔據的位元組數是sizeof(資料型別),故二維陣列佔據的內在位元組數是 行長度*列長度*sizeof(資料型別)。

舉例:定義乙個二維陣列a,包含4行4列的元素,每個元素均為int型別int a[4][4];

12樓:韓信靳婉

若有說明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");}

若有說明inta

若有說明 int a 3 則陣列a第一維的大小是3。int a 第乙個中括號表示有此二維陣列有幾行,第二個表示有幾列。故int a 3 說明此陣列有n行,3列 也就是說每行有三個元素,所以第一行有1,2,3 這三個元素,第二行有4,5,6三個元素,第三行有7這個元素,不足的兩個元素由0來補足。對陣列...

若有說明int a 2 p a,q p則一下非法的

da是整型數,int p,q定義了指標,p,q是指向整型的指標。p取得a的位址內 容,而q取得p的位址 p,q是指標 也就是乙個位址 而 p和 q是這個指標指向的整型數值 存放在這個位址的值 a 把q的位址賦給p,則p和q完全一樣了,都指向乙個數2b 把q中資料給p c 把q中資料給a d a中資料...

若有定義語句 int a則下列語句正確的是

答案是bai c 解決這類題型du 首先要分清型別。zhi a錯,雖然 p 的型別是 dao int a 的型別是 int 但是陣列專名代表的屬位址也不能改變。b錯,因為 p 0 的型別是 int a 的型別是 int c對,p 0 的型別是 int a 1 2 的型別也是 int d錯,p 1 的...