这个C语言综合编程怎么做?

C是一种编译语言。如果您之前从未接触过任何编程语言,那么您需要学习拆分逻辑思维。当我们要写一个项目或软件时,我们需要将整体拆分成7个步骤,这样也会让你的思维看起来更有条理。

当然,这是完美的状态。然而,在实践中,在更大的项目中,您可能需要做一些迭代工作,利用您在后一步中学到的知识来改进前一步。


当你开始编写程序时,你应该清楚地知道你想让程序做什么。考虑程序需要的信息、程序需要执行的计算和操作,以及程序应该向您报告的信息。

在这个规划阶段,你应该从一般概念上考虑问题,而不是一些特定的计算机语言术语。简单来说,我们所要考虑的就是程序的用途。

一旦你对程序需要做什么有了概念性的理解,你应该决定程序将如何做,用户界面应该是什么样子,程序应该如何组织,以及目标用户是谁,你需要多长时间才能完成这个程序等等。


这部分实际上就像是写一篇文章。在你决定了你想写什么主题之后,下一步就是列出你的文章的大纲,你需要多少段落,以及你需要使用什么技巧。每一段都写成你完成这篇文章需要什么内容和多少时间。把这些内容规划出来,列成大纲,然后一一落实。

一旦程序有了清晰的设计,就该编写代码来实现它了。也就是说,将你的设计理念翻译成 C 语言,而这正是你真正需要使用 C 语言知识的地方。

您可以在纸上勾勒您的想法,但最终代码必须输入计算机。通常,您需要使用文本编辑器来创建一个名为源代码的文件,其中包含程序设计的 C 实现。

例子:假如我想实现屏幕输出hello world!


这是一个最基本的C语言程序,它的作用就是在屏幕上输出一个hello world!。

下一步是编译源代码。但是,编译细节取决于编程环境,我们很快就会看到一些常见的,所以让我们先大致了解一下该做什么。

如前所述,编译器是将源代码转换为可执行代码的程序。可执行代码是以计算机的机器语言表示的代码,它由以数字代码表示的详细指令组成。

C 编译器用于将 C 语言转换为机器语言。C 编译器还将代码添加到 C 库中的最终程序,其中包括许多标准例程供您使用,例如 printf() 和 scanf()。最终结果是一个可执行文件,其中包含计算机可以理解并且您可以运行的代码。

编译器还会检查您的程序是否是有效的 C 程序。如果编译器发现错误,它会向您报告错误并且不会生成可执行文件。了解编译器错误消息是您将学习的另一项技能。

一般来说,可执行文件是打开后可以直接运行的文件。

在一般的操作系统(如Windows、Linux)中,如果要运行程序,只需双击文件或右键打开即可。这是一个可执行文件。那么如何生成可执行文件呢?

例如在Windows环境下,用QT编译器运行程序时,可以使用快捷键Ctrl+R生成程序并显示程序结构。如果使用Visual Studio编译器,是Ctrl+F5编译运行。


第 6 步:测试和调试

程序 程序运行良好,但有时可能无法正常运行。因此,您应该检查程序是否有错误。

此错误在计算机术语中称为错误。调试时发现和纠正程序错误。

第 7 步:维护和修改程序

在为自己或他人创建程序后,该程序可能会有更广泛的应用。如果是这样,您可能会发现它需要更改,也就是项目的维护和修改。

这里不得不提一下代码风格和注释的作用。很多人不喜欢写注释,代码风格很乱。但是当你去维护别人的程序时,如果他没有写注释,而且代码挤在一起,那你可能会头疼,只想骂写程序的程序员。

自己和他人养成良好的编程风格是一个非常好的习惯。编写程序后,用注释标记它。


编程工作通常不像上面描述的那样是一条线。有时你必须在步骤之间来回走动。例如,当你编写代码时,你可能会发现你的计划不切实际。你可能会看到更好的方法,或者看到正在运行的程序,并为你提供更改该设计的想法。记录你的编程工作,有助于你在各个阶段之间进行迭代。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

  学习C语言不是一朝一夕的事情,特别是初学者。那么初学者应该怎么学习c语言?为了帮助大家更好的学习c语言,小编精心整理了初学者学习c语言的方法,一起来看看吧!

  初学者学习c语言的方法

  一、要读就读好书,否则不如不读

  所有初学者面临的第一个问题便是:如何选择教材。好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。

  大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。这本书的主要缺点是:例子程序非常不专业,不能教给你程序设计应该掌握的思考方式;程序风格相当地不好,会让你养成乱写代码的恶习;错误太多,曾经有人指出过这本书的上百个错误,其中不乏关键的概念性错误。好了,这本书我也不想说太多了,有兴趣大家可以百度一下:)

  Kernighan和Ritchie的《The C Programming Language》(中译名《C程序设计语言》)堪称经典中的经典,不过旧版的很多内容都已过时,和现在的标准C语言相去甚远,大家一定要看最新的版本,否则不如不看。另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C语言参考手册》是十分必要的。《C语言参考手册》就是《C Reference Manual》,是C语言标准的详细描述,包括绝大多数C标准库函数的细节,算得上是最好的标准C语言的工具书。顺便提一句,最新的《C程序设计语言》是根据C89标准修订的,而《C语言参考手册》描述的是C99标准,二者可能会有些出入,建议按照C99标准学习。还有一本《C和指针》,写得也是相当地不错,英文名是《Pointers on C》,特别地强调指针的重要性,算是本书的一个特点吧。不过这本书并不十分适合初学者,如果你曾经学过C语言,有那么一些C语言的基础但又不是很扎实,那么你可以尝试一下这本书。我相信,只要你理解了指针,C语言便不再神秘。

  如果你已经啃完了一本C语言教材,想要更进一步,那么有两本书你一定要看。首先是《C Traps and Pitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。要注意一点,这本书是二十多年前写成的,里面提到的很多C语言的缺陷都已被改进,不过能够了解一些历史也不是什么坏事。然后你可以挑战一下《Expert C Programming》(中译名《C专家编程》),书如其名,这本书颇具难度,一旦你仔细读完并能透彻理解,你便可以放心大胆地在简历上写“精通C语言”了。

  切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。如果你看不懂,那你一定是缺失了某些必需基础知识。此时,你要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。把基础知识补充完毕再回头来学习,才会真正的事半功倍。

  不同的编程环境会造就出不同思维的程序员。Windows的程序员大多依赖集成开发环境,比如Visual Studio,而Unix程序员更加钟爱Makefile与控制台。显而易见,集成开发环境更容易上手,在Windows上学习C语言,只需要会按几个基本的Visutal C++工具栏按钮就可以开始写Hello, World!了,而在Unix下,你需要一些控制台操作的基本知识。有人也许认为Unix的环境更简洁,但习惯的力量是很大的,大家都很熟悉Windows的基本操作,而为了学习C语言去专门装一个Unix系统,似乎有点不划算。

  对于一个只懂得Windows基本操作、连DOS是什么都不知道的新手而言,尽快做一些有趣而有意义的事情才是最重要的。用C语言写一个小程序远比学习ls、cat等命令有趣,况且我们要专注于C语言本身,就不得不暂时忽略一些东西,比如编译链接的过程、Makefile的写法等等等等。

  所以我建议初学者应该以Visual C++ )或者Dev C++作为主要的学习环境,而且千万不要在IDE的使用技巧上过多纠缠,因为今后你一定要转向Unix环境的。Visual C++ 6.0使用很方便,调试也很直观,但其默认的编译器对C标准的支持并不好,而Dev C++使用gcc编译器,对C99的标准都支持良好。使用顺带提一下,很多大学的C语言课程还在使用Turbo C 2.0作为实验环境,这是相当不可取的,原因其一是TC 2.0对C标准几乎没有支持,其二是TC 2.0编译得到的程序是16位的,这对今后理解32位的程序会造成极大的困扰(当然,用djgpp之类的东西可以使TC 2.0编译出32位程序,不过那过于复杂了)。

  等你学完一本C语言的教材,你一定要转向Unix平台继续学习,几乎所有的C语言高级教程都是基于Unix平台的(比如《C专家编程》)。转变的过程是痛苦的,你需要面对的是各种纷繁复杂的命令,完全不同于Windows平台的思考方式,但是这种痛苦是值得的。Unix与C是共生的,Unix的思考方式和习惯更加符合C语言的思考方式和习惯。在Unix下,你可以找到无数优秀的源代码供你尽情阅读,你可以方便地查看某个库函数的联机手册,还可以看到最优秀的代码风格

  归结起来就是一句话:初学C语言,建议使用Windows系统和集成开发环境,在准备向“高手”方向努力时,请先转向Unix平台。

  初学者学习c语言的注意事项

  1.学习基本的语法

  例如:数据类型int、double的含义、使用和背景;逻辑判断if的使用;流程控制的循环while\for的使用;函数的调用;

  2.编写基本语法的代码

  学完基本的语法,熟悉了之后,针对这些基本语法,写一些基本的代码来练习,巩固。在写代码的过程中熟悉基本语法。第1步只是学习理论,这一步就是巩固基本语法,是通过实践来巩固,实践就是写代码,能够运行通过,才表示正确。这一步是最基本的一步写代码。

  3.混合使用语法实现复杂的功能

  各个基本的语法点都掌握了,要开始找一些实用小程序来综合练习,就好像是物理考试的最后几个大题一样。综合练习就是加深各个基本语法的理解和混合使用。这也就是项目经验的基础。这里会遇到各种混合使用中因为自己不熟而碰见的各种错误,也就是积累经验的过程。

  4.写多了,遇到的坑多了,然后就理解了语法,记住了用法。无法使用英语学习的强行记忆,是行不通的。

  5.自己写一个完整的可以供他人实际使用的程序

  比如可以写一个完整的计算器、一个完整的通讯录、一个成绩统计分析程序、图书管理系统。这里会涉及到各种语法知识,也是真正大量积累项目经验的时候了。这些完整的程序就是小项目了。这些都能够做好后,就可以开始写大项目了。这些完整程序都要以实际的需要来做,不能绕过,要直面需求。可以直接解决,可以换个思路解决,这是锻炼自己的过程。

  做完了这5步,C语言也就学好了。学习C语言,绝对不是简单学习一下语法而已。5步做完,才真正的学完了C语言基础。

  C Primer Plus是非常适合完全自学C语言的书籍了。根据这个5步的前3步,这本书里有对应的联系,后面两步需要自己来找程序开发。

  1.简洁紧凑、灵活方便

  C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。

  C的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C的运算类型极其丰富,表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。

  C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等,能用来实现各种复杂的数据类型的运算,并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器和驱动器,且计算功能、逻辑判断功能强大。

  4. C是结构式语言

  结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

  5. C语法限制不太严格,程序设计自由度大

  虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。

  6. C语言允许直接访问物理地址,可以直接对硬件进行操作

  因此既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可以用来写系统软件。

  7. C语言程序生成代码质量高,程序执行效率高

  一般只比汇编程序生成的目标代码效率低10へ20%。

  8. C语言适用范围大,可移植性好

  C语言有一个突出的优点就是适合于多种操作系统,如DOS、UNIX,也适用于多种机型。

  C语言初学者最常问的几个问题

  1)多久能学会编程?

  这是一个没有答案的问题。每个人投入的时间、学习效率和基础都不一样。如果你每天都拿出大把的时间来学习,那么两三个月就可以学会C/C++,不到半年时间就可以编写出一些软件。

  但是有一点可以肯定,几个月从小白成长为大神是绝对不可能的。要想出类拔萃,没有几年功夫是不行的。学习编程不是看几本书就能搞定的,需要你不断的练习,编写代码,积累零散的知识点,代码量跟你的编程水平直接相关,没有几万行代码,没有拿得出手的作品,怎能称得上“大神”。

  每个人程序员都是这样过来的,开始都是一头雾水,连输出九九乘法表都很吃力,只有通过不断练习才能熟悉,这是一个强化思维方式的过程。

  知识点可以在短时间内了解,但是思维方式和编程经验需要不断实践才能强化,这就是为什么很多初学者已经了解了C语言的基本概念,但是仍然不会编写代码的原因。

  程序员被戏称为“码农”,意思是写代码的农民,要想成为一个合格的农民,必须要脚踏实地辛苦耕耘。

  也不要压力太大,一切编程语言都是纸老虎,一层窗户纸,只要开窍了,就容易了。

  编程是一门技术,我也不知道它难不难,我只知道,只要你想学,肯定能学会。技术就是一层窗户纸,是有道理可以遵循的,在我看来,比搞抽象的艺术要容易。

  在技术领域,编程的入门门槛很低,互联网的资料很多,只要你有一台计算机,一根网线,具备初中学历,就可以学习,投资在5K左右。

  不管是技术还是非技术,要想有所造诣,都必须潜心钻研,没有几年功夫不会鹤立鸡群。所以请先问问你自己,你想学编程吗,你喜欢吗,如果你觉得自己对编程很感兴趣,想了解软件或网站是怎么做的,那么就不要再问这个问题了,尽管去学就好了。

  3)英语和数学基础不行,可以学会吗?初中毕业可以学会吗?

  首先说英语。编程需要你有英语基础,初中水平完全可以胜任。编程起源于美国,代码中会出现很多单词,有英语基础记忆起来会非常容易,如果你不认识也没关系,我推荐你安装有道词典,它的划词功能非常棒,选中什么就及时翻译什么,不管是句子还是单词。这样,相信你开发出常用的软件不成问题。

  当然,如果你希望达到很高的造诣,希望被人称为大神,那么肯定要阅读英文的技术资料(不是所有资料都被翻译成了中文),初中水平就有点吃力了。不过,长期阅读英文会提高你的英文水平,只要你坚持一段时间,即使只有初中水平,我相信借助有道词典也会提高很快。

  如果你没有学过英语,不知道 am、is、are,那我该怎么说呢,有志者事竟成,只要你想学,相信英语的障碍你也能克服。

  至于数学,只要你不打算搞算法、机器学习/人工智能、大数据/数据分析,会加减乘除法,知道次方、开方、科学计数法等最基本的概念,就不要把数学当做学习的障碍了。

  4)需要什么配置的电脑

  如果你囊中羞涩,3K以上的台式机,4K以上的笔记本也可以胜任,当然有时候会卡顿。

  经济条件允许的话,最好5K以上的台式机,6K以上的笔记本。

  如果想从事编程行业,你早晚要有一台高配的机器。它不但会让你工作更加流畅有效率,还会让你觉得工作是一种享受,所以很多程序员配备了MacBook。

  5)学习编程要用Linux吗

  很多大神都轻视地说,我不用Windows,一直在用Linux,只有Linux才能让你看到C的本质,C就是为Linux而生的。

  话虽没错,但是你想想当初你学习Windows花了多长时间,是不是一开始连切换输入法也不会,编辑Word文档也不会;如果你切换到Linux,你也会遇到同样的问题,你需要一段时间来熟悉Linux,加大了你的学习成本,会慢慢消磨掉你对编程的兴趣。

  所以我建议,你可以在Windows下学习C语言,完全没问题,如果有一天Windows不能满足你的学习需求了,那你再切换到Linux,这个时候你对编程已经很了解了,切换的成本也低了。

我要回帖

更多关于 如何写c语言程序 的文章

 

随机推荐