c語言基礎複合賦值運算子式子aaa

2021-03-03 20:29:07 字數 1349 閱讀 9529

1樓:匿名使用者

先從假設一個數bai開始du。

假設a=10;

a+=a*=a/=a-6; 此時zhia=10a+=a*=a/=4; 此時a=10

a+=a*=2; 此時a=2

a+=4; 此時a=4

最後a=8

在賦dao值運算子回

當中,有一類c/c++獨有答的複合賦值運算子。它們實際上是一種縮寫形式,使得對變數的改變更為簡潔。

c語言是一種計算機程式設計語言,它既具有高階語言的特點,又具有組合語言的特點。它的應用範圍廣泛,具備很強的資料處理能力,不僅僅是在軟體開發上,而且各類科研都需要用到c語言,適於編寫系統軟體,三維,二維圖形和動畫,具體應用比如微控制器以及嵌入式系統開發。

複合運算子計算 a+=a*=a/=a-6 怎麼?

2樓:匿名使用者

-的優先順序較高,復+=、*=、/=的優先順序相制等,較低,而且是右結合的。所以等效語句如下:

a = a / (a - 6);

a = a * a;

a = a + a;

在gcc下輸入10,結果是8,與上面的**相符,vc2008下也是8。

ps:如果a是int的話每次都要向下取整

第一次a = a / (a - 6) = 10 / 4 = (int)2.5 = 2

第二次a = a * a = 2 * 2 = 4

第三次a = a + a = 8

如果是float或者double就沒這個步驟了

3樓:匿名使用者

樓主是這樣抄

你補充問題中所述是「a=10/(10-6)=5/2 然後 10*5/2=25 然後10+25=35」

但貌似是這樣

a=a/(a-6)=2.5 程式取整數 所以a的結果為2a=a*a是a=2*2結果為4 不是10*之後的結果a=a+a是a=4+4結果為8不是10+之後的結果

4樓:匿名使用者

先算a/=a-6,9-6=3,a被賦值9/3=3

接下來a*=a,也就是a=a*a,注意a已經改變為3了,所以a被賦值為9

最後a+=a,也就是a=a+a,此時a被賦值為9+9=18

5樓:上虞潘永傑

依次是a1=a/(a-6)

a2=a*a1

a=a+a2

6樓:匿名使用者

a/= (a-6) -> a/(a-6)a*= a/(a-6) -> a2/(zhia-6)

dao2

a+= a2/(a-6)2 ->2a2/2(a-6)2

c語言基礎是什麼,C語言基礎是什麼

c語言就是基礎啊。c語言其實是開發語言的基礎 一般大學第一門程式開發課,一般都開c語言的,也有學校開c 但絕對不會有一上來就讓學彙編的 先學計算機操作基礎,然後是vf,然後是c程式語言 前面屬於準備期,學成後,學c 要有一定的數學基礎,懂線性代數最好 要有一定的英語基礎,看的懂英語程式設計中的含義,...

C語言基礎問題,一個C語言基礎問題。。。

補充一點 兄弟,你是才入門學c語言的吧 我給你一個忠實的建議 學語言千萬不要在不值得的細節去扣 比如 i的問題 一般高手是不會寫出很難懂的語句 好的語言 可讀性 是很重要的 的確,有的時候高手也會被一些邏輯問題搞錯了,上機實踐是最好的確認方法 下面的分析真的錯了,因為for迴圈語句在意義上相當於我分...

關於C語言的基礎題,關於C語言的基礎題。

11c define和if都是關鍵字,不能定義為識別符號12b printf執行順序是從右向左,先自加再輸出13d example是結構體例項 14d c語言只能巢狀呼叫 只有函式,沒有過程之說 編譯時檢查語法15d 可以首先排除ab的,很容易得出答案 11,c 因為if和define都是 關鍵字 ...