C语言编程从零开始学(视频教学版)
上QQ阅读APP看书,第一时间看更新

3.7 疑难解惑

疑问1:何谓算法,如何判断数值算法的优势?

答:算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可以用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

疑问2:N-S流程图都有那些优缺点?

答:优点如下:

(1)N-S图形象直观,具有良好的可见度。例如循环的范围、条件语句的范围都是一目了然的,所以容易理解设计意图,为编程、复查、选择测试用例、维护都带来了方便。

(2)N-S图简单、易学易用。

缺点:手工绘图和修改时比较麻烦。

疑问3:C语言结构化程序的设计思想以及方法原则?

答:结构化程序设计的总体思想是采用模块化结构,自上而下,逐步求精,即首先把一个复杂的大问题分解为若干相对独立的小问题。然后,对每个小问题编写出一个功能上相对独立的程序块(模块)。最后将各程序块进行组装成为一个完整的程序。

C语言结构化程序的方法原则:

(1)只采用三种基本的程序控制结构来编制程序,从而使程序具有良好的结构。

(2)程序设计自顶而下。

(3)用结构化程序设计流程图来表示算法。

疑问4:结构化程序的三种基本结构有什么共同点吗?

答:共同点如下:

(1)都是只有一个入口和一个出口。

(2)结构内的每一个框都有机会被执行。

(3)结构内没有死循环。

疑问5:结构化程序的优点是什么?

答:是使程序具有良好的结构,使程序易于设计、易于理解、易于调试修改,以提高设计和维护程序工作的效修改。

疑问6:N-S流程图的结构都有那些?

答:N-S流程图也分为三种,分别为顺序结构、选择结构和循环结构、分别如图3-44~图3-47所示。

图3-44 顺序结构

图3-45 选择结构

图3-46 当型循环

图3-47 直到型循环