浅论《C语言程序设计》的学习方法

2019-12-10 09:30张桥珍
中国科技纵横 2019年20期
关键词:C语言程序设计C语言学习方法

张桥珍

摘 要:C语言是高职院校计算机相关专业的专业基础课程,一般在大一上学期开设。学习C语言的目的是培养计算机专业学生的计算机程序设计思维,理解计算机解题的思路,掌握C语言程序设计的方法,最后能够具备运用C语言进行编程来解决实际问题的能力。C语言作为高职学生学习的第一种计算机语言,还有利于培养学生良好的程序设计风格,为以后其他课程(如数据结构、JAVA程序设计等)的学习打下坚实的基础。

关键词:C语言;学习方法;语法;调试;编程

中图分类号:TP312.1-4 文献标识码:A 文章编号:1671-2064(2019)20-0198-02

1 C语言简介

C语言是一种结构化、高级程序设计语言,具有简洁、紧凑、高效等特点。C语言简单易学,可移植性好,运行速度接近于低级语言,在目前的软件行业中使用十分广泛,具有广阔的发展前景。

2 C语言程序步开发步骤

(1)编辑。打开编辑软件编写源程序,最后保存为“*.c”。

(2)编译。C语言的源程序并不能直接运行,系统还需要对源程序进行“编译”,编译是对程序中的所有语句进行检查,如果发现程序中有语法或逻辑错误,系统会给出错误提示,当所有错误排除后,编译完成,系统生成目标文件“*.obj”。

(3)连接和运行。源程序编译后生成的目标文件也不能直接运行。还必须和系统的库函数“*.lib”连接在一起,生成可执行文件“*.exe”,这个可执行文件可以脱离开发环境、直接在操作系统下直接运行。

需要注意的是:如果程序运行后,结果正确,这个C语言程序的开发工作便到此完成了。如果运行出错或结果有误,说明程序还存在一定的问题,需要再次修改源程序,然后重复上面的过程,即“编辑→编译→连接→运行”,直到得到正确结果为止。

3 学习C语言的方法

作为一个初学者,学习C语言可以分为以下四个步骤。

3.1 学习语法

小学生要写一篇文章,必须要从字、词、句开始学习,在这基础上才可以写成一篇文章,学习C语言也是一样,如果要编写一个程序,必须要学习C语言的基本语法,C语言语法包括数据类型、运算符、表达式、数组、逻辑运算、函数、指针等。可以选择一本合适的教材,认真学习前面的语法,学习过程中遇到难以理解的概念,可以上机验证,增强理解。上机验证就要求掌握一个简单的C语言程序的从编写到运行的全过程。比如,C语言程序的组成和结构,C语言的输入和输出函数用法,以及C语言源程序的编写、编译和运行的方法等。

3.2 编写程序

计算机编程语言都是实践性很强的语言,C语言也是如此。在学习掌握了C语言的基本语法后,就可以利用C语言进行简单的程序设计了。C语言是一种结构化程序设计语言,分为顺序结构、选择结构和循环结构,每一种结构特点都要了如指掌,每一个语句的语法、格式和功能都要通过编程实践加深理解,不断强化。学习C语言的最终目的,是能够通过它解决实际问题。

例如:编程实现对100个整数进行从小到大排序。要解决这个问题,首先要设计合适算法。思考以下问题:这100个数采用什么数据类型、如何定义、用哪种方法排序、怎样输出结果。思考结果如下:本题数据量大,用数组比较合适,然后定义数组变量,并给变量赋值,接下来进行排序,可以选择冒泡排序、选择排序等,最后进行输出,因为数据量大,输出是采用循环语句实现等。然后是具体的代码实现过程,即编写源程序,最后编译、组建和运行程序。

3.3 程序调试及错误分析

3.3.1 程序调试

所谓程序调试是程序编写完成后,还没有运行之前,对程序进行测试,修改其中的语法错误和逻辑错误,以保证程序正确运行并得到正确的结果。调试程序一般应经过以下几个步骤。

(1)手工查错。当程序编写完成后,不要马上就开始执行,可以先把程序从头到尾按顺序捋一遍,看看有没有标点符号的错误和括号不成对的情况出现,通过这个过程,可以发现程序中出现的大部分错误,并及时修正。这一步尤其重要。手工查错还应注意以下几个方面:1)程序代码层次分明,书写规范,让别人一眼就能明白程序的思路与用意,保证程序质量。2)在程序中多使用注释,注释可以帮助读者理解每段程序的功能,大大提高程序的可读性。3)善于使用函数,把复杂程序分解成一个个模块,每个模块用一个独立的函数实现,避免程序中的全部语句都写在main函数中,这样不利于查错和排错。

