C语言循环的嵌套、比较、break语句,continue语句

 while、do-while、for、goto一般只是跳转程序执行的流程,严格意义上,goto算不上循环。
1、循环的嵌套
一个循环体内又包含另外一个完整的循环体结构,称为循环的嵌套,也就是循环套循环。
int i,j,k;
     for(i=1;i<=9;i++)  //循环变量取值范围 = 1...9;
     {
      for(j=1;j<=i;j++)   //循环变量取值范围j = 1...i;
      {
       k=i*j;
       printf("%d*%d=%d\n",i,j,k);
      }
     }
     printf("\n");
2、几种循环语句的比较
goto\while\do-while\for
a)、多数情况下,这些 循环之间可以相互代替,但是 不提倡使用 goto循环,因为goto循环 破坏了结构化程序设计,增加了程序的复杂性。goto可以说不叫循环,是一个 具有跳转功能的语句
b)、while循环和for循环,是 先判断表达式的值, 后执行语句。而do-while循环是 先执行语句, 后判断表达式的值,所以do-while循环体内的一系列语句至少被执行一次。
c)、对while,do-while,for这三种循环,可以用break语句跳出循环,用continue语句结束本次循环。对于goto语句和if语句构成的循环,不能用break和continue语句进行控制。
3、break语句
switch(k)
{
 case 1:
 ............
break;   //这里表示跳出switch语句
 case 2:
 ............
break;
default:
.............
break;
}
break还可以用三种循环结构:while,do-while,for; 用于跳出循环体,就是 提前结束循环,接着 执行循环后面的语句。
例题:计算1+2+。。。+100的值,和应该是5050,但是当和的值达到4000时,退出循环。
int i,sum=0;
     for(i=1;i<=100;i++)
     {
          sum=sum+i;
          if(sum>=4000)
          {
               break; //跳出循环
          }
     }
     printf("sum=%d\n",sum);
     printf("i=%d\n",i);
切记
break语句 不能用于循环语句和switch语句 之外的任何地方。并且break语句出现在switch中的时候, 是用于跳出switch语句,而不是跳出循环。
break语句 只能跳出break语句 所在的( 包着该break语句的循环语句 这层循环
例如:
int i,j,k;
for(i=1;i<=9;i++)
{
 for(j=1;j<=i;j++)
  {
    k=i*j;
    printf("%d*%d=%d\n",i,j,k);
    break;   //这里跳出循环跳到 printf("\n");
  }
  printf("\n");
  break;   //跳出了外面的循环,跳到printf("出来了\n");
}
printf("出来了\n");
4、continue语句
continue只用在三种循环 while, do-while, for 结构的语句体中, 不能用于switch
continue的作用结束 次循环,跳过循环体中 下面尚未执行的语句,接着进行下一次是否执行循环的判断(而是判断下次循环是否执行)。
continue语句和break语句的区别
continue语句 只结束 本次循环而不是终止整个循环的执行,而break语句是结束整个循环的执行,跳转到整个循环后边的语句去执行。
演示continue
把1到100之间的不能被3整除的数字输出
int i;
for(i=1;i<=100;i++)
{
if(i%3==0)  //能被3整除
continue;
//能够走下来肯定不满足 if(i%3==0) 也就是不能被3整除的数字会使流程走下来
printf("%d    ",i);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值