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

2021-04-19 19:46:59 字數 2740 閱讀 6592

1樓:匿名使用者

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。

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

2樓:匿名使用者

執行(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

3樓:示申僉

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

4樓:匿名使用者

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

a=a-(a*a);

a=a+a;

明白嗎?

5樓:歌行者

先執行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為int型別資料,且其值為3,則執行完表示式a+=a-=a*a後,a的值是?請通過程式驗證。

6樓:忘了所有沒有痛

執行完bai表示式dua+=a-=a*a後,a的值為:-12。

表示式執zhi行的過程:首先明白賦值運算子的dao結合專性為自左向右,所以說先執行最屬右邊的表示式,同時乘除運算子的優先順序大於賦值運算子,所以說先執行a*a,因為a=3,所以說a*a=9,然後執行a-=(a*a)=a-=(9)等價於a=a-(a*a)=3-9=-6。

然後a=-6,然後執行a+=a等價於a=a+a=-6-6=-12。所以說表示式執行完後a的結果為-12。

7樓:墨汁諾

a=-12。

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

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

或: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

8樓:匿名使用者

-12a+=a-=a*a從右邊往左邊算.先計算a-=a*a,即a=a-a*a=3-3*3=-6然後計算a+=a,即a=a+a=-6+(-6)=-12

9樓:匿名使用者

-12a*a為9a-=9 a變成-6a+=a 為-6+-6,所以為-12

10樓:匿名使用者

先執行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

c語言問題:若a為int型別,且其值為3,則執行完表示式a+=a-=a*a後,a的值為-12。請問怎麼算的?

11樓:匿名使用者

運算順序是從右到復左。制

a-=a*a; //這時 a=3-9=-6a+=-6;// a=-6 + -6 =-12其實這裡涉及一個寄bai存器複用問題,在連續du等號操作中,zhia佔用的暫存器在中途被dao更改了,因此才有-6+-6 ,而不是3+-6

12樓:我耐秋妞妹

先算:a-=a*a,其等價於

a=a-a*a

=3-3*3

=-6再算a+=-6,其等價於

a=a+(-6)

=(-6)+(-6)

=-12

這樣可以麼?

13樓:幻想的渴望

自右向左運算

那麼可以拆分為:

首先a*a=9;

a-=a*a,實際就是a=3-9=-6;

a+=a,實際就是a=-6+(-6)=-12

14樓:齷齪胡人

從右到左 a-=a*a 就是a=a-a*a 算出a=-6 a+=a 就是a=a+a 就是-6+(-6)=-12

15樓:匿名使用者

從右往左運算a*a=3×3=9此時a=3,a-運算a=a-9即a=3-9=-6此時a=-6,再進行a+運算a=a+(-6)即a=-6-6=-12

若a為int型別,且a125,則執行下列語句後的輸出是printfd,o,x n ,a,a 1,a

因為 d是以十進位制形式bai 輸出a 125的值,即125 o是以du八進zhi制形dao式輸出a 1 126的值,即176 x是以十六進位制形式輸出a 127的值,即7f所以輸出結果為 125,176,7f 125,176,7f a 125 printf d,o,x n a,a 1,a 2 結果...

設x為int型別,其值為11,則表示式 (x1 3 的值是?A,3 B,4 C,11 D

首先 x 1 3 的值是抄 表示式 x 1 3 運算到最後一bai 步所得的值。dux 先使用 zhix的值 x 11 乘上1再除3得到的值為dao3但x的值仍未11,之後x自加1為12,即x的值為12所以到最後x的值為12,而整個表示式 x 1 3 的值為3即答案為 a.3 結果是3,選a x 先...

若a b c為整數,且a b c 55,a bc 8,則a

把a拿b,c代替,得到 bc b c 63 b 1 c 1 64 b 1 2 c 1 32 b 1,c 31,a 23,abc 713b 1 4 b 3,c 15,a 37,abc 1665c 1 16 b 1 8 b 7,c 7,a 41,abc 2009c 1 8 最大值是2009,最小值是71...