第4章程序的控制结构PPT课件

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
else部分可以没有。 if (表达式) 语句1; 语句3
当表达式值为0时,直接执行语句3
if-else嵌套使用时,注意else和谁配对的问 15
else-if
if的一种扩展形式
if (表达式) 语句1;
else if (表达式) 语句2;
else if (表达式) 语句3;
…………
else
例4.9:先由计算机“想”一个1到100之 间的数请人猜,如果人猜对了,则结束 游戏,否则计算机给出提示,告诉人所 27
猜数游戏用到的库函数
随机函数rand()
#include <stdlib.h>
RAND_MAX在stdlib.h中定义,不大于双字节 整数的最大值32767
产生[0,RAND_MAX] 之间的随机数
如果循环次数已知,用for 如果循环次数未知,用while 如果循环体至少要执行一次,用do-
while 这只是“一般”原则,不是“原则”
26
编程完成例4.6 ,例4.9
例4.6:猜数游戏:先由计算机“想”一 个数请人猜,如果人猜对了,则计算机 给出提示:“Right!”, 否则提示: “Wrong!”,并告诉人所猜的数是大还是 小。
B NS图
9
分支结构(选择结构)
Y
N
条 件P
A
B
如果 成条绩件<6P0 那么
Y通知补考 N
否则A
ຫໍສະໝຸດ Baidu
B
告知你考试成绩
10
循环结构
条 假件P 假

A
A

条 件P

当型循环
直到型循环
11
循环结构
条 假件P 假

A
当型循环
当P为真
A
当P为真
A
12
循环结构
A

条 件P

直到型循环
A
直到P为假
A
直到P为假
语句4;
语句5;
16
编程完成例4.5
体型判断。按“体指数”对肥胖程度进行划分:
体指数t = 体重w / (身高h)2
(w 单位为公斤,h单位为米)
当t < 18时,为低体重;
当t介于18和25之间时,为正常体重;
当t介于25和27之间时,为超重体重;
当t >= 27时,为肥胖。
编程从键盘输入你的身高h和体重w,根据给定公式 计算体指数t,然后判断你的体重属于何种类型。
用3种方法编程:
算法1:用不带else子句的if语句编程
17
switch
多路选择 switch (表达式)
{ case 常数1: 语句序列1; case 常数2: 语句序列2; ………… default: 语句序列3;
}
default可以没有,但最好不省略
18
编程完成计算器程序……例4.8
编程设计一个简单的计算器程序,要求 根据用户从键盘输入的表达式: 操作数1 运算符op 操作数2 然后,计算表达式的值,指定的运算 符为加(+)、减(-)、乘(*)、除 (/)
19
w循hi环le—(—表w达h式il) e,for
{ 语句;
} for (表达式1; 表达式2; 表达式3)
{ 语句;
7
结构化程序设计的核心思想
采用顺序、选择和循环三种基本结构作为程 序设计的基本单元
只有一个入口; 只有一个出口; 无死语句,即不存在永远都执行不到的语句; 无死循环,即不存在永远都执行不完的循环。
采用“自顶向下、逐步求精”和模块化的方 法进行结构化程序设计
8
顺序结构 A
B
传统流程图
A
算法特性:
有穷性
确定性
有效性
没有输入或有多个输入
3
算法的分类
数值运算算法:
解决的是求数值解的问题,例如用辗转 相除法求两个数的最大公约数等
非数值运算算法:
主要用于解决需要用分析推理、逻辑推 理才能解决的问题,例如人工智能中的 许多问题,查找、分类等问题
4
算法的表示方法
自然语言表示 传统的流程图表示 N-S结构化流程图表示 伪代码表示
13
复合语句
{}括住的若干条语句构成一个复合语句 语句块内可以定义变量
变量仅在定义它的复合语句内有效 变量必须在复合语句的开头定义
复合语句可以用在任何可以使用语句的地 方
14
选择i结f构-的e一l种s最e常用形式
if (表达式) 语句1;
else 语句2;
语句3
表达式值非0时,执行语句1,然后语句3; 表达式值为0时,执行语句2,然后语句3
magic = rand();
产生[0,b-1] 之间的随机数
magic = rand()%b;
产生[a,a+b-1] 之间的随机数
23
do-while
do { 语句; }while (表达式);
首先执行语句,然后判断表达式的值。 如果表达式为0,继续向下执行,否则, 再次执行语句,再次判断表达式的值
语句会被至少执行一次
24
当循环条件第一次就为假时
条 假件P 假

A
A

条 件P

当型循环
直到循环
25
选择三种循环的一般原则
第4章 程序的控制结构
内容提要
算法的描述方法 基本控制结构 基本控制语句 常用算法,如累加、累乘、统计、递推、
迭代、穷举等 程序的基本版式 结构化程序设计的基本思想
2
算法的概念
数据结构+算法=程序
算法:为解决一个具体问题而采取 的确定的有限的操作步骤,这里仅 指计算机能执行的算法
}
20
while
while (表达式) { 语句; }
只要表达式的值为非0,就重复执行语句, 直到表达式值为0时止
21
fforor(表达式1; 表达式2; 表达式3)
{ 语句;
} 首先执行表达式1。如果表达式2的值为非0,
就重复执行语句和表达式3,直到表达式2的值 为0时止
相当于: 表达式1; while (表达式2)
{
语句;
表达式3;
}
22
注意
在for和while语句之后一般没有分号 有分号表示循环体就是分号之前的内容(空循
环体)
while (i < 100); i++;
for (i = 0; i < 100; i++); printf("%d", i);
for通常有一个循环变量控制循环的次数,不 要在循环体内改变这个变量
5
C程序结构
C程序
源程序文件1 源程序文件2 源程序文件3
编译预处理命令 全局变量声明 函数1 … 函数n
函数首部
函数体
局部变量声明 执行语句
6
构成程序的三种基本结构
顺序结构 选择结构 循环结构 已经证明,任何程序均可只用这三种结构综
合描述 只用这三种结构编制的程序,叫结构化程序 程序必须符合结构化规则
相关文档
最新文档