C語言的(++j) + (++j) + (++j)問題。


 

  菜鳥教程C語言在線編輯:https://c.runoob.com/compile/11

  

驗證就是22.想了一會,發表下自己的看法。
我覺得多個自增dao在一起,只允許配專對原則。
也就是屬說每次只有兩個自增的時候才能滿足先算括號;
先說q=(++j)+(++j)+(++j)=((++j)+(++j))+(++j)
此時第一個和第二配對,先算括號自增,j=7,在求和為7+7=14。
此時就是14在與(++j)配對。先算括號自增j=8,在求和得14+8=22.
如果是4個(++j),則22與(++j)配對,先算括號自增j=9,在求和得22.+9=31;
5個就是41,
6個就是52…………
同理可以推出N個的情況,初值為a,則N個前自增后的和為(a+2)*N+(0.5)*(N-1)(N-2);

關於與j++的混用

  

  1.對++j的處理分兩種情況,一種是在表達式進行運算之前就將++j計算,然后再進行表達式運算;第二種是在表達式運算的過程當中進行++j自增並計算表達式的值。
  2.兩種情況對j++的處理方式一樣,都是表達式運算完成后自增,所以j++對表達式的運算無影響。

  

  

 

   

     https://zhidao.baidu.com/question/59601799.html

  https://zhidao.baidu.com/question/1517683005339023820.html

  https://www.cnblogs.com/IAmBetter/p/3181915.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM