编写程序思路
第 1 步:定义程序的⽬标在动⼿写程序之前,要在脑中有清晰的思路。想要程序去做什么⾸先⾃⼰要明确⾃⼰想做什么,思考你的程序需要哪些信息,要进⾏哪些计算和控制,以及程序应该要报告什么信息。在这⼀步骤中,不涉及具体的计算机语⾔,应该⽤⼀般术语来描述问题。
(磨⼑不误砍柴⼯,应该养成先规划再动⼿编写代码的好习惯,⽤纸和笔记录下程序的⽬标和设计框架。这样在编写代码的过程中会更加得⼼应⼿、条理清晰。)
第 2 步:设计程序对程序应该完成什么任务有概念性的认识后,就应该考虑如何⽤程序来完成它。例如,⽤户界⾯应该是怎样的?如何组织程序?⽬标⽤户是谁?准备花多长时间来完成这个程序?除此之外,还要决定在程序(还可能是辅助⽂件)中如何表⽰数据,以及⽤什么⽅法处理数据。学习 C 语⾔之初,遇到的问题都很简单,没什么可选的。但是,随着要处理的情况越来越复杂,需要决策和考虑的⽅⾯也越来越多。通常,选择⼀个合适的⽅式表⽰信息可以更容易地设计程序和处理数据。再次强调,应该⽤⼀般术语来描述问题,⽽不是⽤具体的代码。但是,你的某些决策可能取决于语⾔的特性。例如,在数据表⽰⽅⾯,C 的程序员就⽐ Pascal 的程序员有更多选择。
第 3 步:编写代码设计好程序后,就可以编写代码来实现它。也就是说,把你设计的程序翻译成 C 语⾔。这⾥是真正需要使⽤ C 语⾔的地⽅。可以把思路写在纸上,但是最终还是要把代码输⼊计算机。这
个过程的机制取决于编程环境,我们稍后会详细介绍⼀些常见的环境。⼀般⽽⾔,使⽤⽂本编辑器创建源代码⽂件。该⽂件中内容就是你翻译的 C 语⾔代码。
(在这⼀步骤中,应该给⾃⼰编写的程序添加⽂字注释。最简单的⽅式是使⽤ C 的注释⼯具在源代码中加⼊对代码的解释。)
第 4 步:编译接下来的这⼀步是编译源代码。再次提醒读者注意,编译的细节取决于编程的环境,我们稍后马上介绍⼀些常见的编程环境。现在,先从概念的⾓度讲解编译发⽣了什么事情。前⾯介绍过,编译器是把源代码转换成可执⾏代码的程序。可执⾏代码是⽤计算机的机器语⾔表⽰的代码。这种语⾔由数字码表⽰的指令组成。如前所述,不同的计算机使⽤不同的机器语⾔⽅案。C 编译器负责把 C 代码翻译成特定的机器语⾔。此外,C 编译器还将源代码与 C 库(库中包含⼤量的标准函数供⽤户使⽤,如 printf()和 scanf())的代码合并成最终的程序(更精确地说,应该是由⼀个被称为链接器异步社区会员 q927607497(158********) 专享尊重版权 1.7 使⽤ C 语⾔的 7 个步骤 9的程序来链接库函数,但是在⼤多数系统中,编译器运⾏链接器)。其结果是,⽣成⼀个⽤户可以运⾏的可执⾏⽂件,其中包含着计算机能理解的代码。编译器还会检查 C 语⾔程序是否有效。如果 C 编译器发现错误,就不⽣成可执⾏⽂件并报错。理解特定编译器报告的错误或警告信息是程序员要掌握的另⼀项技能。
第 5 步:运⾏程序传统上,可执⾏⽂件是可运⾏的程序。在常见环境(包括 Windows 命令提⽰符模
式、UNIX 终端模式和 Linux 终端模式)中运⾏程序要输⼊可执⾏⽂件的⽂件名,⽽其他环境可能要运⾏命令(如,在 VAX 中的 VMS1 )或⼀些其他机制。例如,在Windows 和 Macintosh 提供的集成开发环境(IDE)中,⽤户可以在 IDE 中通过选择菜单中的选项或按下特殊键来编辑和执⾏ C 程序。最终⽣成的程序可通过单击或双击⽂件名或图标直接在操作系统中运⾏。
第 6 步:测试和调试程序程序能运⾏是个好迹象,但有时也可能会出现运⾏错误。接下来,应该检查程序是否按照你所设计的思路运⾏。你会发现你的程序中有⼀些错误,计算机⾏话叫作 bug。查并修复程序错误的过程叫调试。学习的过程中不可避免会犯错,学习编程也是如此。因此,当你把所学的知识应⽤于编程时,最好为⾃⼰会犯错做好⼼理准备。随着你越来越⽼练,你所写的程序中的错误也会越来越不易察觉。将来犯错的机会很多。你可能会犯基本的设计错误,可能错误地实现了⼀个好想法,可能忽视了输⼊检查导致程序瘫痪,可能会把圆括号放错地⽅,可能误⽤ C 语⾔或打错字,等等。把你将来犯错的地⽅列出来,这份错误列表应该会很长。看到这⾥你可能会有些绝望,但是情况没那么糟。现在的编译器会捕获许多错误,⽽且⾃⼰也可以到编译器未发现的错误。在学习本书的过程中,我们会给读者提供⼀些调试的建议。
学编程学什么语言更好第 7 步:维护和修改代码创建完程序后,你发现程序有错,或者想扩展程序的⽤途,这时就要修改程序。例如,⽤户输⼊以 Zz 开头的姓名时程序出现错误、你想到了⼀个更好的解决⽅案、想添加⼀个更好的新特性,或者要修改程序使其能在不同的计算机系统中运⾏,等等。如果在编写程序时清楚地做
了注释并采⽤了合理的设计⽅案,这些事情都很简单。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论