1樓:倒黴熊
二維陣列是按行儲存的也就是如下這樣:
a[0][0] a[0][1] a[0][2] a[0][3]a[1][0] a[1][1] a[1][2] a[1][3]a[2][0] a[2][1] a[2][2] a[2][3]而a表示的就是a[0][0]所在的地址。所以&a[2][1]-a的值為9。
2樓:陽光上的橋
請你在草稿紙上畫一個三行、四列的方格網,從左上角開始填寫編號0,0、0,1、0,2、0,3、1,1、……2,3,然後你數一下2,1的位置(從0開始剛好是第9個),所以a[2][1]的記憶體地址與a[0][0]的差是9
基礎知識:a表示a[0][0]的地址,&a[2][1]表示a[2][1]的地址。
3樓:匿名使用者
你定義了一個3行4列的int陣列,a表示a[0][0]的地址,&a[2][1]表示的是a[2][1]的地址。
4樓:匿名使用者
a表示a[0][0]的地址,&a[2][1]表示a[2][1]的地址。
二維陣列按行線性儲存。
四 若有定義: int a[3][4];則表示式&a[2][2]-a[0]的值為( d )。
5樓:
二維陣列a,3行4列,一行一行地數,a[2][2]是第10個元素。
a[0]的值即&a[0][0],所以這個表示式其實就是求a[2][2]和a[0][0]之間的距離。
因為指標之間加減以指標型別長度為單位,所以&a[2][2]-&a[0][0]的值就是計算a[2][2]到a[0][0]之間有多少個陣列元素。前面說了,是10個。
所以選d
若有定義int a =10,則表示式a+=a-=a*=a的值是多少啊
6樓:
a+=a-=a*=a的值為0
解析:左結合:先做a*=a, 因為a=10,a*=可寫為a=a*a=100 此時a的值為100
a-=a 可寫為a=a-a=0,此時a 的值為0a+=a可寫為a=a+a=0
綜上:a+=a-=a*=a的值為0
7樓:
#include
int main()
顯示的答案是 0; 連續賦值 的規則 是從右到左~我們分細點
1: a+=a-=a*=10
2: a+=a-=100
3: a+=0
4: a=0
所以答案是 0
lz 明白了嗎~~
8樓:1我不是吃貨
-80。
我想的是,從左往右算,那麼左邊的a的值是10不會變的。所以就變成了10+=10-=10*=10
10+=10-=100
10+=-90
-80嗯嗯,應該沒錯。
9樓:聽不清啊
表示式a+=a-=a*=a的值=0
10樓:好時光悄悄溜走
0是這樣執行的:
a=a*a;a=100
a=a-a;a=0
a=a+a;a=0
身為一個優秀的程式設計師
建議不要用可讀性如此低的程式
11樓:丨嗚呼哀哉
= += -= *= /= %= &= ^= |= <<= >>= 是右結合性的;
然後光看本題,題目**現了“-=”,也就是會遇到自己減自己,結果肯定是0,後面操作也是自己跟自己操作,無論如何結果都是0;
以後看到這樣的表示式,如果出現“-=”,結果差不多都是0;
若有定義:int a=2; 則正確的賦值表示式是( )。 (a) a-=(a*3) (b) double(-a) (c) a*3 (d) a*4=3
12樓:金色潛鳥
正確的賦
bai值表示式是 (a) a-=(a*3) 它等du價於 a= a - (a*3)
double(-a) 這句沒有賦值zhi. 賦值表示式dao裡,被賦值的內應當是變
量,處容於“左值”
a*3 只是乘法運算,沒有賦值操作
a*4=3 a*4 不能做左值。
若有定義int a [][3]={1,2,3,4,5,6,7,8,9},則表示式size of(a)/size of(a[0])的值為多少
13樓:十張樹
若有來定義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;
14樓:匿名使用者
對於一個整型二維陣列,size of(a)=9 即實際內容所佔的大小
a[0] 是指第0行的3個元素 因而size of(a[0])=3
最後答案就是 9/3=3
15樓:匿名使用者
sizeof(a)=9; sizeof(a[0])=3, 故9/3=3.
c語言的題目:設有定義int a=3,b=4;則表示式a+b,a-b,a--的值為3,答案為什麼是3不明白?謝謝
16樓:匿名使用者
你是說a-- 為什麼=3是吧????
a--的職會等於a的值,也就是3,然後因為a--所以表達於以回後的a=2.
區別答--a=2,然後a=2
區別是最後新的a都會=(原來的)a-1
但是a--會等於原來a的值。
而--a會等於a-1後的值(也就是賦值後的)。
好比這題的a=3.
a--=3,a=2;
--a=2,a=2.
++的時候同理。
17樓:匿名使用者
我就知道表示式a--的值為3:因為--在後面會導致先引用再--,所以如果有:
int c = a--;則c=3,a=2。
如果是--a,則是先--,再引用。即int c = --a;則c=2,a=2.
同樣,++ 也是這樣。
18樓:匿名使用者
a--先引用,再賦值,這樣講你會清楚些;
a=a--;這個時候a就等於3,因為先引用,所以先給3,引用完後a就等於2了;
a=a;這個時候a就等於2,因為上面的a已經變成2了,再次遇到賦值語句就會置2
19樓:匿名使用者
表示式的值是最右邊的式子的值,所以是a--,是先取a的值,所以是3
20樓:迪聲
你用的c版本計算的時候結果輸出最後一個,而且因為結果應該是a--,即a先輸出結果再做減1,所以就是3了
21樓:匿名使用者
int a=3,b=4, a+b的結果是7,此時,a仍然
=3,b仍然=4.沒變
之後,下一個算式a-b結果回是-1,此時,a仍然=3,b仍然=4.沒變答
再下一個 a--, 這個的意思是對a操作後a才減1,但後面沒有有關a 的算式,因此,a的值不變,仍然是3.
此題若a--後面有a+b或其他有關a 的算式,則a的值就會減一操作,變為2
22樓:匿名使用者
我覺得應該是2啊
我執行結果就是2
23樓:匿名使用者
你能不能把題目詳細點 都沒搞懂你的意思
若有定義語句int a 12,則執行表示式a a a a
a a a a,運算子和結合性,bai由運算子優 先級,du 優先順序為zhi4,和 優先順序為14,結合方向從dao左至回右,和 從右至左,所以 先計答算 a a a 12,a a 12 12 24再計算 a a a 即a a a a 12 24 12,最後計算 a a,即a a a 12 12 ...
若有定義語句int a 12,則執行表示式a a a a後a的值為
a a a a,運算子和結合性,由運算子優先順序,優先順序為4,和 優先順序為14,結合內方向從左至右,和 從右至左容,所以 先計算 a a a 12,a a 12 12 24再計算 a a a 即a a a a 12 24 12,最後計算 a a,即a a a 12 12 24 若有定義語複句in...
若有定義int a 1,b 2,c 3則執行表示式(a b cb)後a,b,c的值
1。b c 5 將 5 賦值 給 a 2.a 5 為真 短路或所以不執行 b b 依然為2 所以 有 a 5 b 2 c 3 從左往右看,a b c a 5,b,b 3 若有定義 int a,b 則表示式 a 2,b 5,a 2,b a b 的值是?b 的意思是 先將b的原值帶入本條語句執行,然後再...