簡體   English   中英

C 編程遞增和遞減

[英]C Programming increment & decrement

for(i=0;i++<10;)
    {
        printf("%d\n",i);
    }

為什么要打印 1 到 10?

我知道后增量發生在循環之后,為什么它不顯示 0? 為什么它顯示10?

沒有 .. 在 for 循環中首先檢查條件.. 然后你正在打印i For循環圖

我認為你正在尋找的是做do..while

i=0;
do{
   printf("%d\n",i);
}while(i++<10);

讓我們標記循環的元素:

for(/* 1 */ i=0; /* 2 */ i++<10; /* 4 */)
{
    /* 3 */ printf("%d\n",i);
}

事情是這樣發展的:

  1. i被初始化為0
  2. i++的結果與10進行比較; 作為這個表達式的副作用i增加了1
  3. 打印出i的更新值;
  4. 如果這里有一個表達式,它將被評估。

重復步驟 2 到 4,直到i++ < 10計算結果為 false。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM