1樓:我是果瘋
a-=a的意思為a=a-a,先用a減a,然後再將得到的結果賦值給a。-=實際上是一種縮寫形式,使得對變數的改變更為簡潔。
運算時,可以將其寫成熟悉的形式,從右向左依次計算,注意在每次計算時,變數的值會發生改變, 如不注意,就會導致錯誤的情況發生。
擴充套件資料:複合賦值運算子有下列這些:
符號 功能
+= 加法賦值
-= 減法賦值
*= 乘法賦值
/= 除法賦值
%= 模運算賦值
<<= 左移賦值
>>= 右移賦值
&= 位邏輯與賦值
|= 位邏輯或賦值
^= 位邏輯異或賦值
2樓:匿名使用者
表示a=a-a 即a=0的意思。
1、 -=是c語言中的一個複合運算子。
2、 -=為雙目運算, 形式為:
a-=b
表示含義為:
a=a-b
3、 相對於a=a-b的形式, a-=b要更簡潔,同時執行效率也略高。
4、對於a-=a,由於左右都是a,所以等效於a=0。
3樓:浙江衛健科技****
a+=a-=a*a;為連續賦值運算,從右向左計算。
於是原始的表達
式等效於:
a-=a*a;
a+=a;
也就是a=a-a*a;
a=a+a;
例如,a=5;
那麼a=a-a*a=5-5*5=-20;
a=a+a=-20 + (-20) = -40;
最終a為-40,表示式整體值也就是a最終值,一樣是-40。
4樓:我二次元穿越
從右往左算
初始值a=12
第一步:a+=a-=[a*=a] ,先算括號裡的 ——> a*=a 即 a=a*a=12*12=144
(經過第一步後,原本初始值a=12已經變成了a=144)第二步:a+=[a-=144] ,括號裡的a-=144,即 a=a-144=144-144=0
(經過第二步後,a的值變成了0)
第三步:a+=0 ,即a=a+0=0+0=0最後答案是:0
5樓:匿名使用者
這裡的a賦值10,這個式子從右往左算,先看a=a*,它表示為:a*=a<=>a=a*a=100,a-=a<=>a=a-a=100-100=0,a+=a<=>a=a+a=0+0=0。如此計算,記住要點為a*=b<=>a=a*b。
6樓:轉轉運動鞋
a的初值呢?
a初值為12時,a+=a-=a*=a結果為0步驟:這個表達
式的運算是從右向左的:
1. a*=a:a=a*a=12*12=1442.
a-=144: a=a-144=144-144=03. a+=0:
a=a+0=0+0=0。希望對你有幫助。
7樓:啊醬咩咩噠
2a-a²
具體計算步驟如下:
1、公式拆分,按照c語言計算方法和原則,這裡的「=」意思是賦值,即將等號右邊的數值賦值到左邊去。
所以公式可以依次拆分為
(1)a1=a*a
(2)a2=a-a1
(3)a3=a2+a
a是原來的賦值
2、以此計算原來的(1)(2)(3)式
結果為2a-a²
拓展資料:
c語言中計算或者賦值式是從右往左進行計算,但是計算具有一定的優先順序,以下是對優先順序的分類:
1、最高階
出現同級別運算子時的結合方向是從左往右(下面級別沒寫結合順序時,預設是從左往右)。
( )圓括號
[ ]下標運算子號
->指向結構體成員運算子
.結構體成員運算子
2、第二級
!、~、++、--、-、(型別)、*、&、sizeof。
這一級都是單目運算子號,這一級的結合方向是從右向左。
比如出現*p++,這時*和++同級別,先算右邊,再左邊。
所以*p++等價於*(p++),而不是(*p)++。
3、第**
+、-、*、/、%
這一級都是算術運算子,結合順序和數學學習中一致的,先乘除取餘數,後加減。
4、第四級
<<、>>
這是左移、右移運算子,位運算時可能需要用到。
5、第五級
<、<=、>、>=、!=、==
這些運算子也稱為關係運算子,其中<、<=、>、>=高於!=、==。
6、第六級
&、^、|
這三個符號也是位運算子號,其中內優先順序,&>^>|。
7、第七級
&&、||
邏輯與&&優先順序大於邏輯或||。
8、第八級
? :
也稱為條件運算子號,是c語言中唯一的一個三目運算子,結合順序是從右往左。
9、第九級
=、+=、-+、*=、/=、%=
這些運算子也叫做賦值運算子,除此之外,>>=、<<=、&=、^=、|=這些賦值運算子也在這一級別內,結合順序是從右往左。
10、最低階
,逗號運算子也稱為順序求值運算子,在c語言中,運算級別最低。
8樓:墨藍
a初值為12時,a+=a-=a*=a結果為0步驟:這個表
達式的運算是從右向左的:1. a*=a:
a=a*a=12*12=1442. a-=144: a=a-144=144-144=03.
a+=0: a=a+0=0+0=0。
9樓:衡陽落雁
賦值運算子的一種
等效於a=a-a
又例如a-=b
等效於a=a-b
10樓:濡穎o隨行
a-=a就是a=a-a的縮寫,同理a-=1就是a=a-1的縮寫,c語言中還支援a+=1就是a=a+1、a/=1就是a=a/1、a*=1就是a=a*1,不明白的請補充問題
11樓:匿名使用者
a+=a-=a*=a相當於a+=(a-=(a*=a))先計算a*=a 即a=a*a,a=144;
其次a-=144 即a=a-144,a=144-144=0;
最後a+=0 即a=a-0,a=0
12樓:匿名使用者
右結合的
a+=a-=a*=a等價於a+=(a-=(a*=a))所以就是0
"匿名"正解
13樓:匿名使用者
結果=0
不管a是多少
因為有這麼一段a-=a 不管之前計算出a的值是多少,經過了這一段a就=0了
因為都是自身的計算
14樓:杏子熟時
是從右向左,做運算,
例如,a初值是,2,
先是,a=a*a,後a=4後在,a=a-a,後a=0,然後,是,a=a+a,後a=0
這是這個語句的演算法過程!
15樓:千日一里尋真理
主要的區別前兩個是電磁感應,第三個是電磁共振。電磁共振效率低但可以實現距離比較遠(通常也只是在幾米內有實用價值),電磁感應的有效距離則是以感應線圈直徑來衡量的,基本等同於必須緊貼上。
同樣是電磁感應的pla和qi主要區別在於pla是利用現有的配件在電池上做文章,因此每一部手機都可以通過pla實現無線充電,而qi則是直接出場時就整合在手機內部了。
而電磁共振和電磁感應這兩種技術的區別其實非常小,可以說電磁共振是一種電磁感應的擴充套件應用,基本原理是相同的,這兩種標準的差異更多的不是在技術層面而是在專利授權的方面。因此a4wp出現的根本因素是因為前二者標準的專利壟斷。至於引數,無實驗不可能得到,做過實驗而得到資料的人他的研究成果也是有版權的不可能無償提供給公眾,既然是專利如果這些東西大家都知道而不用花錢的話a4wp也就根本不會出現了。
16樓:資利葉遊緞
這是賦值運算的一種
(優先順序為14,一共11個運算子號)+==丨=-=
&=>>=
/=^=
<<=*=%=
均是指左值
對自身的一種賦值行為
其中a(左值)+=
a*a(右值)
就變成了
a(左值)=a(左值)+(右值)
17樓:豆廣英歸娟
從右往左計算,先算a*=a,意思是a=a*a,這樣,a的值被改寫,然後計算a-=a,把重新被改寫的值代入,a=a-a,a值又被改寫,在把改寫後的值賦給a,結果為0
18樓:碧血玉葉花
如果你僅僅是求答案,感覺非常失望,我希望在看過答案之後你能夠有所思考!其實該問題的關鍵在於怎樣去定義一個階乘函式,把這個搞清楚了,就解決大問題了,其次是怎樣在主函式中呼叫函式!
#include
int fac(int n)
{int s=1;
int i;
for(i=1;i<=n;i++)
s*=i;
cout<>a>>b>>c;
fac(a);
fac(b);
fac(c);
temp=fac(a)+fac(b)+fac(c);
cout<
19樓:超覺之精
1、c語言中=!是兩個運算子擺放在一起,「=」是賦值運算子,「!」邏輯非運算子;
2、邏輯操作符一般將其運算元視為條件表示式,返回結果為bool型別;
3、首先對其運算元求值,若結果為0,則條件為假(false),否則為真(true);
4、優先順序上「!」先於「=」;所有比如有下面的式子,int i;i=!5;
5、這個理解為:根據運算子優先順序,!先於=;首先5作為!的運算元,求值!5的結果是bool型的false。
6、然後false隱士轉換成int型,即0;所以i裡面的值是整形0。
擴充套件資料:
c語言運算
1、c語言的運算非常靈活,功能十分豐富,運算種類遠多於其它程式設計語言。
2、在表示式方面較其它程式語言更為簡潔,如自加、自減、逗號運算和三目運算使表示式更為簡單;
3、但初學者往往會覺的這種表示式難讀,關鍵原因就是對運算子和運算順序理解不透不全
特有特點
1、c語言是一個有結構化程式設計、具有變數作用域(variable scope)以及遞迴功能的過程式語言。
2、c語言傳遞引數均是以值傳遞(pass by value),另外也可以傳遞指標(a pointer passed by value)。
3、不同的變數型別可以用結構體(struct)組合在一起。
4、只有32個保留字(reserved keywords),使變數、函式命名有更多彈性。
5、部份的變數型別可以轉換,例如整型和字元型變數。
6、通過指標(pointer),c語言可以容易的對儲存器進行低階控制。
7、預編譯處理(preprocessor)讓c語言的編譯更具有彈性。
c語言中a+=a是什麼意思
20樓:鄺桂花戲乙
賦值相當於a=a+2
也就是說每當執行這個語句時候,
a的值會變化,變化為a由原來的值增加2.
21樓:波素花逮鳥
先算a+a的值,再把值賦給a例如a
=7a+=
a等價於a=
a+a結果a=
7+7=14
22樓:方田
回答的好bai請採納哦
!!!這是c語言du中的「右移運zhi
算符」。一般情況下,他dao是按位內操作。
特點:1.雙目運算容符,就像+、-、*、/一樣,格式為(數1)>>(數2)
2.數1是被運算元,如被減數、被除數等;數2是右移位數。
3.優先順序低,結合性:從左向右運算
如:8>>1=?表示將被移數向右移動1位
如何操作?
1.化十進位制數為(注意了)對應的二進位制數,對應指格式對應2.通通右移,不足補0
3.化為十進位制數
舉例:short int a=8;a=a>>1;
1.a=0 000 1000
2.右移一位後:a= 0 000 100
3.補0:a=0 000 0100
4.化為十進位制數:a=4
舉例:int a=8;a=a>>1;
1.a=0 000 0000 0000 10002.右移一位後:
a= 0 000 0000 0000 1003.補0:a=0 000 0000 0000 01004.
化為十進位制數:a=4
c語言中的,c語言中 是什麼意思
c語言中的 是邏輯運算中的非運算。是c語言中的非運算子,在變數前面使用它,會構建非運算表示式,表示式的返回結果是個布林值 也就是隻有true或false 對變數使用時,如果變數不是布林資料型別,將會強制轉化為布林型別再使用,如整形變數123將被轉化為true,整形變數0將被轉化為false。擴充套件...
c語言中是什麼意思c語言中x是什麼意思
在c語言中,x代表的意思是按位取反的意思。將x按位取反 比如x 10101010b。那麼 x 01010101b。還要注意,在c語言中,還有邏輯取反符號 x 的返回值只有0和1兩種。如果x為0,則!x 1。如果x不等於0.則!x的返回值為0。擴充套件資料 c語言關鍵字。signed 宣告有符號型別變...
c語言中alpha是什麼意思c語言中charalpha5的含義
1 c語言程式設計中baialpha通道是一個du8位的灰度通道,該通zhi 道用256級灰度來記錄dao影象中的透明 內度資訊,定義透明 不透明和半透容明區域,其中黑表示透明,白表示不透明,灰表示半透明。2 阿爾法通道 alpha channel 是指一張 的透明和半透明度。例如 一個使用16位儲...