第3章结构化程序设计(C语言课件PPT).ppt
《第3章结构化程序设计(C语言课件PPT).ppt》由会员分享,可在线阅读,更多相关《第3章结构化程序设计(C语言课件PPT).ppt(114页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第三三章章 结构化程序设计结构化程序设计第第2 2页页第三章第三章 结构化程序设计结构化程序设计3.1 3.1 基本概念基本概念结构化程序设计(结构化程序设计(结构化程序设计(structured programmingstructured programmingstructured programming)其概念最早)其概念最早)其概念最早由由由E.W.DijikstraE.W.DijikstraE.W.Dijikstra在在在196519651965年提出的。是以模块功能和处理过程年提出的。是以模块功能和处理过程年提出的。是以模块功能和处理过程设计为主的详细设计的基本原则。是软件开发的一
2、个重要的设计为主的详细设计的基本原则。是软件开发的一个重要的设计为主的详细设计的基本原则。是软件开发的一个重要的里程碑,其主要观点是采用自顶向下、逐步求精的程序设计里程碑,其主要观点是采用自顶向下、逐步求精的程序设计里程碑,其主要观点是采用自顶向下、逐步求精的程序设计方法。从程序流程的角度来看,程序可以分为三种基本结构,方法。从程序流程的角度来看,程序可以分为三种基本结构,方法。从程序流程的角度来看,程序可以分为三种基本结构,即顺序结构、分支结构、循环结构。即顺序结构、分支结构、循环结构。即顺序结构、分支结构、循环结构。这三种基本结构可以组这三种基本结构可以组这三种基本结构可以组成所有的各种复
3、杂程序。成所有的各种复杂程序。成所有的各种复杂程序。第第3 3页页第三章第三章 结构化程序设计结构化程序设计3.2 3.2 程序的语句程序的语句语言程序设计主要包括数据设计和操作设计两个部分,数语言程序设计主要包括数据设计和操作设计两个部分,数据设计是用描述数据的语句来定义数据类型,为数据变量进据设计是用描述数据的语句来定义数据类型,为数据变量进行初始化;操作设计是用来控制程序的流程,完成对数据的行初始化;操作设计是用来控制程序的流程,完成对数据的加工。这个部分主要是一个个程序的执行语句组成的。加工。这个部分主要是一个个程序的执行语句组成的。程序程序的功能就是由执行语句实现的。的功能就是由执行
4、语句实现的。回首页第第4 4页页第三章第三章 结构化程序设计结构化程序设计C C C语句可分为五类:语句可分为五类:语句可分为五类:1.1.1.表达式语句;表达式语句;表达式语句;2.2.2.函数调用语句;函数调用语句;函数调用语句;3.3.3.控制语句;控制语句;控制语句;4.4.4.复合语句;复合语句;复合语句;5.5.5.空语句。空语句。空语句。第第5 5页页第三章第三章 结构化程序设计结构化程序设计表达式语句表达式语句:语言规定,由表达式加上分号语言规定,由表达式加上分号“;”组成表达式语句。其一组成表达式语句。其一般形式为:般形式为:表达式;表达式;表达式语句的执行就是计算表达式的值
5、。表达式语句的执行就是计算表达式的值。例如:例如:x=x=a+ba+b;赋值表达式语句赋值表达式语句x+yx+y;加法运算语句,但计算结果不能保留,无实际意义(不加法运算语句,但计算结果不能保留,无实际意义(不合理)合理)i+;i+;自增语句,自增语句,i i值增加值增加1 1 可以看出任何表达式加分号就可以成为语句。可以看出任何表达式加分号就可以成为语句。第第6 6页页第三章第三章 结构化程序设计结构化程序设计函数调用语句函数调用语句函数调用语句函数调用语句由函数名、实际参数加上分号由函数名、实际参数加上分号由函数名、实际参数加上分号由函数名、实际参数加上分号“;”组成。其一般形式为:组成。
6、其一般形式为:组成。其一般形式为:组成。其一般形式为:函数名函数名函数名函数名(实际参数表实际参数表实际参数表实际参数表);例如:例如:例如:例如:printf(helloprintf(helloprintf(helloprintf(hello!);!);!);!);调用数据输出函数,输出字符串调用数据输出函数,输出字符串调用数据输出函数,输出字符串调用数据输出函数,输出字符串 执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数,执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数,执行函数语句就是调用函数体并把实际参数赋予函数定义中的形式参数,执行函数语句就是调用函数体
7、并把实际参数赋予函数定义中的形式参数,然后执行被调函数体中的语句,求取函数值。然后执行被调函数体中的语句,求取函数值。然后执行被调函数体中的语句,求取函数值。然后执行被调函数体中的语句,求取函数值。(在第五章函数中将详细介在第五章函数中将详细介在第五章函数中将详细介在第五章函数中将详细介绍绍绍绍)。第第7 7页页第三章第三章 结构化程序设计结构化程序设计控制语句控制语句控制语句控制语句控制语句用于控制程序的流程,实现程序的各种结构方式。它们由特定控制语句用于控制程序的流程,实现程序的各种结构方式。它们由特定控制语句用于控制程序的流程,实现程序的各种结构方式。它们由特定控制语句用于控制程序的流程
8、,实现程序的各种结构方式。它们由特定的语句组成。语言有九种控制语句。的语句组成。语言有九种控制语句。的语句组成。语言有九种控制语句。的语句组成。语言有九种控制语句。可分成以下三类:可分成以下三类:可分成以下三类:可分成以下三类:(1)(1)(1)(1)条件判断语句条件判断语句条件判断语句条件判断语句 ifififif语句,语句,语句,语句,switchswitchswitchswitch语句语句语句语句(2)(2)(2)(2)循环执行语句循环执行语句循环执行语句循环执行语句 do whiledo whiledo whiledo while语句,语句,语句,语句,whilewhilewhilew
9、hile语句,语句,语句,语句,forforforfor语句语句语句语句(3)(3)(3)(3)转移语句转移语句转移语句转移语句 gotogotogotogoto语句,语句,语句,语句,breakbreakbreakbreak语句,语句,语句,语句,continuecontinuecontinuecontinue语句,语句,语句,语句,returnreturnreturnreturn语句语句语句语句 第第8 8页页第三章第三章 结构化程序设计结构化程序设计复合语句复合语句复合语句复合语句C C C C语言规定语言规定语言规定语言规定“;”作为语句的结束符,无论将语句书写在一行里或多行,作为语句
10、的结束符,无论将语句书写在一行里或多行,作为语句的结束符,无论将语句书写在一行里或多行,作为语句的结束符,无论将语句书写在一行里或多行,均按均按均按均按“;”来分割不同语句;也可以把多个语句用括号来分割不同语句;也可以把多个语句用括号来分割不同语句;也可以把多个语句用括号来分割不同语句;也可以把多个语句用括号括起来组成的括起来组成的括起来组成的括起来组成的一个语句称为复合语句。在程序中应把复合语句看成是单条语句,而不一个语句称为复合语句。在程序中应把复合语句看成是单条语句,而不一个语句称为复合语句。在程序中应把复合语句看成是单条语句,而不一个语句称为复合语句。在程序中应把复合语句看成是单条语句
11、,而不是多条语句,复合语句也可以嵌套。例如:是多条语句,复合语句也可以嵌套。例如:是多条语句,复合语句也可以嵌套。例如:是多条语句,复合语句也可以嵌套。例如:intintintint a,b,ca,b,ca,b,ca,b,c;b=5;c=6;a=b=5;c=6;a=b=5;c=6;a=b=5;c=6;a=b+cb+cb+cb+c;printf(“aprintf(“aprintf(“aprintf(“a=%d”=%d”=%d”=%d”,a)a)a)a);是一条复合语句。复合语句内的各条语句都必须以分号是一条复合语句。复合语句内的各条语句都必须以分号是一条复合语句。复合语句内的各条语句都必须以分号
12、是一条复合语句。复合语句内的各条语句都必须以分号“;”;”;”;”结尾,在括结尾,在括结尾,在括结尾,在括号号号号“”外不能再加分号。外不能再加分号。外不能再加分号。外不能再加分号。第第9 9页页第三章第三章 结构化程序设计结构化程序设计空语句空语句空语句空语句只有分号只有分号只有分号只有分号“;”组成的语句称为空语句。组成的语句称为空语句。组成的语句称为空语句。组成的语句称为空语句。空语句是什么也不执行的语句。空语句是什么也不执行的语句。空语句是什么也不执行的语句。空语句是什么也不执行的语句。在程序中空语句可用来作空循环体。在程序中空语句可用来作空循环体。在程序中空语句可用来作空循环体。在程
13、序中空语句可用来作空循环体。第第1010页页第三章第三章 结构化程序设计结构化程序设计赋值语句赋值语句赋值语句C CC语言没有专门的赋值语句,赋值语句是由赋值表达式再加上分号构成的语言没有专门的赋值语句,赋值语句是由赋值表达式再加上分号构成的语言没有专门的赋值语句,赋值语句是由赋值表达式再加上分号构成的表达式语句。表达式语句。表达式语句。一定要记住一定要记住一定要记住“=”=”=”在在在C CC语言里的意义是赋值,不是等于的意语言里的意义是赋值,不是等于的意语言里的意义是赋值,不是等于的意义。其一般形式为:义。其一般形式为:义。其一般形式为:变量变量变量=表达式表达式表达式;第第1111页页第
14、三章第三章 结构化程序设计结构化程序设计 在使用中需要注意以下几点:在使用中需要注意以下几点:在使用中需要注意以下几点:在使用中需要注意以下几点:1.1.1.1.在赋值符号在赋值符号在赋值符号在赋值符号“=”=”=”=”右边的表达式也可以又是一个赋值表达式右边的表达式也可以又是一个赋值表达式右边的表达式也可以又是一个赋值表达式右边的表达式也可以又是一个赋值表达式例如:例如:例如:例如:a=b=c=d=e=5;a=b=c=d=e=5;a=b=c=d=e=5;a=b=c=d=e=5;按照赋值运算符的右接合性,因此实际上相当于:按照赋值运算符的右接合性,因此实际上相当于:按照赋值运算符的右接合性,因
15、此实际上相当于:按照赋值运算符的右接合性,因此实际上相当于:a=(b=(c=(d=(e=5);a=(b=(c=(d=(e=5);a=(b=(c=(d=(e=5);a=(b=(c=(d=(e=5);2.2.2.2.注意在变量说明中给变量赋初值和赋值语句的区别。给变量赋初值是注意在变量说明中给变量赋初值和赋值语句的区别。给变量赋初值是注意在变量说明中给变量赋初值和赋值语句的区别。给变量赋初值是注意在变量说明中给变量赋初值和赋值语句的区别。给变量赋初值是变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必须变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必须变量说明的一部分,赋初值
16、后的变量与其后的其它同类变量之间仍必须变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。用逗号间隔,而赋值语句则必须用分号结尾。用逗号间隔,而赋值语句则必须用分号结尾。用逗号间隔,而赋值语句则必须用分号结尾。第第1212页页第三章第三章 结构化程序设计结构化程序设计3.3.3.3.在变量定义说明中,可以给变量赋初值,但不允许连续给多个变量赋在变量定义说明中,可以给变量赋初值,但不允许连续给多个变量赋在变量定义说明中,可以给变量赋初值,但不允许连续给多个变量赋在变量定义说明中,可以给变量赋初值,但不允许连续给多个变量赋初值。例如:初值。例如:初
17、值。例如:初值。例如:intintintint a=b=c=10 a=b=c=10 a=b=c=10 a=b=c=10;应该写为应该写为应该写为应该写为 intintintint a=10,b=10,c=10;a=10,b=10,c=10;a=10,b=10,c=10;a=10,b=10,c=10;4.4.4.4.注意赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可注意赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可注意赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可注意赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句
18、则不能。以出现在任何允许表达式出现的地方,而赋值语句则不能。以出现在任何允许表达式出现的地方,而赋值语句则不能。以出现在任何允许表达式出现的地方,而赋值语句则不能。下述语句是合法的:下述语句是合法的:下述语句是合法的:下述语句是合法的:if(xif(xif(xif(x=y+15)0)z=x;=y+15)0)z=x;=y+15)0)z=x;=y+15)0)z=x;语句的功能是,若表达式语句的功能是,若表达式语句的功能是,若表达式语句的功能是,若表达式x=y+15x=y+15x=y+15x=y+15大于大于大于大于0 0 0 0则则则则z=xz=xz=xz=x。下述语句是非法的:下述语句是非法的:
19、下述语句是非法的:下述语句是非法的:if(xif(xif(xif(x=y+15;)0)z=x;=y+15;)0)z=x;=y+15;)0)z=x;=y+15;)0)z=x;因为因为因为因为=y+15;=y+15;=y+15;=y+15;是语句,不能出现在表达式中。是语句,不能出现在表达式中。是语句,不能出现在表达式中。是语句,不能出现在表达式中。第第1313页页第三章第三章 结构化程序设计结构化程序设计3.3 3.3 数据输入输出数据输入输出在语言中,没有专门的输入输出语句,所有的数据输入输出都是由在语言中,没有专门的输入输出语句,所有的数据输入输出都是由在语言中,没有专门的输入输出语句,所有
20、的数据输入输出都是由在语言中,没有专门的输入输出语句,所有的数据输入输出都是由库函数完成的。它们都是函数语句。最常用的输出函数有库函数完成的。它们都是函数语句。最常用的输出函数有库函数完成的。它们都是函数语句。最常用的输出函数有库函数完成的。它们都是函数语句。最常用的输出函数有printfprintfprintfprintf函数和函数和函数和函数和putcharputcharputcharputchar函数等。函数等。函数等。函数等。printfprintfprintfprintf函数称为格式输出函数,其关键字最末一个字母函数称为格式输出函数,其关键字最末一个字母函数称为格式输出函数,其关键字
21、最末一个字母函数称为格式输出函数,其关键字最末一个字母f f f f即为即为即为即为“格式格式格式格式”(format)(format)(format)(format)之意。其作用是按指定的格式,把相关的数据显之意。其作用是按指定的格式,把相关的数据显之意。其作用是按指定的格式,把相关的数据显之意。其作用是按指定的格式,把相关的数据显示到显示器上。输入输出标准库函数原型在头文件示到显示器上。输入输出标准库函数原型在头文件示到显示器上。输入输出标准库函数原型在头文件示到显示器上。输入输出标准库函数原型在头文件“stdio.hstdio.hstdio.hstdio.h”中,如中,如中,如中,如果使
22、用其中函数,必须在程序的开头写上果使用其中函数,必须在程序的开头写上果使用其中函数,必须在程序的开头写上果使用其中函数,必须在程序的开头写上#include#include#include#include 。该命令是。该命令是。该命令是。该命令是预处理语句,不是真正的预处理语句,不是真正的预处理语句,不是真正的预处理语句,不是真正的C C C C命令语句,所以后面不要写命令语句,所以后面不要写命令语句,所以后面不要写命令语句,所以后面不要写“;”。下面分别。下面分别。下面分别。下面分别介绍常用的输入输出函数,要了解其他输入输出函数,查阅介绍常用的输入输出函数,要了解其他输入输出函数,查阅介绍常
23、用的输入输出函数,要了解其他输入输出函数,查阅介绍常用的输入输出函数,要了解其他输入输出函数,查阅C C C C语言函数库。语言函数库。语言函数库。语言函数库。第第1414页页第三章第三章 结构化程序设计结构化程序设计 printfprintf函数函数1.printf1.printf函数调用的一般形式为:函数调用的一般形式为:printfprintf(“(“格式控制字符串格式控制字符串”,输出表列,输出表列);第第1515页页第三章第三章 结构化程序设计结构化程序设计例例例3.13.13.1:void main()void main()void main()intintint a=65,b=6
24、6;a=65,b=66;a=65,b=66;printf(%dprintf(%dprintf(%d%dn,a,bdn,a,bdn,a,b);););printf(%d,%dn,a,bprintf(%d,%dn,a,bprintf(%d,%dn,a,b);););printf(%c,%cn,a,bprintf(%c,%cn,a,bprintf(%c,%cn,a,b);););printf(aprintf(aprintf(a=%=%=%d,bd,bd,b=%=%=%d,a,bd,a,bd,a,b);););程序运行后结果如下:程序运行后结果如下:程序运行后结果如下:65 6665 6665 666
25、5,6665,6665,66A,BA,BA,Ba=65,b=66a=65,b=66a=65,b=66在这个例子中四次输出了在这个例子中四次输出了在这个例子中四次输出了a,ba,ba,b的值,但由于格式控制串不同,输出的结果也不相同。的值,但由于格式控制串不同,输出的结果也不相同。的值,但由于格式控制串不同,输出的结果也不相同。第第1616页页第三章第三章 结构化程序设计结构化程序设计printfprintf函数格式字符串函数格式字符串格式字符串的一般形式为:格式字符串的一般形式为:标志标志输出最小宽度输出最小宽度.精度精度长度长度 类型类型 printfprintf函数的返回值,是本次调用中输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 结构 程序设计 语言 课件 PPT
限制150内