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

简介: C语言之语句和语句的分类

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

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

空语句

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

#include<stdio.h>
int main()
{
    ;//空语句
    return 0;
}

表达式语句

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

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

函数调用语句

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

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

复合语句

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

#include<stdio.h>
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语言有九种控制语句。可以分为以下三类:

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

goto语句

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

例如:

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

运行结果:

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

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

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

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


目录
相关文章
|
C语言
关于C语言中函数的知识总结(一)---函数的功能和分类
关于C语言中函数的知识总结(一)---函数的功能和分类
|
存储 安全 C语言
【C语言】字符分类函数、字符转换函数、内存函数
【C语言】字符分类函数、字符转换函数、内存函数
80 0
【C语言】字符分类函数、字符转换函数、内存函数
|
存储 编译器 C语言
C语言进阶第六课-----------字符分类函数和内存的开辟 2
C语言进阶第六课-----------字符分类函数和内存的开辟
|
C语言
C语言进阶第六课-----------字符分类函数和内存的开辟 1
C语言进阶第六课-----------字符分类函数和内存的开辟
|
2月前
|
编译器 C语言
C语言常见编译错误分类及其解决方案
C语言常见编译错误分类及其解决方案
192 1
C语言常见编译错误分类及其解决方案
|
2月前
|
存储 人工智能 BI
C语言:数组的分类
C语言中的数组分为一维数组、多维数组和字符串数组。一维数组是最基本的形式,用于存储一系列相同类型的元素;多维数组则可以看作是一维数组的数组,常用于矩阵运算等场景;字符串数组则是以字符为元素的一维数组,专门用于处理文本数据。
|
6月前
|
C语言
【C语言】:字符分类与转换函数
【C语言】:字符分类与转换函数
48 1
|
6月前
|
C语言
C语言学习记录——鹏哥字符分类函数、字符转换函数
C语言学习记录——鹏哥字符分类函数、字符转换函数
854 2
|
7月前
|
C语言
【C语言】字符分类函数与字符转换函数
【C语言】字符分类函数与字符转换函数
64 1
|
7月前
|
程序员 C语言
【C语言】函数----函数的分类、库函数详解(strcpy、memset)、自定义函数的实现(找较大值、交换两个数)
【C语言】函数----函数的分类、库函数详解(strcpy、memset)、自定义函数的实现(找较大值、交换两个数)
45 0