5 若有如下說明 int a 101,2,3,4,5,6,7,8,9,10char b a ,d,e則數值為4的表示式是

2021-03-27 10:17:24 字數 4522 閱讀 3586

1樓:

答案是c)

分析:a) a[4] 實際上是5

b) 因為d沒有初始化, 所以a[d-b]值無法確定c) 'd'-b等於3, a[3]的值為4d) 因為e沒有初始化, 所以a[e-b]值無法確定

2樓:帶淚的紫藤花

c陣列為4也就是陣列第四個元素,而陣列索引是從0開始的,也就是索引值為3的陣列元素為4,

'd'-b等價於'd'-'a'值為3~~~所以選c

3樓:匿名使用者

選擇 c 吧

『d'-b=3,字元相減就是字元對應的ascii相減。『d'的ascii 是100,b即 』a『(char b=』a』)的ascii是97.

4樓:我要好好睡了

cb='a',

'd'-b='d'-'a'=3

a[3]=4;選c;

說明語句如下:int a[10]={1,2,3,4,5,6,7,8,9},*p=a;則數值為6的表示式是( )。

5樓:匿名使用者

d。表示式「*p = a」說明p指向a[0]的位置;

那麼 *p + 6 = a[0] + 6 = 7; a錯;

p指向a[0]的位置, 則p + 6 指向a[6]的位置,那麼 *(p + 6) = a[6] = 7; b錯;

p是一個指標,p的值本身是一個地址,p + 5顯然不可能為5; c錯;

上面說了, p指向a[0]的位置,那麼 *p = a[0] = 1;

*p += 5; 等同於 a[0] += 5; 等同於 a[0] = a[0] + 5 = 1 + 5 = 6;

顯然只有d正確;

6樓:匿名使用者

d 一開始定義了 *p=a,就是指等於a[0];它指向的是一個值!

*p+=5,可以變換一下 *p=(*p)+5 不就 a[0]+5=6.....

a = 7 ;

b 的值是 a[6]=7

c 是一個地址 &a[5] 不是值!

7樓:林聲飄揚

da> *p+6=>1+6=7

b>*(p+6)=7

c>p+5 是地址

d>*p+5=>1+5=>6

所以選d

若有說明:int a[][3]={1,2,3,4,5,6,7,8,9,10};則a陣列第一維的大小是 答案是4 為什麼?

8樓:石頭人浮士

因為陣列有10個數字,二維有三個數,10/3>3,所以計算機會自動將a陣列變成a[4][3]

因此一維的大小為4,「4」指一維有四個元素,而每個元素有3個數字

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

9樓:格子裡兮

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

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

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

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

10樓:杜爺1號

答案是b,3.

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

11樓:小兆

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

12樓:寂寞的菸頭哥

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

1234

5678

9000

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

若有以下說明:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;則對陣列元素地址的正確表示是( )?

13樓:匿名使用者

編譯時 a &(a+1) 有問題, & 其實 是取地址操作6 30 c:\untitled1.c [error] lvalue required as unary '&' operand

b.a++ 也有問題

7 28 c:\untitled1.c [error] lvalue required as increment operand

c.&p 這個是表示 指標變數 p 的地址此題正確答案 是 d a+1,其實 是 陣列元素 a[1] 的地址,a[0] 的地址就是 a+0 就是 a

14樓:匿名使用者

陣列元素2的地址,可以用 a+1 表示。

應選d。

若有以下說明,並且0≤i<10,則( )是對陣列元素的錯誤引用。int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10},

15樓:三水聞不足

b選項在括號中p-a是同型別的指標變數的減法,結果是地址值相減,然後除以int所佔位元組大小,故b項等價於a[i],在就好選了,故選c

16樓:匿名使用者

c錯誤p + i, 顯示的是地址,不是陣列元素值。應該為*(p + i)

17樓:刀下風

很顯然是c, 題目要求是對陣列元素的引用,而c是對地址的引用。

若有以下定義和語句: int a[10]={1,2,3,4,5,6,7,8,9,10},p=a; 則不能表示a陣列元素的表示式是( ) a) *p b)

18樓:墨汁諾

不能表示a陣列元素的表示式是( b) a[10] )----因為陣列a的最大下標只能是9,即a[9],

a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],一共10個元素。

a、*p  ---表示取p指標指向的單元的值,即表示取陣列a的首個元素a[0]的值。

b、a[10] ---因為陣列a一共10個元素,從0開始計數,

即a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],正好10個,沒有a[10],所以a[10]就是不能表達這個陣列元素。

c、*a ----陣列名a中儲存的是陣列的首地址,*是取單元中的值,*a就是取陣列首地址中單元中a[0]的值。

d、a[p-a] --- p指向的是陣列a,因為p中與a同資料相同都是陣列a的首地址,而p-a就等於0,因此 a[p-a]就相當於a[0]。

19樓:匿名使用者

選b)a[10] a[0]、a[1]、a[2]……a[9]分別是陣列a[10]的十個元素,故a[10]不能表示a陣列的元素。

20樓:匿名使用者

選 b a[10]

陣列是從a[0] 到 a[9] 的。。。。。。

若有定義:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12},(*p)[4];p=a; ,( )對陣列a元素的引用是正確的。

21樓:處搖胼手胝足

a。a陣列的長度是3,*(p[4])和**(p+4)都會造成超出地址範圍

(**p)[2]表達不正確

*(p[2]+3) 是a[2][3];

22樓:匿名使用者

int (*p)[4];表明p是行指bai針,即p指向二維陣列中的一du行。zhi

p=a;這一句表示

daop指向a[0],也就是

版指向a陣列第0行的第0個元素權

(a[0][0])的地址。

p[2]表示p指向a陣列的第二行,即指向a[2]行,也就指向a[2][0]的地址。

p[2]+3表示行指標指向a陣列的第二行(從第0行開始),(從0開始)第3個元素,也就是a[2][3],*(p[2]+3)表示第2行,第3個元素的值。

p+4表示第四行(從0行開始),因為a陣列沒有第四行,所以是錯的。

p[4]表示第四行(從0行開始),原因同上。

*p表示a陣列第0行,第0列地址,**p表示a[0][0]的值,值不會再包含元素,所以(**p)[2]是錯的。

4.若有說明:int a[][4]={1,2,3,4,5,6,7,8,9,10};則a陣列第一維的

23樓:杜爺1號

答案是b,3.

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

有如下程式maininty3,x3,z

3 3 x,y 為逗號表示式輸出的會使y 但y 時,y還是3,等下一條語句開始才變為4 z 2 3 有段c語言程式 求輸出結果 main int y 3,x 3,z 1 printf d d n x,y z 2 求執行結果,多謝 答案是 3 3 輸出的值y 和z 2兩個數的值 其中 x,y 只能輸出...

北京市奧運期間交通是否有如下規定

能北京市 釋出 關於2008年北京奧運會殘奧會期間對本市機動車採取臨時交通管理措施的通告 從7月20日起至9月20日,本市機動車將分單雙號行駛。限行期間公車將停駛七成。儘管實行單雙號的車輛停駛時間實際僅為1個月 部分機動車不受單雙號行駛措施限制,准許在本市行政區域內道路行駛。包括警車 消防車 救護車...

C語言題目若有說明inta51,

表示二維陣列,第一個表示行數,第二個表示每一行最大容量。所以第一框為 3。c語言的陣列問題,若有定義 int a 2 3 以下選項中對a陣列元素正確引用的是 a.a 2 1 b.a 2 3 選d。一個二維陣列可以被認為是一個帶有 x 行和 y 列的 下面是一個二維陣列,包含 2 行和 3列 因此,陣...