C语言规定每条语句都以分号结尾。
C语句可以分为以下 5 种:
if 语句和 switch 语句都需要首先检测一个值,即条件。
条件(condition)是一个表达式。
if语句有三种形式
第一种基本形式:if
if (条件)
语句
条件可能是一个表达式,也可能是一个声明。
如果条件的值为真,则执行其后的语句。
如果条件的值为假,则不执行该语句。
if(value) //判断变量值
if(value != 0) //判断表达式的值
if(p != nullptr) //判断指针是否指向一个有效的对象
C语言使用整数表示布尔值(真或假,即 1 或 0)。
在C语言中,所有的非零值都被认为是真。
第二种形式为: if-else形式
if(条件)
语句 1;
else
语句 2;
如果条件的值为真,则执行语句1。
如果条件的值为假,则执行语句2 。
第三种形式为 if-else-if 形式
if(条件 1)
语句 1;
else if(条件 2)
语句 2;
else if(条件 3)
语句 3;
......
else if(条件 m)
语句 m;
else
语句 n;
依次判断条件的值,当出现某个值为真时,则执行其对应的语句;然后跳到整个 if 语句之外继续执行程序。
如果所有的条件均为假,则执行语句n。
最后继续执行后续程序。
C语言规定,else 总是与它前面最近的 if 配对。
多分支选择 switch 语句, 其一般形式为:
switch(条件)
{
case 常量表达式 1: 语句 1;
case 常量表达式 2: 语句 2;
......
case 常量表达式 n: 语句 n;
default : 语句 n+1;
}
说明:
:
”。while 语句的一般形式为:
while(条件)
语句块
其中,条件是循环条件,语句块为循环体。
先计算条件的值,当值为真时,执行循环体语句。
当值为假时,不执行循环体语句。
无限循环:
while(1);
do-while 语句的一般形式为:
do
语句块
while(条件);
它先执行循环体中的语句,然后再判断条件是否为真, 如果为真则继续循环;如果为假, 则终止循环。
因此,do-while 循环至少要执行一次循环语句。
for 语句的一般形式为:
for(表达式 1; 表达式 2; 表达式 3)
语句块
它的执行过程如下:
for 语句常用的应用形式也是最容易理解的形式如下:
for (循环变量赋初值; 循环条件; 循环变量增量) {语句块}
/*for 语句的惯用法*/
for(i = 0; i < n; i++){} //从 0 向上加到 n-1
for(i = 1; i <= n; i++){} //从 1 向上加到 n
for(i = n - 1; i >= 0; i--){} //从 n-1 向下减到0
for(i = n; i > 0; i--){} //从 n 向下减到1
int i,j;
for(i=0,j=0; i<n || j<n; i++,j++){}
for( ; ; ){}
int i = 0;
for( ; i < n; i++){}
C99 允许在 for 语句内声明变量,作用域仅在 for 循环内部。
break 语句负责终止离它最近的 while、do-while、for 或 switch 语句,并从这些语句之后的第一条语句开始继续执行。
continue 语句的作用是跳过循环本中剩余的语句而执行下一次循环。
continue 语句只能用于循环语句。
goto 语句的作用是从 goto 语句无条件跳转到同一函数内的另一条语句。
goto 标识符;
标识符 语句
C99增加了一条限制:goto 语句不可以用于绕过变长数组的声明。