首页 理论教育 算法及流程图:C语言程序设计书摘

算法及流程图:C语言程序设计书摘

时间:2023-10-26 理论教育 版权反馈
【摘要】:不要认为只有“计算”的问题才有算法。广义地说,为解决一个问题而采取的方法和步骤,就称为“算法”。例如,描述太极拳动作的图解,就是“太极拳算法”。一首歌曲的乐谱,也可以称为该歌曲的算法,因为它指定了演奏该歌曲的步骤,按照它的规定就能演奏出预定的曲子。这样的算法虽然可行,但太烦琐。目前看不懂没关系,这里主要是为了了解算法。

算法及流程图:C语言程序设计书摘

做任何事情都有一定的步骤。例如,你去商店购物,首先进入商店挑选自己想要的物品,然后到收银台付款结账,之后才能带着商品离开商店。我们从事各种工作和活动都必须事先想好进行的步骤,然后按部就班地进行,才能避免产生错乱。实际上,在日常生活中,由于已经养成习惯,所以人们并没有意识到每件事情都需要事先设计出“行动步骤”。例如,吃饭、上学、打球、做作业等,事实上这些事情都是按照一定的规律进行的,只是人们不必每次都重复考虑它而已。

不要认为只有“计算”的问题才有算法。广义地说,为解决一个问题而采取的方法和步骤,就称为“算法”。例如,描述太极拳动作的图解,就是“太极拳算法”。一首歌曲的乐谱,也可以称为该歌曲的算法,因为它指定了演奏该歌曲的步骤,按照它的规定就能演奏出预定的曲子。

对同一个问题,可以有不同的解题方法和步骤。

例1.2:求1×2×3×4×5。

最原始的方法:

步骤① 先求1×2,得到结果2。

步骤② 将步骤1得到的乘积2乘以3,得到结果6。

步骤③ 将6再乘以4,得24。(www.xing528.com)

步骤④ 将24再乘以5,得120。

试想,如果是1×2×3×4×5…×1000呢?这样的算法虽然可行,但太烦琐。

改进的算法:可以设置两个变量,一个变量代表被乘数,一个变量代表乘数。不用另设变量存放乘积结果,直接将每一步骤的乘积放在被乘数变量中。实现代码如下,代码中5可以改为1000,最终变量m的值即为结果。

img

这段程序中包含了for循环、赋值运算符等,这些我们将在后续章节中讲到。目前看不懂没关系,这里主要是为了了解算法。

图1.14 例1.2运行结果

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