for语句语法
for语句的一般形式:
for(表达式1;表达式2;表达式3)
{
循环体;
}
for语句执行流程:
1.先执行表达式1;
2.判断表达式2条件是否仍然满足,若满足则继续执行下面的流程,否则终止循环;
3.执行循环体;
4.再执行表达式3;
5.重复上述步骤;
例如:计算1+2+....+10=?
int sum=0;//用于储存计算结果
for(int i=1;i<=10;i++)//计算1+2+...+10的值
{
sum=sum+i;
}
cout<<"sum="<<sum;
针对for语句有必要做一些说明
(1)表达式1省略,但其后面的;不可以省略。当表达式1省略时,循环变量应该在for循环之前给出。例如:计算1+2+....+10=?
int i=0;//再for循环之前定义循环变量
int sum=0;//定义sum储存for循环计算的值
for(;i<=10;i++)//计算1+2+....+10
{
sum=sum+i;
}
cout<<"sum="<<sum;//输出1+2+....+10=?
(2)表达式2省略,但其后面的;不可以省略。当表达式2省略时,循环的终止应该在for循环的循环体内给出。例如:计算1+2+....+10=?
int sum=0;//定义sum储存for循环计算的值
for(int i=0; ;i++)//计算1+2+....+10
{
sum=sum+i;
if(i>=10)
break;
/*
如果写if(i>10)则根据for循环的执行流程,
还会再运算一次,使这个循环变为计算1+2+3+...+10+11;
*/
}
cout<<"sum="<<sum;//输出1+2+...+10的值
(3)表达式3省略。当表达式3省略时,循环变量的变化应该在for循环的循环体内给出。例如:计算1+2+....+10=?
int sum=0;//定义sum储存for循环计算的值
for(int i=0;i<=10; )//计算1+2+....+10
{
sum=sum+i;
i++;//将循环变量的自增放在了循环体
}
cout<<"sum="<<sum;
(4)表达式1和2省略、表达式2和3省略、表达式1和3省略,当表达式两两组合省略时,此时for循环的具体写法为上述对应形式的两两组合;表达式1、2、3都省略,此时for循环的具体写法为上述三种对应形式的组合;特别地
for(;;)//程序会无休止的执行
{
}
(5)表达式1和3均可为逗号表达式;
例如
//计算1+2+...+10=?
int sum,i;
for(i=0,sum=0;i<=10;i++)//将i和sum的初始化放在表达式1;
{
sum=sum+i;
}
cout<<"sum="<<sum;
编写循环语句很简单,但是在我们实际编写代码时,令人头秃的往往是如何确定循环条件以及涉及到循环的所有变量。如常常会因是x<=10还是x<10而导致程序运行的结果与预期不符。故做循环类问题时,一定要多多留意。