**篇 过程化的程序设计
第1章 良好的学习开端
本章主要讲述学习程序设计前需要了解的一些知识和学习程序设计的方法,并且对c++作简要的介绍。读者学好这一章,对日后的学习能够起到事半功倍的效果。
1.1 软件与程序
随着计算机的普及和科学技术的发展,无纸化办公、计算机辅助设计(CAD,CompeerAidedDesign)和计算机辅助制造(CAM,CompeerAidedManufacture)已经渐渐走进我们的日常工作中。有了计算机的帮助,我们的工作效率得到明显的提升,设计人员只需要把数据输入计算机,就能显示出**的结果,例如一个三维立体模型。当我们使用计算机���时候,有没有想过人类是如何让计算机做这些工作的呢?
其实,我们平时对计算机进行的操作是在与计算机软件(Software)打交道。计算机之所以能够帮助人类工作,离不开软件的支持。那么软件到底是什么?其实它是看不见摸不着,但却又能够通过计算机为用户所用的一种东西。打一个比方,计算机的各种硬件设备(Hardware)就像是人的肌肉,而软件就像是人的灵魂。少了软件这个灵魂,那么计算机只是一堆废铜烂铁。人们通过编写一款软件,来让计算机做一些事情。像我们用的Windows、Word、QQ等都是软件。
那么,软件和我们所说的程序(Program)又有着什么样的关系呢?首先,要弄清什么是程序。从初学者比较容易理解的角度说,程序是计算机执行一系列有序的动作的指令集合。通过一个程序,可以使计算机完成某一类有着共同特点的工作,如求解一个一元二次方程,或是找出一组数里面*大的一个数。而一款软件,往往是由若干个相关的程序、运行这些程序所需要的数据和相关文档(如帮助文档)等多个文件组成的。因此,要设计出一款软件,就必须从程序设计开始。
1.2 程序设计要做什么
很多初学者会不解:程序设计到底是要做什么呢?我们该如何让计算机帮助解决问题呢?其实,要解决一些看似不同的问题,可以归纳为一种确定的过程和方法。我们把这种能够在有限的步骤内解决一类问题的过程和方法称为算法(Algorithm)。下面,我们以解一元二次方程为例,介绍求解的算法。
……