C语言之语句和语句的分类

        C语言的代码是由一条一条的语句构成,C语言中的语句可以分为以下五类:

  • 空语句
  • 表达式语句
  • 函数调用语句
  • 复合语句
  • 控制语句

目录

空语句

表达式语句

函数调用语句

复合语句

控制语句


空语句

        空语句可以由一个分号构成。

#include
int main()
{
    ;//空语句
    return 0;
}

表达式语句

        表达语句就是在表达式的后边加上分号

#include
int main()
{
    int a = 20;
    int b = 0;
    b = a + 5;//表达式语句
    return 0;
}

函数调用语句

        函数调用的时候,也会加上分号,就是函数调用语句。(不了解库函数和自定义函数的,可以看看博主的这篇文章https://blog.csdn.net/wait___wait/article/details/135047014)

#include
int Add(int x, int y)
{
    return x + y;
}
int main()
{
    printf("haha\n");//函数调用语句(库函数)
    int ret = Add(1, 2);//函数调用语句(自定义函数)
    return 0;
}

复合语句

        复合语句就是代码块。成对括号中的代码就构成了一个代码块,也称作复合语句。

#include
int main()
{
    int i = 0;
    int arr[10] = {0};
    for(i = 0; i < 10; i++)//for循环,循环体大括号中的就是复合语句
    {
        arr[i] = 10 - 1;
        printf("%d\n", arr[i]);
    }
    return 0;
}

控制语句

        控制语句用于控制程序的执行流程,以实现程序的各种结构方式(C语言支持三种结构:顺序结构,选择结构,循环结构),它们由特定的语句定义符组成,C语言有九种控制语句。可以分为以下三类:

  • 条件判断语句也叫分支语句:if语句,switch语句;      (详细内容看博主这篇文章:https://blog.csdn.net/wait___wait/article/details/134805824?spm=1001.2014.3001.5502)
  • 循环执行语句:do while语句,while语句,for语句;(https://mp.csdn.net/mp_blog/creation/editor/135158422)
  • 转向语句:break语句,go to语句,continue语句,return语句。
  1.  (return语句注意事项https://blog.csdn.net/wait___wait/article/details/135051199
  2. (break语句和continue语句详解https://blog.csdn.net/wait___wait/article/details/135167810)
  3. 鉴于goto语句篇幅较短,就在该篇文章里面介绍。

后期会为大家一一介绍控制语句。

goto语句

        C语言提供一种非常特别的用法,就是go to语句和跳转标号,goto语句可以实现在同一个函数内跳转到设置好的标号处。

例如:

#include
int main()
{
	printf("hehe\n");
	goto next;//分号
	printf("haha\n");
next://冒号
	printf("跳过了haha的打印\n");
	return 0;
}

运行结果: 

C语言之语句和语句的分类_第1张图片

goto语句如果使用不当,就会导致在函数内部随意乱跳转,打乱程序的执行流程,所以尽量少用;但是goto语句也不是一无是处,在多层循环的代码中,如果想快速跳出,使用goto就非常方便了。

for(...)
{
    for(...)
    {
        for(...)
        {
            if(disaster)
                goto error;
        }
    }
}
error:
    //...

其实for循环想提前退出可以使用break,但一个break只能跳出一层for循环,如果三层循环嵌套就得使用3个break才能跳出循环,所以在这种情况下我们使用goto语句更加快捷。 

(看到这里,期待大家点个赞)

 C语言之语句和语句的分类_第2张图片 

你可能感兴趣的:(C语言,c语言,数据结构,开发语言)