1樓:傻子真已認證
答案為d,自增自減運算運算的變數只能是整型,字元型和指標變數。
若將float改為int,則計算步驟為:
first,x的值自增三次。
second,將運算的值賦值給y.
//結果y的值為64.
因為「++」為同級,高於"*"運算,前兩者又高於「=」運算。
2樓:匿名使用者
這個和壓棧順序有關
先算了++x
x為2然後
++xx為3
此時,引數壓棧
進行運算的兩個引數都是3
3 * 3 = 9
3樓:匿名使用者
問題補充回答:
++x*++x*++x先計算前面一個運算:++x*++x
的結果為9,然後進行後面一個乘法運算時先執行++x(x變為4)然後與前面結果9運算的36
4樓:匿名使用者
計算優先順序的問題
++為2級運算子優先於*3級
y=++x*++x實際為y=(++x)*(++x)所以為已知
float x=1,y; 則y=++x*++x的結果a.y=9
5樓:匿名使用者
寫這種程式的人應該立即辭退, 永不錄用!!
俺曾經也分析過
6樓:
怎麼會選a呢?
按上面這個運算的話 y=6.000000
下面是運算圖:
7樓:莫辰
是6.000000吧. 後面那個是 24.000000
c語言 float x=1,y 則y=++x*++x的值為多少
8樓:殤心
由於是float型,樓上的你小數點後面拉了6個0
9樓:匿名使用者
實數不能進行++運算,該表示式錯誤
10樓:匿名使用者
先說答案吧,應抄該是襲:
x = 3; y = 9;
原理是,c++是按照運算子的優先順序和結合性來決定運算的順序的,「++」運算子的分為「前加」:++x和「後加」:x++;但是無論是前加還是後加,它的優先順序都必乘法「*」的優先順序高;
所以,應該先算2次++x,這時x = 3;
然後,再算乘法,因為這時x的值已經是3了所以y = 3 * 3 = 9;
11樓:匿名使用者
y=++x*++x=6
已知正實數x,y滿足 x 1 y 1 16,則x y的最小值
因為 y 1 16 都是正數,因此由 x 1 y 1 16 可知,x 1 也是正數,那麼由均值不等式可得 x y x 1 y 1 2 x 1 y 1 2 16 8 因此 x y 最小值為 8 當且僅當 x 1 y 1 且 x 1 y 1 16 也即 x 5,y 3 時 x y 最小值為 8 y 1 ...
已知函式y x x 1 的定義域為,分別求f
解 因為f x 1 的定義域為 1,2 2 1 1,1 1 0 所以f x 的定義域是 0,1 設3x t1,x 3 t2 因為f t1 f t2 的定義域都是 0,1 所以0 t1 1,0 t2 1 0 3x 1,0 x 3 1 0 x 1 3,0 x 3 取交集,得到定義域是 0,1 3 設t ...
y1和yxx不是同一函式,但他們的對應法則相同嗎同一
兩者不是同一函式。y 1是常函式,影象是一條直線。y x x,定義域是x 0 u 0,影象是缺少點 0,1 的直線y 1。雖然y x x的值域也是y 但定義域與函式y 1不同,函式的定義域與對應法則 你應該曉得什麼叫等價轉換吧,就是因為y x 2 1 x 1 不可以直接化成y x 1所有才有了後面的...