《C语言程序设计》教学实践探索

2022-09-10

1 引言

C语言作为最初的UNIX操作系统的实现语言, 在1970年诞生。以无类型的B语言为基础, 形成了一个类型结构。在今天, 它是计算机行业被使用最多的语言。

目前, C语言教材内容泛泛而谈, 大相庭径, “含金量”不高, 多采用“先部分后整体”的编排方式, 即首先讲述基础知识如变量、数据类型、数组、函数等基本概念, 然后把C语言分解成几个结构, 辅之以相应简单算法依次讲述。这种教学安排是否有利于教学, 是一件值得商榷的事情。多数同学反映C语言上课时所讲的语法规则等都能听懂, 面对一个程序题目, 不知从何下手, 无法解题, 出现了听得懂、编不出的现象。因此, C语言的教学就显得尤为重要, C语言讲好了, 学生有了编程思想, 培养了逻辑思维能力, 又考取了相应的国家级证书, 可以实现“多赢”的效果。

2 明确学习的目的和必要性, 激发学习兴趣

C语言作为一门专业基础课程, 其学习目的在于培养学生基本的逻辑思维能力、计算思想等。

首先, C语言具有行文简练、运算符丰富、可以进行低级操作等特点。这是其他高级语言所不及的, 这也正是C语言最终成为高校各专业必修课程的原因。

其次, 使学生树立C语言的普遍适用思想。C语言对理工科各专业后续课程的开设起着开路先锋的作用。通过C语言培养起来的逻辑思维和计算能力, 是受益终身的。

第三, 树立正确的学习动机, 克服多数学生的畏惧情绪, 使其正确面对C语言学习。实践证明, 在C语言教学中穿插应用实例, 特别是一些典型的, 有生活趣味的程序, 会大大激发学生的学习兴趣。

通过授课教师的精心设计, C语言完全可以成为学生愿意听、愿意练、乐于探索的一门课程。

3 利用网络资源, 做好差异化教学

利用网络进行C语言教学是一种可行的方法。目前, 各大高校都有校园网络, 且有精品课程。因此, 可以利用校园网, 建立博客 (weblog blog) 。C语言变量赋值时的类型转换和溢出规律, 涉及到计算机内存的编码形式, 适合放在博客上, 供有兴趣的同学参阅。输入输出函数是C语言教学的重、难点, 格式变化多样, 错误不易发现, 可以将其中一些典型的题目放在博客中供参阅。

4 根据实际确定授课计划, 决定教学大纲

C语言学习中的难点有两方面:算法流程设计和C语法规则。在C语言教学中, 算法重于语法, 语法重于编码。这种要求是符合各专业以后学习需要的, 对逻辑思维能力和算法流程设计能力的要求才是最迫切的。

现阶段C语言教材将重点放在了语法上, 这种教学安排固然结构严谨, 但在实践中会产生一些问题。容易导致学生在思考C语言问题时缺乏全局观念, 不是为解决问题而写程序, 而是为学语法而写程序, 与学习C语言的初衷相悖。并且, C语言语法规则较为灵活 (如scanf () 和printf () 函数的应用) , 执着于语法, 对于初学者来讲容易陷入迷茫。

因此, 讲授C语言的方法应当以完成实际算法的需要为线索, 引出单个知识点的顺序传授和语法规则的阐述。在算法案例的选择上, 尽量少选单纯的数学计算算法而多选有实际生活参考的应用算法。实践证明, 该方法优于传统的讲授方法, 效果甚好。

5 检视多媒体技术, 改革教学方法

毋庸置疑, C语言课程教学应当使用多媒体技术, 但应适时反思多媒体技术在C语言教学中的得与失。就C语言来说, 多媒体技术的优势在于能够展示程序的动态变化过程, 能够深入表现程序执行过程中的输入输出和内存变化。多媒体技术的应用要适得其所。在算法的构建过程讲解等方面, 师生交互至关重要, 这个过程并不适合在屏幕上完成, 应当尽量以共同讨论的方式完成算法的构建。

6 加强实践环节, 提高实验质量

学习新的程序设计语言的最佳途径是编写程序。如何提高实验课的质量, 已成为提高C语言教学质量的当务之急。

一方面, 加强实验课和理论课的联系。在理论课上将上机实验任务题目进行讲解, 也可以将案例算法作为实验内容。此时的实验课分为两部分, 实验任务问题作为理论课内容在课堂上讨论、讲述, 确定其实现算法。对于同样的题目, 可以确定若干不同的算法, 比较其优劣, 分析其原因。上机实验时间的任务是完成已确定算法的编码实现和运行。这种做法, 相当于是在教师带领下, 对实验内容做了集体预习, 做到了“算法重于语法, 语法重于编码”的指导原则。

另一方面, 督促每个学生建立程序错误档案。C程序中遇到的编译、逻辑错误多种多样。通过分析发现, 影响学生上机效率的错误数目并不多, 但却频频出现。为了逐步减少语法错误的出现率, 要求每个学生建立错误档案, 用来记录曾经遇到的语法错误, 力争在以后的实验中不再出现类似错误。每当程序出现错误, 首先对照错误档案, 看是否以前犯过, 若有则改正之, 并记录该错误的次数。实践证明, 这种建立错误档案的方法可以大幅度提高C语言实验课效率。

7 考证、考试相结合, 激发学习动力

鼓励学生考证, 学生最终是要毕业, 要工作, 一些过硬的国家级证书将是学生找工作的“敲门砖”。因此, 学院要出台一些政策。比如, 学生考取国家级证书后, 相应的课程可以申请免修、免考或提分等等。实践证明, 可以大大提高学生学习的积极性。

针对C语言的特点, 对《C语言程序设计》课程的考核方式采用闭卷考试, 主要考算法和语法, 结合平时考核和上机成绩, 与期末笔试成绩以3:7的比例进行综合作为学生的最终成绩。

8 结语

综上所述, C语言作为一门专业基础课程, 核心是培养学生的逻辑思维和计算能力。必须认识到C语言课程自身的特点, 不能将传统的教学方法照搬过来。在教学中应当遵循“算法重于语法, 语法重于编码”的原则组织实施教学, 鼓励帮助学生考证。

摘要:针对目前高职院校C语言课程教学、学习的现状, 本文从学习的目的性、必要性、教学内容、教学手段、实践环节和考核方式上介绍了在《C语言程序设计》课程中进行的教学实践。在教授基础理论知识的基础上加强实践环节, 着重培养学生编程思想, 最终取得国家级证书。

关键词:C语言,教学实践,编程,证书

上一篇:FF现场总线在沙特MAADEN选矿项目中的应用下一篇:一特大城市公交车的调度的数学模型