首页 理论教育掌握编程的要点-C语言程序设计基础(第3版)

掌握编程的要点-C语言程序设计基础(第3版)

【摘要】:先了解一下什么是编程。“编程”是“编写程序”的简称,术语称为“程序设计”。如果想让计算机做一件事情,但是没有现成的程序可用,就需要编程。编程的第一步是“需求分析”,就是要弄清楚我们到底要让计算机做什么。这也是非计算机专业的学生学习程序设计的好处。编程的第二步是“设计”,就是搞明白计算机该怎么做这件事。编程的第三步才是真正“编写程序”,即把设计的结果变成一行行代码,输入程序编辑器中。

已经确定要学习C语言,现在开始正式进入程序的世界。先了解一下什么是编程。

“编程”是“编写程序”的简称,术语称为“程序设计”。程序是计算机的主宰,控制着计算机该去做什么事。所有托付给计算机去做的事情都要被编成程序。假如没有程序,那么计算机什么事情都干不了。如果程序是“好”程序,那么计算机在它的指挥下可以又快又好地完成工作;如果程序有错误,那么计算机也会严格按照错误的指令去工作,造成的后果都不是我们所期望的。

如果想让计算机做一件事情,但是没有现成的程序可用,就需要编程。编程的第一步是“需求分析”,就是要弄清楚我们到底要让计算机做什么。这个过程貌似无甚复杂,也确实让不少人对它不屑一顾。但忽视它的结果就像考试时审题审得不对,后面的解题再漂亮,也拿不到分数,必须从头返工。所以有经验的程序员都会对需求分析相当谨慎。需求分析中最难的事情是开发者和用户之间的交流。用户不懂开发,开发者不懂用户的专业和业务,使双方都会有对牛弹琴的感觉,导致需求分析的过程可能要持续好几个月,甚至数年。如果开发者之前对专业就有所了解,或者用户懂一点开发,这件事就好办得多了。这也是非计算机专业的学生学习程序设计的好处。

编程的第二步是“设计”,就是搞明白计算机该怎么做这件事。设计的内容主要包括两方面:一方面是设计算法数学建模,用数学方法对问题进行求解;另一方面是设计程序的代码结构,使程序更易于修正、扩充、维护等。数学部分往往属于非计算机专业范畴,程序设计部分则属于计算机专业范畴,两者的配合非常重要。并不是所有的数学模型都能用程序高效实现,而有些数学中难以处理的问题,却可以利用计算机的特点巧妙解决。计算思维就体现在这里。(www.chuimin.cn)

编程的第三步才是真正“编写程序”,即把设计的结果变成一行行代码,输入程序编辑器中。虽然Windows内置的记事本也可用来编写程序,但一个顺手的编辑器可让编码的过程充满惬意。有经验的程序员喜欢使用VIM或Emacs,如果有钻研精神,可以试试。新手一般会选择更容易入门的集成开发环境(IDE),如Code::Blocks、Microsoft visual Studio等。

编程的第四步是“调试程序”,就是将源代码编译,变成可执行的程序,然后运行之,看看能否满足第一步的要求。如果不满足,就要查找问题,修改代码,再重新编译、运行,直到满意为止。用到的主要工具是编译器和调试器,它们一般都已经内置在IDE中。如果不使用IDE,只使用编辑器,则需要单独安装。推荐使用gcc编译器和gdb调试器。两者占据UNIX/Linux平台的主流,在Windows平台上亦可使用。

这个过程说起来简单,但每一个环节都有很多学问在里面。本书主要讲述的是第三步和第四步。前两步虽然也有涉及,但因为程序的规模较小,所以体现得并不多。但读者必须知道,待将来编写大规模的程序时,前两步的重要性是超过后两步的。