目录
for
形式
for (expr1; expr2; expr3)
statement;
规则
(1)初始化,执行expr1(只执行一次);
(2)条件判断:如果expr2为真,则执行(3),否则退出;
(3)执行statement:循环体;
(4)执行expr3;
(5)回到(2),进行下一轮。
#include "stdio.h"
int main()
{
int a[100];
for(int i=0; i<100; i++)
{
a[i] = i;
printf("%d \n", a[i]);
}
return 0;
}
结果为:
特殊情况
第一种情况:
for(int i = 0; ; i++) //判断条件为空,表示一直满足条件
{
if(i>=100) break;//设置退出条件
a[i] = i+1;
}
第二种情况:
for(int i = 0; i<100; )
{
a[i] = i+1;
i++;
}
continue
跳出本次循环,直接跳到下一次循环操作。
下面程序功能:打印10以内的奇数。
#include "stdio.h"
int main()
{
int a[100];
for(int i=0; i<10; i++)
{
a[i] = i;
if(i%2 == 0)
{
continue;
}
printf("%d \n", a[i]);
}
return 0;
}
break
跳出该循环,执行该循环之后的代码。
下面程序功能:大于2后直接跳出循环。
#include "stdio.h"
int main()
{
int a[100];
for(int i=0; i<10; i++)
{
if(i > 2)
{
break;
}
a[i] = i;
printf("%d \n", a[i]);
}
printf("I am \"break\".");
return 0;
}
结果为
while
形式
while(expr)
{
statement;
}
规则
(1)判断:expr为假时,退出循环;否则执行(2);
(2)执行语句statement(循环体);
(3)回到(1),进行下一轮。
程序功能:打印1到100的数。
#include "stdio.h"
int main()
{
char buf[100];
int i = 0;
while(i < 100)
{
buf[i] = i + 1;
printf("%d \n", buf[i]);
i++;
}
return 0;
}
do while
形式
do
{
statement;
}while(expr);
规则
(1)执行do里面的循环体;
(2)判断expr是否为真,为真是继续下一轮,为假时跳出该循环体。