1樓:萌噠牛
a/=a+a
等價於a=a/(a+a)
如果原來a=12
則a=12/24
等於0就是這樣的
凡是出現a+=i
a-=i
a*=i
a/=i
a%=i
都要加括號的
即a=(a%i)
2樓:匿名使用者
+號的運算子優先順序比/=高,所以程式 先計算a+a
式子為a/=24,12除以24整數為0,所以答案為0,如果式子換成a=a%24,那麼結果是12
/表示結果取整數部分,%表示結果取餘數部分
3樓:
我感覺是等於1.
/= 和= 都是賦值運算子,其結合方向是自右至左的,故應該為:a/=(a=a),先算a=a 結果為12(a沒變為12),再算a/=12即a=a/12也就是等於1
是a/=a+a的話,同意yujunliang316的答案
4樓:匿名使用者
答案應該是 1 ; 你弄錯拉
式子從右向左運算等價為以下兩個語句 先 a = a; a為12,然後
a /= a ;
5樓:匿名使用者
你打錯了吧,應該是+號吧! +號的運算子優先順序比/=高,所以程式 先計算a+a
式子為a/=24,12除以24整數為0,所以答案為0
c語言問題,a=12,a+=a-=a*a為什麼最後結果是0啊,怎麼算的?謝謝! 5
6樓:匿名使用者
從右邊開始拆開:a+=a=a-a*a,帶入:a+=a=12-144,所以a=-132
然後繼續:a=a+a,帶入:a=-132-132=-264
結果為0說明要不然是你式子寫錯了,要不然是你程式編錯了
c語言表示式a+=a-=a*=a結果是多少?運算順序是怎樣的?(a=12)
7樓:漠影歌
賦值運算子優先順序最低,所以計算方式是由右向左, 首先是 a*=a = 12 * 12 = 144, 算出的結果 再計算 a = a - 144 = -132, 然後再計算 a = a + (-132) = -120;
不明白繼續追問!
8樓:嗜玩魔界
變數a運算前是多少?
c語言中 若a=5; !(a--)等於多少? 為什麼?
9樓:匿名使用者
int a=5;
int a=5;
int a=5;
int a=5;
a-- 計算時用a的值,計算完後a=a-1;
--a 先a=a-1,計算時用的是a減一後的值;
10樓:系榆
0,a--即 !(4),4為真 真的非運算為假,假在c語言中用0表示
11樓:匿名使用者
0,運算子"!"只有兩個值,0或者1,顯然,此時的值為0
12樓:朱聽筠
!(a--) 重點理解這個地方,這個可以這麼理解:(!a)--
所以這個a首先被非,得到0,再減減就得到-1.
c語言指標:int a[3][4],(*p)[4];p=a;為什麼*p會等於&a[0][0]? p
13樓:逛a逛
你需要理解 &a a a[0] 和a[0][0]的區別,其中&a是得到整片陣列的地址,a是第一行的地址,a[0]是第一行陣列的地址,a[0][0]是第一個元素的值。&a=a = a[0]=&a[0][0]。他們的值是一樣的,都是地址,但是他們代表的步長不一樣。
步長體現在你做加法的時候,比如(&a++),地址就偏移了sizeof(int )*3*4的後面,到了這一片陣列的後面,a++就是偏移了sizeof(int)*4,偏移到a[1],a[0]++就是偏移了sizeof(int),到了&a[0][1].而你說的*&a[0] = a[0],是個地址。a=&a[0].
c語言中0102為什麼等於,c語言中0102為什麼等於
寫錯了吧。是 012 吧。0開頭的 012 是 八進位制整型 12,等於 十進位制 10printf d n 012 輸出 10若用 格式 o 則輸出 12 printf d n 010 2 010是八進位制數 十進位制8 8 2 10 以 d形式輸出 嘛?010是八進位制的10,換算成十進位制是8...
為什麼c語言中a0a0a0是相等的
陣列的bai首地址也是指 du針,int a 10 int p.這裡的a和p都是指標。只zhi不過,陣列的首地dao址不能改變 專,而p可以指向其他地址。屬 a 0 表示陣列a的第一個元素 a 0 也表示陣列的第一個元素 a 0 表示陣列的第一個元素的地址,也就是首地址。誰告訴你這3個是相等的?為什...
在C語言中194為什麼等於
你們都誤會lz了,不是他不懂這個 是什麼意思,是覺得為什麼不是 19 4 4 5 1,跟你說個底層的,取餘的計算過程是這樣的,先做整除操作 19 4 4,得到的 4就是下一式子中右邊的第二個數即 4而不是要取 5,所以 19 4 4 4 3 自然餘數就是 3而不是1了。是 取餘 運算子,19除以4等...