《C语言程序设计》基本知识点解答(一)(11)
发布时间:2021-06-07
发布时间:2021-06-07
(4) 有一个或多个输出:执行一个算法后应该有必要的结果
(5) 有效性:算法中的每一个步骤都必须是能有效成立和有效执行,并得到确定结果的。
Q048 如何表示一个计算机算法?(算法)(算法的表示)
A048 一个算法制定好后,总要通过某种方式把它表示出来,以便自己和其他人阅读理解。通常,可以通过“自然语言”、“流程图”、“伪代码”、“计算机语言”等方法来描述一个计算机算法。 自然语言就是人们日常使用的语言,可以是英语、汉语或其它语言。用自然语言表示算法通俗易懂,但文字冗长,含义不太严格,容易出现“歧义性”。此外,用自然语言表示包含分支和循环的算法也不方便。因此,最常见的计算机算法表示方法就是“流程图”。 用“计算机语言”来描述算法实际上就是我们通常所说的编程序,即程序实际上就是对一个算法的描述。“伪代码”是用介于自然语言和计算机语言之间的文字和符号来描述算法。它如同一篇文章。自上而下地写下来。每一行(或几行)表示一个基本操作。它不用图形符号。因此书写方便。格式紧凑,也比较好懂,便于向计算机语言算法(即程序)过渡。
Q049 如何用流程图表示一个计算机算法?(算法的表示)(流程图)
A049 流程图是用一些事先规定好的具有某种含义的图框和流程线来表示算法中的步骤和各种操作。这是用传统流程图表示的求1×2×3×4×5× ×10的算法:
用流程图表示算法直观形象,逻辑清晰,但是占用篇幅较多,
尤其当算法比较复杂时,画流程图既费时又不方便,而且当算 法不断改动时,流程图的修改也非常麻烦,因此流程图宜用于 表示一个完成的最终算法。
流程图有很多种类型,最常见的是传统流程图和N-S流程图。
传统流程图中由于对流程线的使用没有严格限制,所有很容易
造成流程图的混乱和无规律。
Q050 什么是基本程序结构?(程序结构)
A050 为了提高算法的质量,使算法设计和阅读方便,必须限制传统流程图当中流程线的滥用,即不允许无规律的使流程转向,只能顺序的进行下去。但是,一个算法当中难免会包含一些分支和重复而不可能全部由一个一个步骤顺序向下构成。为了解决这个问题,人们规定出几种基本程序结构,然后由这些基本程序结构按一定规律组成一个算法结构,整个算法的描述则是由上而下的将各个基本结构顺序排列起来而成的。基本程序结构有三种,分别是顺序结构、分支结构和重复结构。流程图如下。用这三种基本结构就可以表示任何复杂的算法。
顺序结构