循环结构中的各类循环语句

while语句

1.由while语句构成的循环称为“先判断条件的当型”循环,while循环的一般表达形式:

while(表达式)

{

    语句块;

}

2.例子:如何用while函数输出十行****

#include<stdio.h>
int main()
{int i=1;
 while (i<=10);
 {
    printf("******************\n");
    i++;
 }
return 0;
}

3.例子:如何用while函数计算1.01的365次方

include<stdio.h>
int main()
{int i=1
float s=1;
while(i<=365)
  {s=s*1.01;
   i++;
  }
printf("1.01的365次方是:%.2f\n",s);
return 0;
}

注意:1)while循环的特点是先判断条件表达式,后执行循环体语句。若表达式的值一开始就为假,那么循环体一次也不会执行。

          2)“语句”就是循环体。循环体可以是一个简单的语句,可以是复合语句(用花括号括起来的若干个语句)

          3)表达式的值为“真”(以非0值表式)时,就执行循环语句;为“假”(以0表示)时,就不执行循环语句,退出循环。

do……while语句

1.表达形式:

do

        语句

while(表达式);

注意:do……while语句的特点是,先无条件地执行循环体,然后判断条件是否成立。

2.例 :

用do……while语句循环求1+2+3+……+100.

#include<stdio.h>
int main()
{
   int i=1,sum=0;     //定义一个整型变量sum,初始值为0;用来储存运行的结果。
  do
  {
      sum=sum+i;
      i++;
  }while(i<=100);
  printf("sum=%d\n",sum);
  return 0;
}

while与do……while的比较

while语句

#include<stdio.h>
int main()
{
    int i,sum=0;
    printf("please enter i,i=?");
    scanf("%d",&i);
    while(i<=10)
    { 
      sum=sum+i;
      i++;
    }
    printf("sum=%d\n",sum);
return 0;
}

do……while语句

#include<stdio.h>
int main()
{
  int i,sum=0;
  printf("please enter i,i=?");
  scanf("%d",&i);
  do
  {
    sum=sum+i;
    i++;
  } while(i<=10);
  printf("sum=%d\n",sum);
return 0;
}

结论:当while后面的表达式的第一次的值为“真”时,两种循环的到的结果相同;否则二者的结果不同。while保持原值,而do……while的值为输入值。

循环结构之for语句 

1. for语句的表达形式:

for(表达式1;表达式2;表达式3)

      语句

2.例子:

用for语句来求1+2+3+……+100

#include<stdio.h>
int main()
{
  int i=1,sum=0;
  for(i=1;i<=100;i++);
  sum=sum+i;                    //实现迭代
  printf("%d\n",sum);
  return 0;
}

3.for语句的各种形式

1)for语句的一般形式中的“表达式1”可以省略,此时应在for语句前给循环变量赋初值。注意,省略表达式1时,其后的分号不能省略。

i=1;

for(;i<=100;i++)

sum=sum+i;

2)如果表达式2省略,即不判断循环条件,循环无终止的进行下去。也就是认为表达式2的值为真。

for(i=1;;i++)

sum=sum+i;

3)表达式3也可以省略,但应另外设法保证循环能正常结束。

for(i=1;i<=100;  )

{  sum=sum+i;

    i++;

}

4)可以省略表达式1和表达式3,只有表达式2,即只给循环条件。在这种情况下,完全等同于while语句。

i=1;

for( ;i<=100;  )

{   sum=sum+i;

    i++;

}

break语句与continue语句

1.break语句的作用:break语句可以使流程跳出switch结构;还可以用来从循环体内跳出循环体,接着执行循环下面的语句。

注意:break语句只能用于switch语句和循环语句中,不能单独使用。

2.continue语句的作用:结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判断。 

3.两者的区别

continue只结束本次循环,而非终止整个循环。

break语句结束整个循环,不再判断执行循环的条件是否成立。

4.例子

#include<stdio.h>
int main()
{  int n;
   for(n=100;n<=200;n++)
   {
     if(n%3==0)
          continue;
     printf("%d",n);
   }
   printf("\n");
   return 0;
}

几种循环的比较

 1.while,do……while,和for语句都可以用来处理同一个问题,一般情况下它们可以互相代替。

表达式1;  //初始化操作

while(表达式2)

{         ……

     表达式3://通常是i++或i—

           ……

}

表达式1://

do

{         ……

       表达式3:

          ……

}while(表达式2);

for(表达式1;表达式2;表达式3)

{

             ……

}

2.用while和do……while循环时,循环变量初始化的操作应在while和do……while语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。

3在while循环和do……while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应在循环体包含使循环趋于结束的语句(如i++,i=i+1)。for循环可以在表达式3中包含使循环结束的操作,甚至可以将循环体中的操作全部放到表达式3中。因此for语句的功能更强,凡用while循环能完成的,for循环都能实现。

4.while循环,do……while循环和for循环都可以用break语句跳出循环,用continue语句结束本次循环。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值