請教一道有關C語言的題目 若有定義a31,2,3,4,5,6,7,8,9,則表示式sizeof a

時間 2021-05-06 04:38:34

1樓:匿名使用者

關鍵是理解這句話的意思,首先定義了乙個陣列。

a[ ][ 3]=從此處可以看出是個三行三列的陣列。

sizeof(a)表示的是整個二維陣列的位元組數。

因為a[0]代表的是第一行的位址,所以此處sizeof(a[0])指的是一行的位元組數,

那麼sizeof(a)/sizeof(a[0])求出來的也就是此陣列的行數。即結果為3;

另外你定義了乙個一維陣列,比如a=;

你用sizeof(a)/sizeof(a[0])答案就是5,可以自己試驗一下

2樓:匿名使用者

1因為他們的位址值是一樣的

c語言問題 若有說明int a[][4]={1,2,3,4,5,6,7,8,9};,則陣列a第一維

3樓:格仔裡兮

若有說明int a[][4]=;則陣列a第一維是3。

定義陣列並賦值時c語言規定下標是這樣的,a[n]中的n個元素應該是a[0]....a[n-1]。。

因此int a[4]的寫法就是表示,第一維大小沒限制,但是第二維陣列大小就是4,也就是int a[4]=,,},明顯是3。

分析:二維陣列的一維大小,即指二維陣列的行數,在本題中,按行對二維陣列賦值,因此內層有幾個大括號,陣列就有幾行。

4樓:杜爺1號

答案是b,3.

int a[4]的寫法就是表示,第一維大小沒限制,但是第二維陣列大小就是4,也就是int a[4]=,,},明顯是3.

5樓:小兆

你定義的就是乙個二維陣列,第二維的個數是4,為了把所有的資料能分成四份有沒有遺漏,那第一維就是3了。

6樓:寂寞的菸頭哥

首先看陣列後面為4表示有四列二維陣列是

1234

5678

9000

這裡就可以很明顯的看出是三行,所以就是a[3][4],第乙個叫做第一維,第二個叫做第二維

c語言中 int a[3][3]={{1,2},{3,4},{5,6}}

7樓:匿名使用者

int a[3][3]=,,}

不就是定義了乙個復

制3*3的陣列,然後對他進行初始化,可以對全部元素初始化,也可對部分元素初始化,沒初始化的預設為0;

第一行1,2,0

第二行3,4,0

第三行5,6,0

。。。這不是陣列基礎麼。。。

簡單的說,就是定義了乙個陣列,並初始化了,和int a=3;是乙個道理。

若有定義int a [][3]={1,2,3,4,5,6,7,8,9},則表示式size of(a)/size of(a[0])的值為多少

8樓:十張樹

若有來定義int a [3]=,則表示式size of(a)/size of(a[0])的值為

對於乙個整型二維陣列,size of(a)=9 即實際內容所佔的大小;

a[0] 是指第0行的3個元素 因而size of(a[0])=3;

最後答案就是 9/3=3;

9樓:匿名使用者

對於乙個整型二維陣列,size of(a)=9 即實際內容所佔的大小

a[0] 是指第0行的3個元素 因而size of(a[0])=3

最後答案就是 9/3=3

10樓:匿名使用者

sizeof(a)=9; sizeof(a[0])=3, 故9/3=3.

c語言大神幫忙編寫程式若有二維陣列int a[3][3]={{1,2,3},{4,5,6},{7,

11樓:匿名使用者

#include

int main()

,,};

int i,j,temp;

for(i=0;i<3;i++)

for(j=0;j轉置

bai後du的zhi

矩陣dao為回:答\n");

for(i=0;i<3;i++)

return 0;}

若有說明:int a[][3]={1,2,3,4,5,6,7};則a陣列第一維的大小是多少。求思路

12樓:匿名使用者

7除以3上取整得到3,因此第一維是3,最後一行的最後兩個元素為0

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

13樓:格仔裡兮

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

14樓:匿名使用者

int a;第乙個中括號表

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

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

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

15樓:匿名使用者

若有說明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("

");}。

16樓:匿名使用者

3,除錯一下就知道了

c語言題目:經過 int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}定義之後,元素a[1][0]的值是_____。

17樓:匿名使用者

b int a[0]=

int a[1]=

int a[2]=

所以a[1][0] = 5

18樓:怎能不憂傷

這個是2維陣列,陣列是從0開始的,即

a[0][0] a[0][1]..............

...................................

a[2][0]................a[2][3]所以a[1][0]是第版5個數,即5,選權b

請教一道C語言的資料結構題目

有錢買不起房子 status initstack sqstack s status push sqstack s,selemtype e s top e return ok status pop sqstack s,selemtype e selemtype gettop sqstack s sta...

一道C語言的題目

運算子在後邊,變數先參與運算,然後再自加。第一次,i 1,1 5,i 2 第二次,i 2,2 5,i 3 第三次,i 3,3 5,i 4 第四次,i 4,4 5,i 5 第五次,i 5,5 5 不滿足 5的判定 將要退出迴圈,i 6 退出迴圈 i 6 次數 i初值 比較 同時i自增 比較後 開始 1...

求解一道c語言的題目謝謝了,求解一道C語言的題目!!!謝謝了!

你對陣列與陣列名是怎麼理解的?引用陣列就是要寫陣列名,不能寫成員啊。char str告訴編譯器,str是個char型陣列 當然寫char str也無妨,效果一樣 引用它就得寫與str對應的變數。str這時是陣列str的名字,也是它的首位址,是乙個指向這個陣列的指標常量 既不能 也不能再讓它指向別處 ...