(二)任务目标
本任务是认识C语言的三种基本语句结构。通过学习,学生能理解顺序、选择、循环这三种结构的区别,掌握if、else、switch、case、for、while等关键字的使用方法,会编写简单的嵌套结构的程序。
知识准备
1.C语言的集成开发环境
大多数人学习C语言都会选择集成开发环境(IDE)进行练习,例如前文提到的Keil软件。使用集成开发环境的目的是缩短、简化C语言学习的时间与流程,降低代码管理难度、学习成本,使用集成开发环境,也可以更加方便地对代码进行调试、对项目进行管理。这里总结几种集成开发环境。
(1) VS/Eclipse系列
Visual Studio(图3-1)是绝大多数学习、使用C语言的人员使用的IDE,软件功能强大、调试方便;Eclipse(图3-2)也是C语言开发的主流IDE,不仅跨平台(Windows、Linux、Mac),而且插件多、灵活,应用Eclipse的IT企业也是数不胜数,这得益于IBM公司将Eclipse开源的结果。使用Eclipse开发,无论是将来转Java也好,还是用Python也好,都无须再花费切换平台(操作系统)、开发环境(IDE)的成本了,但由于该系列软件过于“臃肿”,从而使速度比较慢,并且占用空间大,同时VS还是收费的,因此很多C语言开发者都会转向别的开发环境。
图3-1 Visual Studio
图3-2 Eclipse
(2) GCC系列
如图3-3所示,这是很多内核、驱动(Linux方向)学习的首选,相当多的C语言开发人员在达到一定程度以后,都会转向使用GCC软件。这是因为该方式简单、灵活、高效,不仅可以高效率控制编译器对源代码的“加工”过程,而且生成的可执行代码运行效率也足够高效。GCC系列分为两个平台:Linux下GCC和Windows下GCC的移植版Cygwin、MinGW、Djgpp。如果学习安全、嵌入式、驱动开发工程师的课程,可以选择Linux下GCC方式进行开发。另外,由于Mac系统是类UNIX内核,所以GCC也是支持的。
(3)CB/CL等系列
Windows平台下,相当多的开发人员会转而使用CodeBlocks、CodeLite、C-Free(图3-4)等“轻量级”IDE。这些IDE比较小众,但是麻雀虽小,却五脏俱全,它们对C语言的支持(主要看编译器,IDE只是代码编辑器、工程管理器),一点不亚于GCC、VS/Eclipse系列。但由于略显“小众”,遇到问题解决起来比较耗时,配置起来也略微烦琐。
图3-3 GCC编译器
图3-4 “轻量级”IDE
本任务采用的Dev-C ++ 编译器(图3-5)是一个Windows环境下的适合初学者使用的轻量级C/C ++ 集成开发环境(IDE)。
图3-5 Dev-C ++ 编辑器
2.语言程序的基本结构
从结构化程序设计角度出发,程序只有三种结构:顺序结构、选择结构、循环结构。
(1) 顺序结构
如图3-6所示,先执行A,再执行B。
图3-6 顺序结构
(2) 选择结构
如图3-7所示,存在某条件P,若P为真,则执行A,否则执行B。
图3-7 选择结构
(3) 循环结构
有两种结构:当型和直到型。
当型结构如图3-8所示,当P条件成立时(T),反复执行A,直到P为“假”时,才停止循环。
图3-8 当型结构
直到型如图3-9所示,先执行A,再判断P,若为F,再执行A,直到P判断为T才停止循环。
图3-9 直到型结构
3.C语句
C语句可分为五大类。
(1) 表达式语句
表达式语句由表达式加上分号“;”组成。其一般形式为:
执行表达式语句就是计算表达式的值,例如:
(2)函数调用语句
由函数名、实际参数加上分号“;”组成。其一般形式为:
例如:
(3) 控制语句(改变语句的执行顺序)
(4) 复合语句(语句体)
用{ }括起来的一系列语句。
例如:
(5)空语句
只有分号“;”组成的语句称为空语句。空语句是什么也不执行的语句。在程序中空语句可用来作空循环体。例如: