第六章 循环





一. 概述

  循环是重复执行其他语句(循环体)的一种语句。在C语言中,每个循环体都有一个控制表达式。每次执行循环体时都要对控制表达式求值,如果为真,继续执行循环。


二. While语句

While (表达式) 语句
无限循环:控制表达式的值始终非零。有时是故意的,
例如:while (1)……


三. Do语句

Do语句本质上就是while语句,区别是控制表达式是在每次执行完循环体之后进行判定的。
Do 语句 while (表达式)
Do语句的循环体至少执行一次。


四. For语句

1. 适用于“计数”。
For (表达式1;表达式2;表达式3)语句


2. For语句的惯用法
· 从0向上加到n-1
For (I = 0; I < n; i++)
· 从1向上加到n
For( I = 1; I <= n; i++)
· 从n-1向下减到0
For( I = n-1; I >= 0; i–)
· 从n向下减到1
For(I = n; I > 0; i–)


3. 在for语句中省略表达式
注意保留分号,控制表达式必须始终有两个分号。
例如:

For(;i>0;Printf(“hello”,i--)

等价于

While(i>0)
	Printf(“hello”,i--)

故意无限循环:for(;😉


4. C99中的for语句
For (int I = 0,j=0; I < n; i++)
如果变量i在for之前声明,那么这个语句就会创建一个新的i且该值仅用于循环内。


5. 逗号运算符
表达式1,表达式2
逗号运算符的优先级低于所有其他运算符,逗号表达式是左结合的。


五. 退出循环

  1. Break 终止
    在嵌套中,break语句只能跳出一层嵌套。
    Break可以用于switch、while、do、for


  1. Continue 继续
    跳过某次迭代的部分内容。
    Continue可以用于循环


  1. Goto 转到
      可以跳转到函数中任何有标号的语句处(C99限制:goto语句不可以用于绕过变长数组的声明)
    标号:是放置在语句开始处的标识符。
    标识符 : 语句
    一条语句可以有多个标号。
    Goto 标识符;
    例子:(由于输入法原因,有些部分自动转大写了,需注意)
For(d=2; d<n; d++)
	If(n%d==0)
		Goto done;
Done:
If(d<n)
	Printf(“hello%d%d\n”.n,d);
Else
	Printf(“hi%d”,n);


六. 空语句

  语句可以为空。



本篇博客为本人学习C语言时的详细笔记,如有错误之处,还望各位指正。
文章为原创,如要转载请注明出处

03-13 18:16