循环语句
1.while
初始化
while(判断部分-表达式)
{
调整部分(执行);
}
在while循环中,break用于永久的终止循环
在while循环中,continue的作用是跳过本次循环continue后边的代码,直接去判断部分,看是否进行下一次循环(意思就是遇到continue直接继续下一次while循环)
分析:getchar--获取一个字符//putchar()--输出一个字符
在MSDN中解释为:
EOF-end of file -文件结束标志
getchar应用
2.for循环
for(初始化部分;条件判断部分;调整部分)
{
循环语句;
}
#include <stdio.h>
//打印1-100的数字
int main()
{
int i = 0;
//for(i=1/*初始化*/; i<=10/*判断部分*/; i++/*调整部分*/)
for(i=1; i<=10; i++)
{
printf("%d ", i);
}
return 0;
}
break和continue用法与while语句中类似-不多介绍
注:1.不可在for 循环体内修改循环变量,防止 for 循环失去控制。
2.
建议
for
语句的循环控制变量的取值采用
“
前闭后开区间
”
写法。
3.for
循环中的初始化部分,判断部分,调整部分是可以省略的,但是有逻辑差异如下图:
int main()
{
int i = 0;
int j = 0;
for (; i < 10; i++)
{
for (; j < 10; j++)
{
printf("hehe\n");
}
}
return 0;
}//打印10个hehe
int main()
{
int i = 0;
int j = 0;
for (i=0; i < 10; i++)
{
for (j=0; j < 10; j++)
{
printf("hehe\n");
}
}
return 0;
}//打印100个hehe
3.do...while()循环
do
循环语句;
目录
while(表达式);
循环至少执行一次,使用的场景有限,所以不是经常使用。 (先循环在判断)
扩展
goto语句--一般不使用
一次跳出两层或多层循环。
多层循环这种情况使用break是达不到目的的。它只能从最内层循环退出到上一层的循环。
goto 语句只能在一个函数范围内跳转,不能跨函数
且goto语句与循环语句可以进行互换,所以一般不使用goto语句