AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计

AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计

ID:40226421

大小:1.09 MB

页数:55页

时间:2019-07-27

AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计_第1页
AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计_第2页
AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计_第3页
AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计_第4页
AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计_第5页
资源描述:

《AT单片机原理及应用--C语言教程(海涛)第7章 C语言设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、ATmega单片机原理及应用——C语言教程第7章ATmegaC语言实用程序控制流主讲:海涛广西大学电气工程学院内容提要C语言的程序控制流程可以分为3种基本结构,即顺序结构、选择结构和循环结构。通过这3种基本的程序结构可以构成各种复杂的程序。本章将主要介绍这些基本程序结构的语句实现,包括if语句、switch语句、while语句和for语句的语法格式和语意内容,以及各语句在程序控制中的应用,并为后面章节的学习打好基础。7.1C语言的结构化程序设计C语言是一种结构化的编程语言。从程序流程的角度来看,结构化的程序包含3种基本结构,即顺序结构、选择结构和循环结构。这3种基本的程序

2、结构又可以相互组合、嵌套,从而构成各种复杂程序。1、顺序结构顺序结构是一种最基本的程序结构。在这种控制结构中,程序按照程序的存放地址由低向高顺序执行。如图7.1所示,程序先执行语句1,再执行语句2,两者按顺序关系执行。图7.1顺序结构流程例7.1己知长方体的长为l,宽为w,高为h,求其体积。源程序为:main(){intl,w,h,volume;//定义变量printf("Pleaseinputthreenumbers!");//输入变量scanf("%d%d%d",&l,&w,&h);volume=l*w*h;printf("l=%d,w=%d,h=%d,volum

3、e=%d",l,w,h,volume);//输出l、w、h、v}2、选择结构选择结构使计算机具有了决策和选择的能力。如图7.2所示,在选择控制结构中,程序先是对某个条件语句进行判断,如果条件为“真”,则执行语句1;如果条件为“假”,则执行语句2,语句1和语句2最后汇集到一起并从一个程序出口中退出。由选择结构的上述功能可以看出,选择语句用于对计算机的某个事件处理提供多条通道,从而使计算机具有选择控制能力。图7.2选择结构流程选择结构程序的设计,需要考虑两个方面的问题。其一是条件的表达,其二是选用何种选择结构语句来实现。对于C语言来说,一般用关系表达式或逻辑表达式表示选择

4、条件,而选择结构的实现则常用if或switch语句。例7.2输入两个整数,输出其中的较大值。main(){inta,b;//定义两个变量a,bprintf("Pleaseinputtwointegers!");//输入两个数scanf("%d,%d",&a,&b);if(a>b)printf("%d",a);//输出aelseprintf("%d",b);}3、循环结构循环结构用于重复执行一组有规律的指令集合,它可分为无条件循环和条件循环两种。由于无条件循环会导致程序的结构混乱,并使程序的可读性变低,因此,在程序设计中一般不采用无条件循环结构,本书也不再做进一步的

5、讨论。对于条件循环结构,程序在给定条件成立时会反复执行某条语句,直至条件不再成立为止,如图5.3所示。C语言提供了for、while等多种循环语句,它们可以相互组成各种不同形式的循环结构。图7.3循环结构的流程C语言中的循环结构又可以分为当型循环结构和直到型循环结构。在当型循环结构中,程序首先判断循环条件,如果为“真”,则程序重复执行循环体中的语句;如果为“假”,则退出循环。在直到型循环结构中,程序首先执行的是循环体中的语句,然后再判断循环条件,如果条件为“真”,则再重复执行语句,否则就退出循环。7.2选择语句选择语句用来判断给定的条件是否满足要求,并根据判断的结果选择程

6、序的执行分支,它构成了计算机的判断决策基础,是模块化程序的重要组成部分。C语言中常用的选择语句有:if语句和switch语句。其中if语句具有if…else、if和elseif三种形式。7.2.1if语句1、if…else分支if…else语句的基本结构形式为:if(表达式)语句1://当表达式为“真”时else语句2://当表达式为“假”时语句说明:在这种结构中,如果表达式的值为“真”,则程序执行语句1;如果表达式的值为“假”,则程序执行语句2。其执行过程如图7.4所示。图7.4if…else语句流程结构中的判断表达式可以为逻辑表达式或关系表达式,也可以为任意的数值类型

7、。语句1和语句2可以是一条语句也可以是由大括号构成的复合语句。例7.3输入一个数,如果为2,则输出“YES”;否则输出“NO”。main(){inta;printf("Pleaseinputoneinterger!");scanf("%d",&a);if(a==2)printf("YES");elseprintf("NO");}2、if分支if分支是if…else语句的简单形式,当if…else语句缺省else部分时,就形成了if结构的分支,其基本结构形式为:if(表达式)语句;//当表达式为“真"时语句说明:if

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。