1:while循环
while(表达式1)
{
代码块;
}
先判断表达式是否为真 为真的话 执行循环中的代码块 代码块执行完毕 转向取判断表达式是否仍然成立 成立继续执行循环中的代码块 依次循环只到表达式为假 然后就不执行循环中的代码块 直接跳出循环。
程序示例1:while循环
/*******************************************************************************************************/
by linqiang
/*******************************************************************************************************/
int i = 10;
while (i>0)
{
printf("哈哈哈n");
i--;
}
输出结果:
定义了i变量等于10 转而去判断循环中的表达式 i>0是否成立 成立 则输出 哈哈哈 然后执行i--
转而再去判断循环条件表达式是否仍然成立 最终输出的结果是输出10次 哈哈哈
备注:在循环中 i++和++i不做前自增和后自增的区别
/*******************************************************************************************************/
2:for循环
for(表达式1; 表达式2; 表达式3)
{
代码块;
}
先进入表达式1 表达式1正常情况下为设立一个初值 也可以省略 然后到表达式2 判断表达式2是否成立 成立的话 执行代码块 代码块执行完毕 转而执行表达式3 然后再去判断表达式2是否成立 如果成立 继续循环 不成立 直接跳出循环。
程序示例2:for循环
/*******************************************************************************************************/
by linqiang
/*******************************************************************************************************/
for (int i = 0; i < 5; i++)
{
printf("哈哈哈n");
}
等价于
int i = 0;
for( ; i < 5; i++)
{
printf("哈哈哈n");
}
等价于
int i = 0;
for( ; i < 5; )
{
printf("哈哈哈n");
i++;
}
输出结果:
表达式1设立初值 i=0 然后转到表达式2 判断i是否小于5 成立 则输出 哈哈哈 执行完 哈哈哈
i++ 然后在转去判断表达式2
备注:在循环中 i++和++i不做前自增和后自增的区别
/*******************************************************************************************************/
3:do...while()
do
{
代码块;
}while(表达式1);
先执行代码块 然后判断表达式1 表达式1成立的话 转而继续执行代码块 不成立的话就跳出循环
程序示例2:do...while()循环
/*******************************************************************************************************/
by linqiang
/*******************************************************************************************************/
int i = 0;
do
{
printf("哈哈哈n");
i++;
} while (i < 5);
输出结果:
do....while()不同于for循环和while()循环 该循环会先执行依次代码块 转而在去判断while中的条件表达式是否成立 如果成立 继续执行 不成立 直接跳出循环
备注:在循环中 i++和++i不做前自增和后自增的区别
/*******************************************************************************************************/
总结:for循环和while循环在正常情况下都是可以进行相互转换的 具体的使用看使用者及当前的代码的便捷性考虑 三种循环的区别:当不满足循环条件时,while循环和for循环一次都不会执行,do while循环至少执行一次