(2)手工检查完成后,就可以開始“编译”,在编译时如果程序中有错误系统会给出相应的错误信息提示,根据提示在程序中找出出错的具体位置并努力改正。应该引起注意的是:有时在提示出错的位置找不到错误,应当到在提示出错的行的附近再找,如果实在找不到错误,可以采用逐步减小“查错区”的方法。将程序代码分为几个模块,每次先执行一个模块(其余模块可以设置成注释),执行完本模块如果没有发现问题,再接着执行两个模块,依次类推,用这种方法,最后可以把错误的模块找出来,然后集中精力修改本模块,这种“分模块”查找错误的方法是检查复杂程序出错位置时经常使用的方法。

另外提示出错的类型也不一定准确,如果出现错误,往往情况复杂,且与其它语句互相关联。如果编译过程中出现的出错信息很多,应当从上到下逐一改正。有时显示出一大片出错信息往往使人感到问题严重,无从下手。其实可能只有一两个错误。例如,程序中使用的所标点符号是都是中文符号,或者有变量未定义,编译时就会对所有含该变量的语句发出错误信息,这时只要加上一个变量定义,所有错误就都排除了。因此要多多实践,总结经验,尽量减少在编写程序时出错。

注意:当程序编译完成后,程序可以正常执行。通常要对程序执行的结果进行分析,有可能运行结果只是在某种条件下刚好正确,不一定适合所有情况,可以选择几个关键数据进行验证。如果发现问题,就需要对程序进一步修改,以保证程序功能的完整实现。

3.3.2 錯误分析及对策

通过教学调研发现,学生在C语言学习和编程过程中总会出现各种各样的错误,有些学生发现问题往往六神无主,不知从何下手。如果想降低错误出现的机率,就必须了解C语言程序设计中可能出现的错误类型及其纠正方法。C语言程序设计的错误大致可分为四种,即语法错误、连接错误、逻辑错误和运行错误。具体分析如下。

(1)语法错误。语法错误是指在编写程序时没有遵循C语言的语法规定。比如出现关键字拼写错误、漏写标点符号或标点符号写成中文标点符号、数据运算类型不匹配、括号不配对等都属于语法错误,出现这类错误时,程序编译过程中,系统会给出出错行和相应“出错信息”。

对策:双击错误提示行,出错代码所在的出错行立即被定位,然后根据错误提示修改源程序,排除错误。

(2)连接错误。如果C语言程序中函数调用出现错误,可能是函数不存在或函数名称有误,编译系统在对其进行连接时便会发现这一错误。

对策:双击错误提示行定位错误代码,然后根据错误进行修改。

(3)逻辑错误。如果程序中没有发现语法错误或逻辑错误,程序能正常运行,但程序运行结果跟实际情况不符,出现这种情况很可能是程序出现了逻辑错误。逻辑错误往往是因为程序采用的算法有问题,或编写的程序逻辑与算法不完全吻合。排除逻辑错误难度相对比较大,要求程序编写者具备相当的算法思维,并对程序结构和语句功能了如指掌。

对策:重新整理编程思路,逐步调试,检测程序中复杂语句或功能模块(如多重循环、多重分支等)是否正确,可以在不同阶段输出变量的值,观察结果,这样逐步来找到错误并最终解决问题。

(4)运行错误。如果程序中没有出现以上三种错误,但是发现程序运行结果不稳定,即有时结果正确,有时错误。这种错误可能是由于程序不够完整,不适用于所有情况或者软件版本或设置有问题。

对策:对程序进行完整性检查或查看软件版本或设置。

3.4 总结与反思

在C语言的学习过程中,要善于进行规纳总结。每次程序运行中出现的错误都要吸取教训,避免下次再犯,并不断形成自己的经验。只有多进行编程练习,多思考程序出错的原因并及时总结,才能不断提高。

4 C语言的发展趋势

随着信息化、智能化、网络化的发展,嵌入式系统技术的发展,C语言的地位也会越来越高。C语言还将在云计算、物联网、移动互联网、智能家居、虚拟世界等未来信息技术中发挥重要作用。

On the Learning Method of  C Language Programming

ZHANG Qiao-zhen

(Huanggang Vocational College of Science and Technology in Hubei Province zip code,Huanggang Hubei  438000)

Abstract:C language is a professional basic course of computer related majors in high vocational colleges, which is generally opened in the first semester of the first year. The purpose of learning C language is to train students majoring in computer programming thinking, understand the thinking of computer problem solving, master the programming methods of C language, and finally be able to use C language to program to solve practical problems. As the first computer language that students learn in high vocational colleges, C language is also conducive to cultivating students' good programming style, which lays a solid foundation for the later learning of other courses (such as data structure, JAVA programming, etc.)

Key words:C language;learning method;syntax;debugging;programming

猜你喜欢
C语言程序设计C语言学习方法
基于Visual Studio Code的C语言程序设计实践教学探索
基于C语言的计算机软件编程
高职高专院校C语言程序设计教学改革探索
论高中物理电路知识的学习方法及解题思路
小学语文低段识字教学的意义及学习方法
论子函数在C语言数据格式输出中的应用