請C語言高手幫忙下若有以下程式段,則不能正確引用陣列元素a

2021-04-20 19:02:41 字數 1201 閱讀 8673

1樓:jarry王

因為d的表達本身就是錯誤滴哈。。沒這種表示方法呢。。特別是在有關二維陣列指標時一定要版

多注意權定義滴是行指標還是列指標喲。。而你這個題目滴定義是定義為*p是行指標,因此在用行指標表示二維陣列元素時的形式有:p[ i ][ j ](如同a選項),*(*(p + i)+ j) (注意:

最裡面的 「 * 」 號是把行指標轉換為列指標),(*(p + i))[ j ] (同c選項)。。希望你能弄懂哈。。如果不了解的話,請再多看看指標表示二維陣列滴相關知識哈。。

c語言的陣列問題,若有定義:int a[2][3];以下選項中對a陣列元素正確引用的是 a.a[2][!1] b.a[2][3]

2樓:匿名使用者

選d。乙個二維陣列可以被認為是乙個帶有 x 行和 y 列的**。下面是乙個二維陣列,包含 2 行和 3列:

因此,陣列中的每個元素是使用形式為 a[ i , j ] 的元素名稱來標識的,其中 a 是陣列名稱,i 和 j 是唯一標識 a 中每個元素的下標。i最大值為1,j最大值為2,超出此範圍則表示錯誤。

3樓:孤獨的蠍子

d 因為1>2為假,所以表示式為0 ; 其次!1也就是非真,即為假,所以a[1>2][!1]等價於a[0][0]

4樓:藍人

d,陣列的有效範圍是a[0][0] - a[1][2]

a,b,c都超過範圍了。

5樓:匿名使用者

定義的陣列引用時那個數下標減1

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

6樓:匿名使用者

選b和c

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

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

7樓:匿名使用者

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

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

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

C語言題目 請C語言高手幫幫忙

include define max 30 定義最長可輸入的數的長度 char num max 定義乙個陣列,用於存放要輸入的字元 main p num p指向陣列第乙個元素 pr p i 1 pr指向陣列最後乙個元素,不含 0 while j i 2 else break 不一樣則退出迴圈 if ...

c語言習題請高手幫忙解答。急,C語言習題請高手幫忙解答。急。

1.b2.c 3.a4.a 5.c6.無解 7.a8.d 9.d10.b x沒有定義 11.i 5,j 4,k 6 12.2048 13.看不懂!14.4 15.s k k 這些都很簡單,但別人給的答案不一定準確 真是懷疑。是入學考試還是畢業考試?是入學考試還是畢業考試?c語言習題請高手幫忙解答,急...

請高手解釋一下c語言程式的幾個步驟

進入for迴圈,首先令n 100 注意,for迴圈的第乙個表示式只做一次 然後進入迴圈體,用n 100得到百位,也就是d3 然後用n d3 100得到這個三位數的後兩位,再除以10得到十位,也就是d2 接著用n對10求餘,這是求個位的一種演算法,任何乙個數對10求餘都可以得到它的個位,也就是d1 最...