C++语言程序设计

什么是程序？
程序规定了计算机执行的动作和动作的顺序。如同开会的议程，每周的课程安排表一样。一个程序应包括以下两方面的内容：
（1） 对数据的描述。在程序中要指定数据的类型和数据的组织形式，即数据结构。
（2） 对操作的描述。即操作步骤，也就是算法。
数据是操作的对象，操作的目的是对数据进行加工处理，以得到期望的结果。作为程序设计人员，必须认真考虑和设计数据结构和操作步骤。著名的计算机科学家Nikiklaus Wirth提出了一个公式：
程序 ＝ 数据结构 ＋ 算法。
程序设计和程序编码
一些程序员，尤其是初学程序设计者，常常认为程序设计就是用某种程序设计语言编写代码，这其实是错误的认识。上述工作应该被看成为编码（coding），它是在程序设计完成之后才开始的。拿房屋设计的例子来讲，房屋设计这个过程不涉及砌转垒瓦的具体工作，这些工作是房屋施工阶段进行的。在完成了房屋设计，有了设计图纸之后，施工阶段才能开始。如果不作设计，直接施工，很难想象房屋能不能建造完成，或者建造的房屋合不合要求。同样，程序设计一定要在具体的程序编码之前完成。程序设计完成的好坏直接影响了后面的编码质量。
程序流程图

| 图1－3

起止框 | 输入输出框 | 判断框 | 注释框
处理框 | 流程线 | 连接点 |

与房屋设计中有图纸一样，程序设计也有自己的表达方式。一种常用的程序设计表达方式是程序流程图。流程图也有不同的表示形式。我们只介绍传统的流程图。
流程图用一些图框表示各种操作，形象直观，易于理解。ANSI（American National Standard Institute， 美国国家标准化协会）规定了一些常用的流程图符号，已为世界各国程序工作者普遍采用。
我们以求n！为例说明流程图如何表示程序流程，见图1－4。
通过上面的例子，可以看出流程图是表示算法的较好工具。一个流程图包括以下几部分：（1）表示相应操作的框；（2）带箭头的流程线；（3）框内外必要的说明文字。需要注意的是：流程线必须加箭头，因为它是反映程序的执行先后次序的，如果不画箭头就难以判定各框的执行顺序了。