48-C++修改for中的步長

到現在爲止,循環示例每一輪循環都將循環計數加1或減1。可以通過修改更新表達式來修改步長。例如,下列程序中的程序按照用戶選擇的步長值將循環計數遞增。它沒有將i++用作更新表達式,而是使用表達式 i = i+by ,其中by是用戶選擇的步長值。

 

 

//bigstep.cpp —— count as directed
#include<iostream>

int main()
{
    using std::cout;
    using std::cin;
    using std::endl;
    cout<<"Enter an integer : ";
    int by;
    cin >> by;
    cout<<"Counting by "<<by<<"s:\n";
    for(int i=0;i<100;i=i+by)
        cout<<i<<endl;
    return 0;
}

 

下面是該程序的運行情況:

 

當i的值達到102時,循環終止。這裏的重點是,更新表達式可以是任何有效的表達式。例如,如果要求每輪遞增以i的平方加10。則可以使用表達式i=i*i+10。

需要指出的另一點是,檢測不等通常比檢測相等好。例如,在這裏使用條件i==100可不行,因爲i的取值不會爲100。

最後,這個示例使用了using聲明,而不是using編譯指令。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章