浅析C语言编程的学习策略

2016-10-31 19:34王艳
电脑知识与技术 2016年22期
关键词:C语言学习策略编程

王艳

摘要:随着社会信息技术不断发展,计算机应用人才越来越多被社会采纳,它几乎影响着每个在校大学生的发展。C语言是计算机专业比较重要的基础课程,也是大一新生必修的公共基础课,由此可以看出该课程的重要性。C语言是一门计算机程序设计语言,但大多数人在学习过程中会遇到很多问题,达不到所学的效果,导致编写程序过程中检测不出校验结果,影响了学习情绪。为了紧跟时代的脚步,积极探索不断改进学习C语言的方法。本文针对C语言编程过程中存在现象进行了分析,旨在找出学习C语言编程的策略。

关键词:C语言;编程;学习策略

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2016)22-0080-02

1 C语言产生的背景

计算机程序设计语言经历了从机器语言、汇编语言到高级语言的发展过程,机器语言是最原始的代码语言,可以直接识别,也是第一代的计算机语言,随着社会化发展变化,后来用汇编语言中的助记符代替操作码来编写程序,但由于汇编语言自身特点也存在局限性,根据社会发展需求于是产生了C语言,C程序是经过编译后可以直接执行的面向过程的高级语言。

C语言是在BCPL语言的基础上发展起来的。70年代初,美国贝尔实验室根据工作需要研发出BCPL语言,后来在1973年,贝尔实验室在BCPL语言的基础上研发出了C语言程序,后来经过多次改版本,到了80年代初,美国国家标准化协会根据C语言的发展变化,制定了新的C语言标准,一直沿用到现今,为大多数编程者所遵循。

2 C语言的特点及优势

C语言是国际上广泛流行的计算机高级语言,现如今被越来越多的计算机编程人士所使用,它不仅可以用来编写软件代码,还可以用接近自然语言方式描述问题,同时兼顾高低级语言的优点,主要体现如下方面:

1)C语言简便,结构严谨、操作灵活。

2)C语言的运算符较多且表达式类型丰富,编写程序节约时间,工作效率高。

3)模块化程序设计方法,可以把一个大问题按层次分解成多个小问题的设计思想,使编程更加灵活,算法设计自由度大。

4)C语言生成目标代码可操作性强,程序执行效率高。

5)C程序图形功能较强,程序可移植性好。

由于C语言这些特点及优势,使它成为计算机编程者必学的程序设计语言。

3 C语言编程中常见的现象

第一,大一新生刚入校门,心理比较放松,大学的学习生活还未适应,就要开设程序设计语言课程,对于他们来说不知从何学起,心里没底。上机实践课时,C语言编程语法较严格,出现错误就不能运行出结果,导致学生在学习过程中慢慢失去信心和成就感,学习兴趣和热情不高。

第二,C语言的算法和结构有点复杂,理论的东西很难记住,听起来感觉很枯燥无味,不容易理解。

第三,课时安排不够合理,致使教师在每节课讲授内容必须保证进度,这样就给学生无形中增加了压力。特别是在刚开始学习时,学生兴趣都非常高,对程序设计课比较好奇感兴趣,但在后来的学习过程中,面对每节课大量的枯燥代码和编程理论及语法规则的限制,慢慢跟得有些吃力,往往是前面的内容还没有消化完,后面又开始新的内容,时间长了就会让学生产生消极心理,产生厌烦情绪,另外学习方法不对,也会导致学生缺少学习兴趣。

4 C语言编程的学习策略

4.1 熟悉程序开发环境

C语言程序编写一般经过程序编辑、程序编译、程序连接到程序运行结果检测这几个步骤来实现,建议在Visual C++编程平台(也可选择其他平台)进行实验,好快速掌握C语言编程环境,熟悉程序代码的调试过程, 为接下来的学习编程操作打下良好的基础。

4.2 掌握C语言语法规则,养成良好的编程习惯

学习C语言基础就是要学习它的语法规则,学习某种语句或命令。首先要了解它的规则是什么,作用是什么,怎么实现等,这样可以为后面的学习打下坚固的堡垒作用。比如什么是常量、函数定义的格式及其意义是什么,使用什么样的语句去运用它,这样想明白了编起程序来才能得心用应手。那么在编程中除了要掌握好语法规则外,还应培养较好的编程习惯,这样可以提高工作效率,减少代码出错的机会。

4.3 精通算法技巧

学习编程就是要学习它的思维方法,画流程图就是在构建写程序思路的过程。当画好一个流程图时编程思想也就出来了,再结合掌握的语法规则,在计算机环境下调试就可以出来了。程序=数据结构+算法,算法就是解题思路与步骤,掌握分析问题、解决问题的方法,就是锻炼分析、分解,最终归纳整理出算法的能力。计算机语言是表达方式,算法和数据结构才是灵魂。算法可以用自然语言或流程图来表示,在使用流程图时,应掌握一些流程符号,即用一些图框来表示各种操作,直观形象,易于理解,从而达到根据算法流程图来完成程序的输写。

4.4 掌握四种结构

C语言学习中掌握四种结构即顺序结构、选择结构、循环结构和模块化程序结构非常关键,因为这种这四种结构决定了C语言代码的执行过程,相当于是算法的流程体现,它们彼此可以互相嵌套。C语言对数据的处理是通过“语句”的执行来实现的,一条语句完成一项操作(或功能),一个为实现特定目的的程序应包含若干条语句。

