do while 循环和while循环的区别
1、do while循环是先执行循环体,然后判断循环条件,如果为真,则执行下一步循环,否则终止循环;
while循环是先判断循环条件,如果条件为真则执行循环体;
2、do while循环条件后面必须有一个分号,这个分号表明循环结束。
1.for循环
for循环是更加简洁的循环语句,大部分情况下,for循环可以代替while循环、do-while循环。
for循环的格式为:
for( 初始语句 ; 执行条件 ; 增量 )
{
循环体
}
执行顺序:1、初始语句 2、执行条件是否符合? 3、循环体 4、增加增量
初始化语句只在循环开始前执行一次,每次执行循环体时要先判断是否符合条件,如果循环条件还会true,则执行循环体,在执行迭代语句。
所以对于for循环,循环条件总比循环体多执行一次。
注意:for循环的循环体和迭代语句不在一起(while和do-while是在一起的)所以如果使用continue来结束本次循
环,迭代语句还有继续运行,而while和do-while的迭代部分是不运行的。
来个例子:输入一个数n(n>1),输出n!的值。n!(n的阶层)=1*2*3*……*n
- #include<stdio.h>
- void main()
- {
- long num=1;
- int n,i;
- printf("请输入n:");
- scanf("%d",&n);
- for(i=1;i<=n;i++)
- num=num*i;
- printf("%d的阶层是%d\n",n,num);
- }
2.break和continue的区别和作用
break和continue都是用来控制循环结构的,主要是停止循环。
1.break
有时候我们想在某种条件出现的时候终止循环而不是等到循环条件为false才终止。
这是我们可以使用break来完成。break用于完全结束一个循环,跳出循环体执行循环后面的语句。
2.continue
continue和break有点类似,区别在于continue只是终止本次循环,接着还执行后面的循环,break则完全终止循环。
可以理解为continue是跳过当次循环中剩下的语句,执行下一次循环。
例子:
- nclude<stdio.h>
- void main()
- {
- int sum,i;
- sum=0;
- for(i=1;i<=100;i++)
- {
- sum=sum+i;
- if(i==2)
- {
- printf("执行continue");
- continue;
- }
- if(i==4)
- {
- printf("执行break");
- break;
- }
- printf("sum=%d",sum);
- }
- printf("循环结束");
- }
这个的运行结果为: sum=1;
执行continue;
sum=6;
执行break 循环结束
运行结束。