forum.jpg
三种结构流程图
在文章嵌入式Linux开发《C语言专题(二:有趣的基本数据类型)》中对C语言中的变量、变量的类型和 嵌入式Linux开发《C语言专题(三:总结运算符及优先级(3))》中对运算符和优先级进行详细的描述,它们是数据能够进行计算的基础。从这一篇开始将详细讲解C语言中的三种典型的程序结构:顺序结构、选择结构和循环结构。打算用4-5篇文章来详细描述这三种程序结构。先提几个概念:空语句、表达式语句、代码块,然后对三种程序结果做简要介绍,最后详细介绍顺序结构。
空语句:只包含一个分号(;),堪称C语言中最简单的语句,有时候并不一定要执行某些任务,比如要求必须进行语句的配对,比如if/else语句,if语句中完成正常的功能,else语句中可以增加一条空语句。有时候也可能执行某些任务,比如在单片机开发中常见的延时程序: for(i=0;i<255;i++){for(j=0;j<255;j++);} 注意:if else for都是C语言中的关键字,在讲解三种程序结构时,详细讲解。
表达式语句:就是在表达式的后面添加一个分号,比如a++; a+3;等
代码块:就是用大括号{}括起来的一堆内容,这些内容可以是多条语句。在选择结构、循环结构和函数中用的比较多。
(1)顺序结构:从头到位按照先后顺序一句一句执行代码,直到代码执行完毕。
(2)选择结构:代码执行到某一步时,需要判断相应的条件,根据条件的结果来执行不同分支的代码。常见的有if...else、switch...case语句来实现
(3)循环结构:内部有一段代码会连续执行n次,这部分代码就是循环结构中的循环体循。对于循环结构来说,需要变量的初始化,变量的终止条件(也就是能够执行多少次循环体)以及循环体。常见的有for、while、do...while语句来实现。
这三种结构的NS流程图(是结构化编程中的一种可视化建模)如上图所示。
顺序结构在这三种结构中最为简单,选择结构和循环结构的代码块语句中都有顺序结构的影子。简单说明一下,其实前面几篇文章的测试代码中有的例子就属于顺序结构。代码如下图所示:
forum.jpg
顺序结构代码