在实际编写代码过程中,常常将前三种结构相互嵌套调用,以此设计出相应的算法来解决工作中遇到的问题。如果是设计大型项目的话,编写出的程序往往需要完成的功能较多,数据结构较复杂,长篇符的代码并不利用管理和维护,为了解决这种状况,如果采用C模块化程序设计思路就方便较多。

C模块化程序设计采用自顶向下逐步求精的设计结构,将一个大问题按层次分解成多个小问题的设计思路。一般由主控函数和子函数组成,即指将一个很大的代码段划分为一系列功能独立的小代码段部分,每个代码段完成一个指定的功能,那么将这些代码段合在一起就是一个完整的功能模块。其中每个代码段实质就是一个具体的独立子函数,函数与函数间可以相互调用,但不能相互嵌套,通过主控函数可以调用子函数(子函数不能调用主控函数)可以将各个函数模块聚合为一个整体完成相应的功能。因而,定义函数、定义函数名(函数名表示功能)、函数调用和返回值等就很关键和重要,初学的人要通过不断地上机实践才能掌握编程的流程和精髓。

4.5 熟知函数定义

函数就是完成相对独立功能的程序段,它具有独立性,代码适中,分析问题层次清楚等特性。函数由函数说明和函数体两部分构成,函数说明包括函数值类型、函数名、参数类型及参数说明;函数说明之后的花括号“{}”部分为函数体,里面由C语句构成。函数调用时,实参与形参应保持个数、次序及类型的一致性,以确保实参与形参之间数据的正确传递,为提高编程效率打下良好的奠定基础。

4.6 具备数学知识

编程是人把要表达的思想,通过计算机语言表达出来 所以最重要的就是数学逻辑思维。在C语言学习过程中,较好的逻辑思维可以比较容易学习C语言编程分析,选择更简捷的运算流程,C的核心语法并不要求很高的数学知识,高中阶段接触到的概念性的知识就足以应付。因而,数学知识对学习C语言重要性还是比较大。

4.7 会调用C语言库函数

库函数就是把函数放到库里,是别人把一些常用到的函数编完放到一个文件里,供程序员使用,程序员用的时候把它所在的文件名用#include<>指令加到里面就可以了(尖括号内填写文件名),例如#include。在编程时候需要调用库函数.

4.8 指针在C语言中的灵活运用

指针是C语言的一种数据类型,是指向变量和对象的地址,是C语言学习的重点内容。 指针的用途非常广泛,假设想通过函数改变一个变量的值,就得用指针而不能用值传递,特别是对象的数据量非常大,往往编程人员就会用指针来做形参,只需要传递一个地址就可以,大大提高了工作效率。另外,指针变量可以访问内存地址,也可以访问数组和字符串,使编写的C程序代码更简洁,效率高。指针的学习在C语言中是关键的内容,也是学好C的精髓所在,为了高质量地完成程序的编写,就需要掌握指针在C语言中的灵活运用,那就要能通过上机反复地调试代码,从实践中总结问题,完成指针的学习。

4.9 读代码和程序

C语言编程不只是理论性的知识,它还要求上机动手操作能力更强一些。每次C语言课的学习,只有通过上机输入大量代码的练习,才能发现错误代码段,分析解决存在的问题,不断总结经验,巩固课堂上老师所讲的内容。C语言编程不是单纯靠理论记忆就能学好的,它需要大量的上机实验来巩固,才能加深知识的消化理解,开拓编程思维,提高解决问题的能力,培养良好的编程态度。

读程序和分析他人写的代码也是学习C语言较好的途径,仔细研读程序时,注意分析别人是如何运用编程技巧的,研究它的实现方法和程序设计技巧,提高自己的程序设计能力,直到每一行都理解了,然后找几个题目编写,自己试图写出程序,反复实践,这样就能从错误中分析代码出错的原因,进行调试正确的代码段,不断积累经验,反反复复直到搞懂为止。时间久了,慢慢就对程序的掌握有一个比较清晰的过程。

4.10 借助网络资源

C语言的学习在课堂上的知识还是有限的,如果想获取更多的知识,可以借助网络平台来完成资料的补充。一方面可以在教学网站上得到相关的学习内容;另一方面可以登录相关论坛或C语言专题微信群参与讨论,获取学习经验,探讨编程技巧,这样对于学习者来说都非常便利。

5 结束语

C语言是计算机编程语言中应用最流行的一种高级语言,在C语言学习过程中,本文针对C语言特点、出现的现象和学习策略进行了分析,只要学习者认真领会C语言功能的强大,具备持之以恒的学习韧劲,一定会在实际学习中取得优异的结果。同时,C语言作为高校公共基础课,学习好它不但能提高自己的编程能力,还对整个计算机语言的学习起到奠基作用,为社会培养综合型人才更好的服务。

参考文献:

[1] 储欣. C语言编程技巧在C语言学习中的应用[J],信息与电脑,2015(9):28.

[2] 沈继涛. 计算机C语言编辑程序技巧探讨[J].电子技术与软件工程,2015(24):256.

猜你喜欢
C语言学习策略编程
编程,是一种态度
编程小能手
基于Visual Studio Code的C语言程序设计实践教学探索
纺织机上诞生的编程
基于C语言的计算机软件编程
高中生数学自主学习策略探讨
高职高专院校C语言程序设计教学改革探索
一种使用反向学习策略的改进花粉授粉算法
论子函数在C语言数据格式输出中的应用
基于微博的移动学习策略研究