- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
结构化程序设计
学习目标
理解算法的概念
能够使用流程图画出顺序、选择、循环三种语句的执行流程
要求熟练使用if、switch语句判断各种选择情况以及嵌套使用
熟练运用while、do-while、for三种循环结构思想解决实际问题
熟练应用break、continue、goto语句与循环语句的搭配使用
依靠不C语言中最基本的三种程序流程进行讲解。
算法——程序设计的灵魂
算法的概念
假如有一张对称的桌子和无限多大小相同的硬币,有两个人轮流往桌子上放硬币,规定硬币不可以重叠,但可以边贴边放置。最后谁放不下谁就输了。假设让你第一个放置,你如何做才能保证自己肯定赢呢?明确了“做什么”,接下来就是寻求解决办法。首先自己赢的话需要在自己没地方放硬币之前,对方就应该没有地方放硬币了,从这分析可以想到,我们的行为和对方的行为应该有一定的联系性。于是可以得到一个解决办法,首先在桌子中央,放置硬币,接下来等对方放置硬币后,只需要在他的对称位置放就可以了,只要他可以放,那么对称位置一定还有空间,直至他没地方放了,我们就赢了。
这是生活中一个运用智慧解决问题的例子,学习编程也是为了解决问题的。那么程序是什么?程序是为完成一项特定任务而用某种语言编写的一组指令序列。一个程序应当包含以下两方面的内容:
(1)对数据的描述:在程序中指定用到哪些数据以及这些数据的类型和数据的组织形式,这就是数据结构(data structure)。
(2)对数据操作的描述:即操作步骤,也就是算法(algorithm)。
著名计算机科学家沃思(Nikiklaus Wirth)提出了一个程序公式:
程序 = 数据结构 + 算法
其中算法是一个程序的灵魂,直到今天,这个公式对于过程化程序来说依然是适用的。
算法有三种种较为常用的表示方法:伪代码法、N-S结构化流程图和流程图法。在以后的学习中,本书较多地用到了流程图这种描述方法。
流程图
流程图是描述问题处理步骤的一种常用图形工具,它是由一些图框和流程线组成的。使用流程图描述问题的处理步骤形象直观、便于阅读。画流程图时必须按照功能选用相应的流程图符号,常用的流程图符号如图3-1所示。
流程图符号
图3-1所示的流程图符号中,列举了四个图框、一个流程线和一个连接点,具体说明如下:
起止框用于表示流程的开始或结束;
输入/输出框用平行四边形表示在平行四边形内写明输入输出的内容用表示代表,如运算等一个简单的流程图
求三个数中的最小值
图3-2表示的是一个求三个数中的最小值的流程图,下面针对该流程图中的执行顺序:
:程序开始;
:进入,;
:进入判断框,判断,如果,进入否则进入的框;
:。
C语言的语句类型
接下来针对图3-3中的几个语句作简单介绍,具体如下:
表达式语句:在各种表达式的后面加上一个分号,就构成了表达式语句;如a = 5;就是一个赋值表达式语句。
空语句:仅有一个分号构成的语句就是空语句。
流程控制语句:在程序中完成特定的控制功能的语句就是流程控制语句。其分类如图3-3。
块语句:用一对{}括起来的若干语句称为块语句,也叫作复合语句。
在这些语句中,最重要的是流程控制语句,它是编写程序要掌握的最基本也最重要的语句类型。
接下来的几个小节就陆续学习这几种流程控制语句。
顺序结构语句
顺序语句流程图
顺序结构语句中,语句从上至下一句一句的执行,是最简单的一种结构语句。接下来通过 打印“我爱C语言”这句话为例来讲解顺序结构语句,如例3-1所示。
#include stdio.h
void main()
{
printf(我\n);
printf(爱\n);
printf(C\n);
printf(语\n);
printf(言\n);
}
运行结果如图-5所示。
运行结果
在例3-1中,使用了5个printf()语句,从上往下依次输出字符“我、爱、C、语、言”。从运行结果可以看出,程序是按照语句的先后顺序依次执行的,这就是一个顺序结构的程序。
选择结构语句
if条件语句
if条件语句有三种语法格式,每一种格式都有其自身的特点,我们分别来学习。
1、if语句——单分支结构
if语句是指如果满足某种条件,就进行相应的处理。例如,小明妈妈跟小明说“如果你考试得了100分,星期天就带你去游乐场玩”,这句话可以通过下面的一段伪代码来描述。
如果小明考试得了100分
妈妈星期天带小明去游乐场
在上面的伪代码中,“如果”相当于C语言中的关键字if,“小明考试得了100分”是判断条件,需要用()括起来,“妈妈星期天带小明去游乐场”是执行语句,需要放在{}中。修改后的伪代码如下:
if (小明考试得了100分)
{
妈妈星期天带小明去游乐场
}
上面的
文档评论(0)