第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

可以幫我解答一下嗎?


#include <stdio.h>
int main()
{
??? int a=100;
??? printf("%d\n",a++);?
??? printf("%d\n",++a);
??? printf("%d\n",--a);
??? printf("%d\n",a--);
??? printf("%d\n",a+1);
?printf("%d\n",a);
??? return 0;???
}
結(jié)果是100 ,102,101,101,101,100

++自增1--自減1??? 那a++不是101么?a--不是99么?

可以詳細解答一下嗎??

正在回答

4 回答

//a++與++a雖然運行完結(jié)果一樣,但是運行順序不一樣,a++先將已有a值輸出,再對a進行重新賦值,a的新值將被應(yīng)用到下一個循環(huán),此循環(huán)仍用a++之前的a值;而++a先將a值自增1,得到新的值,將這個值賦給a,再將a輸出。a--與--a的關(guān)系也一樣。放到例子中來說就是如下:
#include?<stdio.h>
int?main()
{
????int?a=100;
????printf("%d\n",a++);//a值先輸出,故為100,再賦值,故a=101,此結(jié)果應(yīng)用到下一循環(huán);??
????printf("%d\n",++a);//a值先進行新賦值,a=a+1,即a=102,(由于a的值已被賦為101,故此處為102);再輸出102.
????printf("%d\n",--a);//先計算,a=101,再輸出101;
????printf("%d\n",a--);//先輸出101,再計算a=100;
????printf("%d\n",a+1);//直接輸出101;
????printf("%d\n",a);//輸出100.
????return?0;????
}

2 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕村1253227 提問者

非常感謝!
2017-05-25 回復(fù) 有任何疑惑可以回復(fù)我~

? ??printf("%d\n",--a);//先計算,a=101,再輸出101;為啥不是98

????printf("%d\n",a--);//先輸出101,再計算a=100;為啥不是99


0 回復(fù) 有任何疑惑可以回復(fù)我~

++a和--a的運算規(guī)則是先運行后取值,就a++說明,a自增1后,再取值;a++和a--的運算規(guī)則是先取值后運算;

a++表示出來是100,實際上是表示未運算時就已經(jīng)取值出來的,而它運算后就是101


0 回復(fù) 有任何疑惑可以回復(fù)我~

a++是計算之后自增,++a是計算前自增,int a=100,a++即顯示100,但存入編譯器的a為101

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
C語言入門
  • 參與學(xué)習(xí)       926895    人
  • 解答問題       21517    個

C語言入門視頻教程,帶你進入編程世界的必修課-C語言

進入課程

可以幫我解答一下嗎?

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號