计数器控制的for循环,C++/python版

常见的编程错误:

  • 在while语句或for语句的条件中,如果使用了不正确的关系运算符,或者使用了不正确的循环计数器终值,会导致相差1的错误
  • 如果for语句控制变量的声明是放在其头部的初始化部分,在该语句循环体之后再使用此控制变量是一个编译错误
  • 在for的头部,使用逗号而不是两个分号将导致一个语法错误
  • 将一个分号直接放在for语句头部右括号的右边,导致这条for语句的循环体是一条空语句,这通常是一个逻辑错误

良好的编程习惯:

  • 在while语句或for语句的条件中使用终值,并使用关系运算符<=,有助于避免相差1的错误
  • 最好只把涉及控制变量的表达式放在for语句的初始化和增值部分,其他变量的操作应该出现在循环语句饿前面,或者出现在循环体内

可移植性提示:

  • 在C++标准中,在for语句的初始化部分声明的控制变量的作用域(终止于for语句的循环体中)不同于早期版本C++编译器所规定的作用域

软件工程知识:

  • 创建延迟循环的方法:for(int i = 0;i<=100000;i++);

错误预防技巧:

  • 虽然控制变量的值可以在for语句的循环体内进行改变,但要避免这样做,这样会导致难以察觉的逻辑错误

C++版本

// Counter-controlled repetition with the for statement

#include <iostream>

using std::cout;
using std::endl;

int main()
{
    // for statement header includes initialization
    // loop-continuation condition and increment
    for( int counter = 1; counter <= 10; counter++ )
        cout << counter << " ";

    cout << endl;   // output a newline

    return 0;       // indicate successful termination
}   // end main

python版本

# -*- coding: utf-8 -*-
"""
Created on Sat Jun 07 22:25:06 2014

@author: Administrator
"""

for counter in range(1,11):
    print counter,
    
print