求c語言高手解設有語句 int a 3執行語句a a

2021-03-10 16:24:43 字數 3500 閱讀 4482

1樓:匿名使用者

賦值運算順序自右而左,首先算a*a,即3*3的值為9,然後算a-=9,即a=a-9,值為-6,最後算a+=-6,即a=a+(-6),值為最後值為-3

2樓:示申僉

賦值語來句,從右到左依次執行:

源那麼:

int a=3;

a+=a-=a*a;

相當於:

a-=a*a;

a+=a;

然後相當於:

a=a-a*a;

a=a+a;

由於a初始化為3:

a=a-a*a=3-3*3=-6;

a=a+a=-6+(-6)==-12;

所以最後結果就是-12

3樓:浮沉8落寞

a+=a-=a*a;

相當於:

a-=a*a;

a+=a;

然後相當於:

a=a-a*a;

a=a+a;

由於a初始化為3:

a=a-a*a=3-3*3=-6;

a=a+a=-6+(-6)==-12

4樓:匿名使用者

-12,a+=a-=a*a你應該從右向左算,還要明白-=,+=的意思

5樓:眼眶的溼潤

a-=a*a -> a=a-a*a -> a=3-3*3=-6

a+=a-=a*a -> a+=-6 -> a=a-6=-6-6=-12

a=-12

希望對你有幫助,望採納謝謝。

設有語句int a=3; 則執行了語句a-=a+=a*a;後,變數a的值是( )

6樓:匿名使用者

0第一步:

a -= a+=9

運算後a為3

第二步運算:

a+=9後並返回a的值,得

a -= a

此時a的值為12

第二步:結果為0

7樓:匿名使用者

賦值運算是從右到左的

上面的語句運算順序是:

a-=a*a;

a+=a;

計算第一個後a 的值是-6,再計算第二個,a 的值就是 -12

8樓:匿名使用者

「=」是賦bai值符號,賦值表達

du式先運算zhi「=」後的表示式,再將dao表示式的專值賦給「=」前的變數

屬。運算順序:

1、a+=a*a ==>a=a+a*a ==>a=3+3*3 ==>a=12

2、a-=12 ==>a=a-12 ==>a=0

9樓:蝸牛空

樓上的解說是正確的,但是算了算。 3-=3+=9 值應該是 -9

10樓:匿名使用者

執行後結襲果是0,最後是bai減法,

dua=3,之後zhi=9、18,最後a=18-18在這裡看一下

11樓:匿名使用者

這題目鬱悶的很,,,

我試著分析下

int a=3;

a-=a+=a*a;

分析分析表示式執行過程:

1.a-=(a=a+(a*a))

2.a = a-(a+a*a);

執行後 a=-9;

***選項裡邊木有;

12樓:藏劍畫影

答案選b。

首先,先算a+=a*a,即a=a+a*a即是a=3+3*3,故a=12,;

接下來算a-=a,即a=a-a,此時a已經等於12了,故式子為a=12-12,即a=0.

你採納專的那個屬人說對了順序,但是看錯了你的a+=和a-=;

mantoloo說的是正確的

c語言 設有語句int a=4;則執行了語句a+=a-=a*a後,變數a的值是多少?

13樓:文化廚子

答案:抄-24

1、a = 4,先算a * a,表示式的值為襲16。

2、+和-同一優先順序,因為是複合賦值運算結合性從右向左進行,所以此時算

a -= 16 (a *a 表示式的值是16)相當於a = a - 16;

此時a=-12

3、最後算:

a+ = -12(a-=a*a表示式的值是-12)。

相當於a = a + (-12);

因為a = -12,所以最後的值是-24。

14樓:匿名使用者

又來討論這類沒有意義的語句.告訴你,這樣地寫語句在標準c中是沒有定義的.

雖然在版編譯器能得出結果,但是由權於標準c沒有明確定義,那麼編譯器可根據自己來作出一個規則.所以不同編譯器會得出不同的結果.

請你看我回答別人的一個問題就知道了.

15樓:

等於號是從右向左計算的……

不過,誰這麼蛋疼,用這種表示式?

設有語句 int a=3 ; 則執行了語句 a+ = a * a後,變數a 的值是( ) a、3 b、0 c、9 d、12

16樓:匿名使用者

賦值運算是從右到左的上面的語句運算順序是:a-=a*a;a+=a;計算第一個後a的值是-6,再計算第二個,a的值就是-12

17樓:日出日落三十天

d a=3+3*3=12

設有語句 int a =3;則執行了語句a + = a - = a*a;後,變數a的值是?

18樓:雲的故鄉

先計算a*a的值為9,然後,a-=a*a就是a=a-a*a的a的值為-6,然後a+=(-6),就是-12,最後答案就是-12

設有語句 int a=3;,則執行了語句 a+=a-=a*=a;後,變數 a 的值是

19樓:螞蟻_大樹

運算的過程是,從右向左即

(a+=(a-=(a*=a)));

第一步:a*=a // 結果a=9

第二步:a-=a //結果 a=0

第三步:a+=0//結果 a=0

注意.在計算的過程中,a的值是在不斷的變化的,因為有賦值的過程.

20樓:淦海瑤

你程式設計序執行一下不就知道了,

蛋疼的語句

21樓:匿名使用者

不對。。不能進行這樣的賦值

22樓:匿名使用者

實踐檢驗:a = 0

23樓:

這個應該就等於

a*=a;

a-=a;

a+=a;吧

C語言若有定義語句 int a 41,

p 1 3 樓主追問 char s 10 則strlen s 的值為 strlen是計算字 dao符串長度,遇到 回 0 結束返回長度,所 答以是1 struct numn struct num pn n 則表示式pn b n.a pn b的值是 pn結構體指標指向結構體n,n被初始化成 pn b ...

設有語句int a 3,b 4c 5則表示式

1和1對於bai a b c 1 b c 2 前後接兩個表du達式zhi,一個 是 a b c 1,另dao一個是b c 2 第一版個表示式結果為c 1即2 因為 a b 非0,故 a b 結果為0 第二個表示式結果為6,所以這兩個表示式均為非權零,所以它們進行邏輯與操作之後的結果為1 對於a b ...

c語言程式設計,求高手,C語言程式設計,求高手!!!!!!!!

include void main if max i int num scanf d num for n 0 d n num n printf d n 位序從0開始 include int main if noswap 1 break for i 0 i 10 i printf d a i prin...