c語言一道題目,求解,若a是int型變數,且a的初值為6,則執行表示式a a a a後a的值為

2021-04-19 19:46:58 字數 1717 閱讀 9263

1樓:匿名使用者

從右往左依次計算

a-=a*a得到a=a-a*a=6-6*6=-30a+=a得到a=a+a=-60

所以最後a的值為-60

2樓:放假呢想你

先a*a。。比如a等於1

若a是int型變數,且a的初值為6,則執行下面表示式後a的值為 。 a+=a-=a*a

3樓:

從右到左開始運算。

首先a-=a*a

a*a=36

a-=a*a 就是 a= 6-36=-30然後再

a+=a 就是 a=-30 + -30 =-60

若a為int型別,且其值為3,則執行完表示式a+=a-=a*a後a的值為

4樓:匿名使用者

a=-12。

按照bai從左至右結合性和優先順序順序du,先計算a-=a*a,最後a結果為a=a-a*a,zhia=3-3*3=-6;

再計算a+=-6,因為此時a的值已dao經變成了版-6,所以計算過程是a=a+(-6)=-6-6=-12。

優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。表示式的結合次序取決於表示式中各種運算子的優先順序。優先順序高的運算子先結合,優先順序低的運算子後結權合,同一行中的運算子的優先順序相同。

5樓:匿名使用者

執行(a*a),得值來

為9,注意此時還源

未賦值給變數a。bai

再執du行a-=a*a,即 a=a-a*a,亦 a賦值為 3-9,得 a=-6。

後面你zhi就明白了,因為「dao賦值表示式的結果是最左邊賦值運算子左邊變數(或者表示式)的值」。執行完賦值表示式(a-=a*a)後,a值為-6,   最後執行 a+= (a-=a*a).

因而 有a= -6 + -6

6樓:示申僉

a+=a-=a*a;

復合賦值表示式,從右到左執行,可以分拆成:

a-=a*a;

a+=a;

a的原值為3

a-=a*a;

相當於a=a-a*a=3-3*3=-6;

再執行a+=a;

自然就成了-12

7樓:匿名使用者

a+=a-=a*a可以看成

a=a-(a*a);

a=a+a;

明白嗎?

8樓:歌行者

先執行a-=a*a,即a=a-a*a

3-3*3=-6,a=-6

再執行a+=a,即a=a+a

-6+(-6)=-12

a=-12

a的值是-12

若a是整型變數,且a的初值為6,則執行表示式為a+=a-=a*a後a的值為

9樓:qqsm木筆

a的值為-60,運算是從右到左運算的,先算a-=a*a,得出a=-30,然後a+=a;算出最後a=-60;

10樓:新頁

-60 可以這樣理解表示式 a= a+ ( a = a- ( a* a ) )

11樓:小曹大人

-24可以拆開為 :a+=a,a-=a*a;

即 6+6=12,12-36=-24;

一道c語言題目,一道C語言題目

include include 標頭檔案 include 標頭檔案 int main int a 111 b 100 c 111 n,m,k 0,t,l 0,s scanf d d n,m srand unsigned time null srand 就是給rand 提供種子 for int i 0...

求教!一道C語言題目,求教一道C語言的題目!

你主函式裡m肯定還是1,func函式中的靜態變數應該是8了吧。你檢視變數值的位置是什麼樣的,如果在主函式裡檢視肯定是主函式中的m,即為1,因為發生作用域覆蓋了。你是第二次進入func後設定斷點,檢視m數值的可定為8。由程式執行結果為8 此時i 3,m 3 1 4,因此返回值為8 17 此時i 3 8...

求教一道C語言的題目,求教一道C語言題目

while 1 你這裡輸入的是 d 所以輸入數字是正常進入了if 字元就進入了else 因為你if後面是加了break,所以能正常跳出while 1 這個死迴圈,而else你是沒有加上break的,所以是一直在while 1 死迴圈。因為你定義輸入的是 d的形式,也就是整形,所以你輸入字元型的時候,...