第3章 程序控制结构(1)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
14
(2) 选择结构,如图。p代表一个条件,当 p条件成立(或称为“真”)时执行a,否 则执行b。注意,只能执行a或b之一。两 条路径汇合在一起然后出口。
真 语句A p 假 语句B 真 语句A p 假 语句B
(a) 图
15
(b) 图
① 当型循环结构,见下图。当p条件成 立(“真”)时,反复执行a操作。直到p 为“假”时才停止循环。
18
结构化程序设计方法。强调程序设计的
风格和程序结构的规范化,提倡清晰的 结构,其基本思路是将一个复杂问题的 求解过程划分为若干阶段,每个阶段要 处理的问题都容易被理解和处理。 在本章中,我们将先通过几种最基本的语 句,以及用它们构成顺序结构的程序。 在后两讲分别介绍选择结构和循环结构 的程序设计。
if(x>y) z=x; else z=y;
9
(2)
函数调用语句。由一次函数调用 加一个分号构成一个语句。 world");
例如:printf("hello
10
(3) 表达式语句。 由一个表达式的最后加一 个分号就成了一个语句。最典型的是,由赋值 表达式构成一个赋值语句。 例如: i=i+1 i=i+1;
假 真 A 当p为真 A
p
(a) 图
16
(b) 图
② 直到型循环结构,见图6。先执行a操作 ,再判断p是否为“假”,若p为“假”,再 执行a,如此反复,直到p为“真”为止。
源自文库
A A
直到p为真
假 p
真
(a) 图
17
(b) 图
已经证明,由以上基本结构组成的程序
能处理任何复杂的问题。 前面图中方框中的a,b,A,B等可以是一 个简单的语句,也可以又是一个基本结 构。 a b 例如,下图是一个顺序结构 ,它由两个 操作顺序组成。虚线框内是一个直到 型循环结构 , 可以用“b”表示 , 因此就 假 可以理解为顺序结构。 真
青岛工学院
表达式
4 * pi * r * r * r / 3
语句
4 * pi * r * r * r / 3; V = 4 * pi * r * r * r / 3; i = 100;
2
在上一章介绍了程序中用到的一些
基本要素(常量、变量、运算符、表 达式等),它们是构成程序的基本成 分。 在第1章中已经介绍了几个简单的C 程序。 本章将介绍为编写简单的程序所必 需的一些内容。
逐步掌握自顶向下的方法对问题进行分析、模块化设计和结构化编码等步骤
19
把大的复杂的问题分解成小问题后再解决 面对一个复杂的问题,首先进行上层(整
体)的分析,按组织或功能将问题分解成 子问题,如果子问题仍然十分复杂,再做 进一步分解,直到处理对象相对简单,容 易处理为止。 当所有的子问题都得到了解决,整个问题 也就解决了。 每一次分解都是对上一层的问题进行细化 和逐步求精,最终形成一种类似树形的层 次结构,来描述分析的结果。
C语言允许一行写几个语句,也允许一个语句拆开写在几行上,书 写格式无固定要求
12
为了提高程序设计的质量和效率,现在
普遍采用结构化程序设计方法。结构化 程序由若干个基本结构组成。每一个基 本结构可以包含 一个或若干个语句。
13
(1)
顺序结构,见下图。先执行a操作,再 执行b操作,两者是顺序执行的关系。图 中(b)是NS结构化流程图。
6
在第2章中已经说明,程序应该包括数
据描述(由声明部分来实现)和数据操作 (由语句来实现)。数据描述主要定义数 据结构(用数据类型表示)和数据初值。 数据操作的任务是对已提供的数据进行 加工。 C语句可以分为以下5类: (1)控制语句、(2)函数调用语句、(3)表 达式语句(4) 空语句、(5)复合语句
(是表达式,不是语句) (是语句)
由于c程序中大多数语句是表达式语句(包 括函数调用语句),所以有人把c语言称作“表 达式语言”。
11
(4) 空语句。下面是一个空语句: ; 即只有一个分号的语句,它什么也不做。有时 用来做被转向点,或循环语句中的循环体(循 环体是空语句,表示循环体什么也不做)。 (5) 可以用 {}把一些语句括起来成为复合语 句,又称分程序。如下面是一个复合语句。 { x=3; printf("%f",x); }
5
函数
C语句都是用来完成一定操作任务的。 函数首部 函数体 但声明部分的内容不应称为语句。如:
int a;不是一个C语句,因为它不产生机 局部 执行 器操作,而只是对变量的定义。 语句 变量 声明 以main函数为例,一个函数包含声明部分 和执行部分,执行部分即由语句组成;或 者说一个函数由数据定义部分和执行语句 组成。
7
控制语句,完成一定的控制功能。c只有 9种控制语句,它们是: ① ② ③ ④ ⑤ if()~else~ for()~ while()~ do~while() continue (条件语句) (循环语句) (循环语句) (循环语句) (结束本次循环语句)
8
⑥ break (中止执行switch或循环语句) ⑦ switch (多分支选择语句) ⑧ goto (转向语句) ⑨ return (从函数返回语句) 上面9种语句中的括号()表示其中是一个条 件,~表示内嵌的语句。例如: “if()~else~”的具体语句可以写成:
20
学生成绩统计程序
成绩输入
数据计算
数据查找
输出成绩
计算学生平均分
计算课程平均分
21
将模块组织成良好的层次系统,顶层模块调用其
下层模块以实现程序的完整功能,每个下层模块 再调用更下层的模块,从而完成程序的一个子功 能,最下层的模块完成最具体的功能。 遵循模块独立性的原则,即模块之间的联系应尽 量简单。 一个模块只完成一个指定的功能。 模块之间只通过参数进行调用。 一个模块只有一个入口和一个出口。 模块内慎用全局变量。
3
语句的分类
程序的三种控制结构
语句的顺序执行(顺序结构)
4
和其他高级语言一样,C语言的语句用 来向计算机系统发出操作指令。一个语 句经编译后产生若干条机器指令。一个 实际的程序应当包含若干语句。
指令1
指令 01001001011010001001110
指令2 指令3
语句1 语句… 语句n 程序