1樓:古道林峰
首先:i++是先使用後加減,也就是說,先輸出i的值,然後i再加減++i是先加減,後使用,也就是說,先i加減,然後輸出i的值再次printf語句中,右邊的表示式是從右向左運算的,也就是說先算i--(表示式值是8,然後i變成7),然後i++(表示式的值是7,然後i變成8),然後--i(i先變成7,然後表示式的值就是i的值7),最後算++i(i先變成8,然後表示式的值就是i的值8)。
接下來就清楚了,輸出順序是
printf("%d\n%d\n%d\n%d\n",++i,--i,i++,i--);
就是8 7 7 8
2樓:匿名使用者
這是一個謎,謎也是一種文化!
3樓:弭愷浦採楓
i++是先求i的值,再把i加1
同理:i--是先求i的值,再將i的值減1
4樓:步彤尋春綠
scanf("%lf,%lf,%lf",x,y,z);
這句你寫錯了
望了寫地址符號改為
答案應該是k=9.000000;
(x++,y--,x+y)
這句就是按順序做下去
表示式=x+y=1+3=4;
為什麼等於4?因為++,--在後是先進行表示式計算再進行自增自減!所以最後x=2,y=2,
如果++,--;在前的話表示式=2+4=6;x=2,y=2是不變的;
k=a((x++,y--,x+y),z--);=》k=a((x+y),z--)=(4,5)=9;z在進行表示式之後進行自減;z=4;
總上所述:x=2,y=2,z=4,k=9;
5樓:愛新覺羅々芸
因為所以科學道理。總之就是沒道理解釋。。└(^o^)┘
6樓:容和關靖易
答案應該是9
還有就是輸入那要有&
但是我執行沒有成功
不知道為什麼
關於i++和++i的問題
7樓:寒曦的海洋
逗號運算子可以保證運算從左到右依次執行,並返回最後一個表示式的值。前後運算是連續的,i會取上一次計算的結果。因此:
a=(i+8,7,i+7); // a=12 i=5 正確b=(i++,++i); // b=7 i=7 正確c=(i+7,i++); // !!! c=7 i=8
8樓:水瓶座秦時明月
不太明白你這道題的意思,給你講講i++和++i的區別吧:
i++的意思是先計算表示式的值,然後將i的值加1;++i是先將i的值加1,然後計算表示式的值。
例如,設i的初始值為2,有這麼兩個語句:s=(i++)+3;和s=(++i)+3;
第一個表示式中先算出s=i+3=5,該語句執行結束後,i的值就變成了3,
第二個表示式中先將i本身的值+1即i=3後計算s=i+3=6.
二者區別就在於 是在語句執行後加1還是執行結束前加1。
問題如下:-i++ 如何計算 15
9樓:匿名使用者
這個問題歷史悠久了悠久來回答一下吧。
-i++可以拆成兩句 -i和 i++ ,i後自增。
i=3,首先輸出-i為-3。這時候i還沒有變化,之後i++,若再輸出i,i便成了4。
我自己也在編譯器上試驗了一下,結果與我想的一樣。
10樓:匿名使用者
如何計算
先i++再取負,但是i++返回的是原來沒加1的i,所以取負運算的運算元還是3,所以結果是-3
11樓:
如果這句還有前面, 那就是: 前面- i 之後, i + 1
如沒有, 那就是: -1 * i , 之後, i + 1
12樓:匿名使用者
在vc6.0上的執行結果如上,
-和++運算子都屬第2級優先順序,同級運算子運算從左至右進行,即先計算-i,即取反,之後再把取反的結果加1.
13樓:匿名使用者
定義z=-i ;則z的值是-3,i的結果是4
等價於z=-(i )
14樓:
這個要先注意他要的是運算結束前的結果還是運算結束後的結果。
如果只是-i++,那麼他的值就是3.
如果是 某定義z=-i++;則z的值是2,i的結果在結束後依然為3.
因為i運算分三步。第一步:運算-i,i自減1,i等於2第二步:i賦值給z,z=2。.
第三步:i後自加,i++,i等於3.
像這樣的題目一定要先注意i是前自加還是後自加,以及運算子號的優先順序。
c語言關於i++的問題,是在下次迴圈i加1,還是說遇到i時加1?
15樓:hi漫海
i++的意思是將變數i中的
數值參加運算後,i中的數值自動加一。
「++」符號是程式語言中的自增運算子,作用是在執行後將變數的數值自動加一,「++」符號所處的位置不同,運算規則也不同,當「++」放在變數前方時,如 ++i,此時的作用是先將i變數中的數值進行加一運算,然後再將運算後的數值加入運算,而i++是先將i中的數值加入運算,然後再自加一。
16樓:匿名使用者
一、(i++)*(i++) 這種**,至今我也沒有在應用中見誰寫過,所以沒有必須分析這個!
二、for(j=0;j<4;j++) //這是一個for迴圈語句,括號中是三個步驟,
for( 初始化資料,只做一次; 迴圈條件,每次迴圈前先進行檢查,不成立,則結束迴圈; 迴圈變數變化 ,每次執行完迴圈體中的操作,就跳到這裡,進行迴圈變數改變 ) //三個步驟間以分號分隔
printf("%2d ",*(*(p+i)+j)) ; //迴圈第一次時,j=0 第二次時,j=1 。。。
17樓:匿名使用者
for語句是先執行 j = 0;j<4然後每次執行j<4;j++,第一次不執行j++.
18樓:軍師明眸
首先第一點, i++ 和 ++i 用法是不一樣的;對於 i++ 先使用i的值,然後i再加一
,而對於++i 是先讓i的值加一再用i的值。i-- 和 --i 也是同樣的道理,c語言書上有明確的講解,主要看一下書上給的例子。
其次,對於
for(j=0;j<4;j++)
是一個for迴圈,它執行的順序如下:
首先j的初始值是0,然後執行j<4,0<4成立,所以執行下面的printf函式,最後是執行j++(j的值加一變為二)。 接下來就是迴圈上面的步驟,一直到的值等於4為止停止迴圈。
要多看書,尤其是基礎,必須精讀。希望可以幫助你。
c++程式關於i++的問題
19樓:水上漂湯
k[1]
如何理解後置自增運算子?所有的運算子都可以理解為有返回值的函式呼叫。該運算子效果如下:
int operator++(int n)所以執行n++語句,相當於n=n+1,再返回n-1的值。也就是說n已經自增了,但是(n++)作為一個整體的值是n自增前的值,可以看作一個臨時常量
20樓:匿名使用者
n++; 跟 n=n+1;是同義的 ,所以 第一個k[n]中 肯定是 k[1]
估計是你想問++的問題,n++ 是 先取值再自加 ++n是先自加再取值
你的** 也可以改成
n=0;
for(i=0;i
21樓: 已經是k[1]了。因為之前n++導致n的值為1. c++中 i++,++i的問題
20 22樓:在晴天的雨傘 主要差異在於返回值,相同點在於對i進行自加: ++i返回的是i自加後的內容,i++返回的是i未自加的內容。 舉個例子: int i = 10; a = i++; vs int i = 10; b = ++i; 結果分別是 i = 11, a = 10和 i = 11, b = 11。 將i++和++i彙編結果,若沒有使用其返回值賦值特性,結果是一樣的,有返回值差異在於彙編**執行先後(先自加還是先賦值)區別。 另外,關於for(i = 0; i < n; i++)與for(i = 0; i < n; ++i) 有差異的說法是扯淡的。現在我們看到的編譯器,基本都會彙編成相同的**(好像有基本經典教程說有差異,那只是針對古老的編譯器)。 23樓:匿名使用者 ++i 是 先 i=i+1, 再讓i參與運算i++ 是先讓i參與運算, 然後 i=i+1,所以p = 5 + 5 + 5, ,i自身連續3次加1,所以i = 5+1+1+1=8 j=5+1+1+1 = 8 , q = 8+8+8= 24所以這個程式的答案是8,8,15,24(不是22) 可以,intel200系列晶片組 代酷睿i都支援。i56500配什麼主機板 i56500配技嘉 gigabyte b150m d3h主機板 微星 msi b150m mortar主機板 華碩b150m addr4主機板等都可以。1 技嘉 gigabyte b150m d3h主機板。技嘉b150m d3h主機板是... 樓主朋友您好 個人認為您買到翻新機了 應為w850停產好長時間了,現在市場上的所謂的w850水貨機基本都是翻 新機,如果是新機器的話絕對不可能剛買沒幾天滑蓋就鬆動的 如果鍵盤鎖了的話過一會它自動就解鎖瞭然後又自己鎖上,又解就這樣迴圈.個人認為這個是軟體問題 正常的話如果鎖上了就不會手機自己自動解鎖還... 1 test 2 plan 3 will,some 4 不會 5 send,to 英語問題 i 中的 是什麼意思 表示 長母音符號 意思就是發音長一點,i 中的 是表示長音得意思 長母音 i 是一個音標,看成一個整體,如果非要說 是什麼意思,可以理解成髮長音,把聲音拉長。英語 i 的變音問題 v t...I56500和I57500的主機板問題?
急,關於索愛W850I的問題
英語問題i,英語問題 i 中的 是什麼意思