1樓:匿名使用者
過程如下:
先a*a a-=a*a 之後 a=a-a*a然後 a+=a 此時a=a-a*a所以結果是2(a-a*a)
2樓:匿名使用者
你都沒有說a的初值呢?倒敘算。
c語言一道題目,求解,若a是int型變數,且a的初值為6,則執行表示式a+=a-=a*a後a的值為
3樓:匿名使用者
從右往左依次計算
a-=a*a得到a=a-a*a=6-6*6=-30a+=a得到a=a+a=-60
所以最後a的值為-60
4樓:放假呢想你
先a*a。。比如a等於1
若a是int型變數,且a的初值為5,則計算a+=a-=a*a,表示式後a的值為:
5樓:匿名使用者
a=-40
因為+=和-=優先順序一樣,結合方向為右到左,所以a+=a-=a*a等價於a+=(a-=(a*a))即a=a-a*a=5-5*5=-20
a=a+a=-20-20=-40
6樓:匿名使用者
感覺是-40吧,先運算a*a=25(注意:此時a的值並未變化),第二步算a-=25,即a=a-25,a=-20,再運算a+=a(此時a=-20),所以結果是-40。
7樓:匿名使用者
-40原來字數少回答不了。。。
c語言 設有語句int a=4;則執行了語句a+=a-=a*a後,變數a的值是多少?
8樓:文化廚子
答案:抄-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。
9樓:匿名使用者
又來討論這類沒有意義的語句.告訴你,這樣地寫語句在標準c中是沒有定義的.
雖然在版編譯器能得出結果,但是由權於標準c沒有明確定義,那麼編譯器可根據自己來作出乙個規則.所以不同編譯器會得出不同的結果.
請你看我回答別人的乙個問題就知道了.
10樓:
等於號是從右向左計算的……
不過,誰這麼蛋疼,用這種表示式?
若a為int型別資料,且其值為3,則執行完表示式a+=a-=a*a後,a的值是?請通過程式驗證。
11樓:忘了所有沒有痛
執行完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。
12樓:墨汁諾
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
13樓:匿名使用者
-12a+=a-=a*a從右邊往左邊算.先計算a-=a*a,即a=a-a*a=3-3*3=-6然後計算a+=a,即a=a+a=-6+(-6)=-12
14樓:匿名使用者
-12a*a為9a-=9 a變成-6a+=a 為-6+-6,所以為-12
15樓:匿名使用者
先執行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的值為
16樓:匿名使用者
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。
優先順序從上到下依次遞減,最上面具有最高的優先順序,逗號操作符具有最低的優先順序。表示式的結合次序取決於表示式中各種運算子的優先順序。優先順序高的運算子先結合,優先順序低的運算子後結權合,同一行中的運算子的優先順序相同。
17樓:匿名使用者
執行(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
18樓:示申僉
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
19樓:匿名使用者
a+=a-=a*a可以看成
a=a-(a*a);
a=a+a;
明白嗎?
20樓:歌行者
先執行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
若有定義語句int a=12,則執行表示式a+=a-=a+a後a的值為多少?
21樓:希聲和寡
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)=-24
22樓:最萌美少女
若有定義語句int a=12,則執行表示式a+=a-=a+a後a的值為-24。
計算過程:
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。
23樓:希聲和寡
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
若int型變數a=2,則執行以下語句後a的值是_______。 a+=a-=a+a;
24樓:匿名使用者
a+=a-=a+a;
先計copy
算 a+a 等於4 再計算 a-=4 得 a = a-4 由於此前的a 為
2 所以這時的a = -2
再計算 a+=a 得 a = a+a 由於 上一次a 的值已經變成 -2 所以 a 最後的值為 -4
若int a=2,則執行完表示式a–=a+=a*a後,a的值是幾
25樓:匿名使用者
2*2=4,a+= 4 => a為6,表示式也為6
a-=6,因此a為0
26樓:go學龍
a的值為0
a += a*a 》a = a+a*a=6
a -= a += a*a ?>> a = a - (a += a*a) = 0
i為int型變數,且初值是3,有表示式i a 5,b 10i b,b a ,表示式的值是?變數i,a,b分別是
逗號表示式取右邊的結果,題目中計算是這麼取順序的 a 5,b 10 且整個右式的左半為10,即i 10 i b i 13 b a b 15,且整個右式的右半為15,即i 10 15最後計算整個表示式的值i 25,a 5,b 15。下面那道類似,切記逗號表示式優先順序最低,且取最右邊的值,自己算吧。把...
整型變數a的值為b的值為3,則執行表示式b ba 後兩變數的值為
a 10,b 0,後面那個a 不執行的 錯了,a是10,b是0 a一定會自加所以a 4 b b b a b 0所以 a 4,b 0 設a b c都是整型變數,如果a的值為2,b的值為3,則執行c a b 語句後,變數b的值是?求詳解 如果a的值為2,b的值為3,則執行c a b 語句後,變數b的值是...
若x i j和k都是int型變數,則計算下面表示式後,x的值是(Cx(i 4,j 16,k 32)A 4 B
這個問題主要涉及c語言運算子優先順序,依次算右邊括號裡的3個賦值運算,先i 4,然後j 16,最後k 32。而這3個運算中間有逗號,逗號運算的話,取最後乙個,所以再把k值賦值給x,k值是32,故x的值最後為32。樓上皆中。32因為逗號表示式是按從左到右進行運算,以最右邊的表示式的值作為整個表示式的值...