1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > c语言程序设计 k 《C语言程序设计》谭浩强版-教学教案 k.doc

c语言程序设计 k 《C语言程序设计》谭浩强版-教学教案 k.doc

时间:2024-04-14 10:44:24

相关推荐

c语言程序设计 k 《C语言程序设计》谭浩强版-教学教案 k.doc

宜宾学院教案

C语言程序设计_课程

周 次

第1周,第2次课

章 节

名 称

第二章 程序的灵魂——算法

授 课

方 式

课堂讲授(√ );实验课( );其他方式( )

教学

时数

2

教 学 目 的

1、了解算法的概念

2、掌握结构化程序的三种基本结构,及算法的程序流程图、N-S图表示法

教学重点与难点

重点:

怎样表示一个算法

难点:

三种基本结构,N-S图表示法

参考资料

《C语言程序设计教程》 谭浩强 高等教育出版社

《C高级实用程序设计》 王士元 清华大学出版社

《C程序设计及应用》 李盘林、孟宪福著高等教育出版社

《C语言程序设计》 王树义 钱达源 编著 大连理工大学出版社

C语言程序设计课程教案 何明儒教授等 四川大学计算机学院

授课内容与过程

步骤一 复习引导

从C程序的构成到C程序的设计过程

步骤二 讲授新课

一个程序包括以下两方面内容:

1.? 1. 对数据的描述。在程序中要指定数据的类型和数据的组织形式,即数据结构;

2.?对操作的描述。即算法,为解决一个问题而采取的方法和步骤。

3.?著名计算机科学家Wirth提出一个公式:数据结构+算法=程序

?

简单的算法举例

?

例1:设有两个杯子A和B,分别盛放酒和醋,要求将它们互换。

S1:C ← A

S2:A ← B

S3:B ← C

例2:从10个数中挑出最大数,并将之置入max。

S1:i=1, 令max等于第一个数;

S2:i=i+1;

S3:将max与第 i 个数进行比较,若前者小于后者,将修正max为第 i 个数;否则进行S4;

S4:若i <10,则转到S2;否则输出max并结束。

例3:求1~100的和

S1:sum←0,t←1;

S2:sum←sum+t

S3:t←t+1

S4:若t <= 100,则转到S2,否则转到S5;

S5:输出sum,结束。

例4:求n!

S1:s ← 1,t ←1;

S2:s ← s * t;

S3:t ← t+1;

S4:若 t <= n,则返S2,否则输出s并结束。

?

算法的特征:

1.有穷性;

2.确定性;

3.有零个或多个输入;

4.有一个或多个输出;

5.有效性;

怎样表示一个算法

1.用自然语言表示算法–通俗易懂,但易出现“歧义性”。

2.用流程图表示算法–直观形象,易于理解。

程序的三种基本结构:顺序结构、选择结构、循环结构

B

B

A

A

B

P

A

P

A

P

A

P

3.用N-S流程图表示算法

A?

A

?

B

P

T

F

A

B

A

当P成立

A

当P成立

4.用伪代码表示算法

?

5.用计算机语言表示算法(即实现算法)

我们的任务是用计算机解题,也就是要用计算机实现算法。计算机是无法识别流程图和伪代码的。只有用计算机语言编写的程序才能被计算机执行(当然还要经过编译成目标程序才能被计算机识别和执行)。因此,在用流程图或伪代码描述出一个算法后,还要将它转换成计算机语言程序。

用计算机语言表示算法必须严格遵循所用语言的语法规则,这是和伪代码不同的。我们将前面介绍过的算法用C语言表示。

四、结构化程序设计方法

前面介绍了结构化的算法和三种基本结构。一个结构化程序就是用高级语言表示的结构化算法。用三种基本结构组成的程序必然是结构化的程序,这种程序便于编写、阅读、修改和维护。这就减少了程序出错的机会,提高了程序的可靠性。

结构化程序设计强调程序设计风格和程序结构的规范化,提倡清晰的结构。如果面临一个复杂的问题,是难以一下子写出一个层次分明、结构清晰、算法正确的程序的。结构化程序设计方法的基本思路是,把一个复杂问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。

具体说,采取以下方法保证得到结构化的程序。

(1) 自顶向下;(2) 逐步细化;(3) 模块化设计;(4) 结构化编码。

在接受一个任务后应怎样着手进行呢?有两种不同的方法:一种是自顶向下,逐步细化;一种是自下而上,逐步积累。以写文章为例来说明这个问题。有的人胸有全局,先设想好整个文章分成哪几个部分,然后再进一步考虑每一部分分成哪几节,每一节分成哪几段,每一段应包含什么内容,如图2.36示意。

用这种方法逐步分解,直到作者认为可以直接将各小段表达为文字语句为止。这种方法就叫 做“自顶向下,逐步细化”。

结构化程序设计方法强调:1.程序设计风格和程序结构的规范化,2.提倡清晰的结构。

①自顶向下

②逐步细化

③模块化设计

④结构化编码

?

步骤三--课堂小结:

1.程序的三种基本结构:顺序、选择、循环

2.5种描述算法的方法,关键是N-S图

3.灵活运用三种基本结构

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。