用while语句实现循环
while是循环流程控制
while(表达式)
{
循环语句体;
}
说明:①while循环的表达式是循环进行的条件,用作循环条件的表达式中的一般能够改变表达式的变量;
②当表达式为真时,执行循环体;
当表达式为假时,不执行循环体;
③当循环体不需要任何功能时,可以用空语句作为循环体;
④对于循环变量的初始化应在while语句之前进行,可以通过适当方式给循环变量赋初值;
*while语句的特点:先判断条件表达式,后执行循环语句。
例:1+2+3+......100;
#include<stdio.h>
int main()
{
int i=1,sum=0;
while(i<=100)
{
sum=sum+i;
i++;
}
printf("%d\n",sum);
return 0;
}
int main()
{
int i=1,sum=0;
while(i<=100)
{
sum=sum+i;
i++;
}
printf("%d\n",sum);
return 0;
}
用do......while语句实现循环
除了while语句以外,C语言还提供了do.......while语句来实现循环结构。如:
int i=1;
do
{
printf(“%d\n”,sum);
}
while(i<=100)
*do.....while语句的特点:先无条件执行循环体,然后判断条件是否成立。
* do.....while语句的一般形式为:
do
(语句)循环体
while(表达式);
例:1+2+3+......100;
int main()
{
int i=1,sum=0;
do
{
sum=sum+i;
i++;
}
while(i<=100);
printf("%d\n",sum);
return 0;
}
{
int i=1,sum=0;
do
{
sum=sum+i;
i++;
}
while(i<=100);
printf("%d\n",sum);
return 0;
}
用for语句实现循环
for语句的表达式:
for(表达式1;表达式2;表达式3)
语句
表达式1:设置初始条件,只进行一次。可以为一个、两个,或多个变量设置初值;
表达式2:循环条件表达式,用来判定表达式判断是否循环。在每次执行循环体前先执行此表达式,决定是否继续执行循环。
表达式3:作为循环的调整,在执行完循环体后进行的;
for(循环变量赋初值;循环条件;循环变量增值)
例:1+2+3+......100;
#include<stdio.h>
int main()
{
int i,sum=0;
for(i=1;i<=100;i++)
{
sum=sum+i;
}
printf("%d\n",sum);
return 0;
}
int main()
{
int i,sum=0;
for(i=1;i<=100;i++)
{
sum=sum+i;
}
printf("%d\n",sum);
return 0;
}
用break语句提前终止循环
break语句可以使流程跳出switch结构,继续执行switch语句下面的一条语句。实际上,break语句可以从循环体内跳出循环体,即结束循环,接着执行循环下面的语句。
例:求1+2+3+.....10;
#include<stdio.h>
int main()
{
int i;
int tmp=0;
for(i=0;i<10;i++)
{
tmp=tmp+i;
if(tmp>=10)
{
break;
}
}
printf("%d\n",tmp);
return 0;
}
int main()
{
int i;
int tmp=0;
for(i=0;i<10;i++)
{
tmp=tmp+i;
if(tmp>=10)
{
break;
}
}
printf("%d\n",tmp);
return 0;
}
*break语句只能用于循环语句和switch语句只内,而不能单独使用;
用continue语句提前结束本次循环
有时候并不希望终止整个循环,而是希望提前结束本次循环,而接着执行下次循环。而这时可以用continue语句。
例1:输出能被二整除的数。
#include<stdio.h>
int Fun(int n)
{
int i;
for(i=0;i<n;i++)
{
if(i%2!=0)
{
continue;
}
printf("%d\n",i);
}
return i;
}
int main()
{
printf("%d\n",Fun(10));
return 0;
}
int Fun(int n)
{
int i;
for(i=0;i<n;i++)
{
if(i%2!=0)
{
continue;
}
printf("%d\n",i);
}
return i;
}
int main()
{
printf("%d\n",Fun(10));
return 0;
}