c語言裡關於自增自減運算子的問題

時間 2021-08-13 22:27:37

1樓:金色潛鳥

字首加/減 與 字尾加/減 的不同 -- 在於表示式 裡 的 值。

表示式 裡, 字首加 要先自增, 後使用。

表示式 裡, 字首減 要先自減, 後使用。

表示式 裡, 字尾加 要先使用原值。出了表示式後 再自增。

表示式 裡, 字尾減 要先使用原值。出了表示式後 再自減。

a=++i; 字首加 要先自增, 後使用。執行: i=i+1; a=i ; ( i=7; a=7;)

b=i++; 字尾加 要先使用原值。出了表示式後 再自增。執行 b=i; i++; (b=7;i=8)

a=--i; 字首減 要先自減, 後使用。i=i-1; a=i; (i=7;a=7)

b=i--; 字尾減 要先使用原值,執行. b=i.i=i-1; (b=7; i=6)

printf("%d\n",-i++); 字尾加 要先使用原值。出了表示式後 再自增. 列印 -i; (-6) 出了表示式 i=i+1;(i=7)

printf("i=%d\n",i); 列印 i=7

2樓:時尚裝飾萊兒

我在vc6·0上編寫了一下 這是截圖

首先是前兩個7 因為i++是先賦值在進行加一運算,++i是先加一然後再進行賦值操作,所以a,b中儲存著值是7,此時i的值是8

然後是後面兩個7,同理 a為7,b為7,此時i為6同理,-i++中因為++在後面 所以先輸出-6,然後在把i加一 這是i變成了7

最後 根據輸出格式 輸出了  i=7;

c語言自增自減運算子用法

3樓:匿名使用者

a+++4等價於(a++)+4 從左到右盡可能多的取運算子

先理解自增自減的含義,他的作用就是使變數加一,這個是不會受到是字首或是字尾的影響的

(a++)+4=7 a=4

4樓:匿名使用者

c語言的抄前置++和後置++,稱為自增運算子前置--和後置--稱為自減運算子,下面以自增運算子的區別來加以介紹,自減類似

如果單獨寫 自增運算子為乙個語句,二者沒有區別++i; 和 i++; 都是讓i+1賦值給i但是如果把自增運算子寫入到另外表示式中二者就有很大區別了例如i=5;

j=i++;

執行後i為6,j為5

i=5;

j=++i;

執行後i為6,j為6

5樓:戀心

++a是先自加後操作,a++是先操作後自加,--也類同。

a+++4這種題是很容易混淆的,版而且對於一些運算規則權,不同的編譯系統有不同的規定,不建議樓主使用。

如果是作業題的話,直接用程式執行看看結果是多少就行了。

6樓:

int a[3];

for(i=0;i<3;) scanf("%d",a[i++]);

正確int a[3];

for(i=0;i<3;) scanf("%d",a[++i]);

下標越界

for(i=0;i<3;) scanf("%d",a[i++]);

相當for(i=0;i<3;)即回

for(i=0;i<3;i++) scanf("%d",a[i]);

而for(i=0;i<3;) scanf("%d",a[++i]);

相當for(i=0;i<3;)

所以下答標越界

7樓:匿名使用者

a+++4難道是++4優先????

c語言三目運算子問題。

8樓:陌上

如果y值為0則輸出的是後面的「no」然後回車,如果不為0則直接輸出回車。判斷語句中0為假。不為0為真。

關於C語言中自增自減運算子的疑問

對於每次判斷,會先判斷count的值是否小於5,然後count count 1如果此時條件滿足則繼續,否則退出迴圈。第1次遇到while判斷時 count 0判斷後count為1.第2次遇到while判斷時 count 1判斷後count為2.第3次遇到while判斷時 count 2判斷後coun...

c語言的自增自減運算子的題,求思考過程

i 是先使用i的值,再對i進行加1操作.所以在p i i i 裡面在計算p的值之前,i本身的值總是5.所以p的值就是3個5所以是15.在運算完p之後,因為有3個i 所以i做了3次自加運算,所以i最終是8.q的變化同理.所以最終列印結果是 15,15,8,8 你的問題我覺得涉及到對自增運算子的理解,i...

為什麼c 迴圈要使用後置的自增自減運算子,而不使用前置的自增自減

砍侃看 實際上,c 中的for迴圈中的計數器使用的是前自增還是後自增沒有什麼不同,除非自增的時候又參與了表示式運算,畢竟前自增與後自增還是有所不同的。c primer書中建議的是使用前自增,如果僅僅是計數器本身的自增操作,使用前自增還是後自增,完全看個人的喜好 前置和後置都可以用,看你設計需求而定 ...