linux C : 循环结构

本节主要介绍了几种基本的循环结构,较之前的基础内容来讲,从本节开始慢慢加大难度,需要付出更多的时间去练习和复习回顾!

一、while型循环(“当”型循环)

while(表达式) 语句

eg:

int main(void)
{
 int i;
 int sum = 0;
 i=1 ;

 while(i <= 100)
 {
   Sum += i;
   ++i;
 }
 printf("%d\n", sum);
 return 0;
}

①i=1;为循环变量的初始化语句

②i<=100  循环的循环条件

③i++;有使循环趋于结束的语句

注:①while(  )后不加“;”     误加分号后编译不报错,输出变为死循环。

       ②“{   }”分别单行在while循环中加上。

whlie循环中循环体可能不被执行。

死循环

while(1)
{

}

在使用硬件时经常会用到死循环,死循环一直重复执行{ }内的语句

二、do···while循环

一般表达式: 

do  循环体语句   while(表达式);

eg:

int main(void)
{
 int i,;
 sum = 0;
 i=1;
 do
   {
    sum += i;
    ++i;
   }
  while(i <= 100);
 printf("%d\n",sum);
 return 0;
}

do···while循环中循环至少被执行一次

注:①do···while循环后必须加“;”

三、for循环

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

eg:

int main(void)
{
 int i, sum;
 Sum = 0;
 for(i = 1;i <= 100;++i)
 {
   sum += i;

 }
 printf("%d\n", sum);
 return 0;
}

语句执行过程:

①计算表达式1后计算表达2    (表达式2是一个条件/逻辑表达式)

②若表达式2为真,执行循环循环体

③执行完毕后自动执行表达式3

④执行完表达式3后,再看表达式2是否为真,重复执行②③④步骤

⑤当表达2为假时,终止循环,循环结束

注:①for循环后无“;”,若误加分号则运行结果错误

循环流程图

 四、以go to语句和if搭建的循环(一般不提倡使用goto语句)

go to:无条件跳转语句

eg:在该程序中

int main(void)
{
int i;
int sum = 0;
i =0;

loop:
{
  if(i <= 100)
  sum = sum + i;
  ++i:
  goto loop;
}

printf("%d\n", sum);
return 0;
}

i:循环的循环变量

i=0:①为循环变量的初始化语句

if语句中 i <= 100:②循环的循环条件

++i :③有使循环趋于结束的语句

①②③为循环的三大要素

进入死循环后强行退出:ctrl+c

“{  }”中的复合语句称为循环体

五、循环嵌套

以上所有循环种类都可嵌套使用,不分彼此,内外都可以使用

注意:内循环速度高于外循环!

六. 辅助控制语句(break、continue、return语句)

1. break语句(循环断路语句)

打断当前程序执行,提前终止循环。

不想再执行循环时使用break

注:①分辨是 break跳出/程序执行完后正常跳出循环。

② break打断指的是 break当前所在的循环

2. continue语句(循环短路语句)

终止本次循环,不会使整个循环结束。

循环中想要跳过/屏蔽某几次循环使用continue

3.return语句

return 0;   程序正常结束

return -1;   程序异常结束

总结:

1.注意循环嵌套时定义的变量的作用范围!!

   防止写在内部每循环一次重新赋值造成不报错但输出错误

2.在进行程序编写前可以通过绘制流程图理清思路

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值