您好, 访客   登录/注册

高职计算机程序类基础课程教学研究

来源:用户上传      作者:徐济惠 颜晨阳

  摘 要 C语言是高职计算机类专业的一门重要的专业基础课程,课程学习的好坏,对后续课程的学习起到位至关重要的作用。基于多年教学经验,提出了“教学中思考、思考中教学”的C语言程序设计课程教学方法,目的是让学生能够“学得会,有兴趣的学、并且学有所成”。
  关键词 教学方法 C语言 計算机课程 高职教学
  中图分类号:G424                                   文献标识码:A    DOI:10.16400/j.cnki.kjdkx.2020.09.049
  Abstract C language is an important professional basic course for computer majors in higher vocational colleges. The quality of course learning plays an important role in the follow-up course learning. Based on many years of teaching experience, this paper puts forward the teaching method of "thinking in teaching and teaching in thinking" in C language programming course. The purpose is to enable students to "learn well, learn with interest, and achieve what they have learned".
  Keywords teaching methods; C language; computer course; higher vocational teaching
  1 简介
  C语言是一门面向过程的计算机语言,囊括了程序设计的基本概念,是计算机类专业的一门重要的专业基础课程,其目的是培养学生的程序设计理念,掌握程序设计的基本方法,为后继课程(数据结构、面向对象程序设计、操作系统、编译原理和软件工程等)打下坚实的基础。C语言对一般初学者来说,规则较多,使用太灵活,不易掌握,学习会有一定的困难。因此,单纯地讲一些语法、规则,就显得比较抽象、枯燥、难学,让学生望而生畏。在现在的各大高校计算机类专业中,一般情况下,它是大一新生接触到的第一门专业课,因此本课程的教学效果好比一把双刃剑,学得好,能锻炼学生的逻辑思维能力,培养学生的学习兴趣,为后续课程打下扎实的基础。学得不好,将影响后续课程的学习,更会使学生对未来的学习丧失信心,自暴自弃。因此,作为专任老师,在教学中应该学会思考,如何上好C语言这门课程,让学生能够“学得会,有兴趣的学、并且学有所成”。通过思考,将一些好的教学方法和手段应用于教学,最终达到我们的教学目标。
  2 教学内容
  “C语言程序设计”课程的主要目的是使学生能够初步掌握计算机程序设计的基本思想和方法,培养学生分析和解决问题的能力,提高学生的学习和编程兴趣,为后续课程的学习打下扎实的基础。所以在课程内容的设计上,不应过分注重于语法知识(抽象),而应重点强调程序设计的基本方法。因此,在教学内容的选取上,采用“有所取、有所不取”的策略,对于那些与程序设计方法关系不大,也不常用的部分,根本不选取;对哪些不太重要的,在遇到程序举例时简单介绍;对哪些常用的语法成份,则穿插在程序设计中详细介绍。另外,“C语言程序设计”课程的重点是训练学生的逻辑思维能力,其中掌握常用的算法是关键,如:计数、累加、累乘、排序、分类等。为学生以后编写程序、软件设计打下基础。同时典型算法的学习掌握,也可以增强学生的信心和学习的兴趣。因此在课程的教学中,就应想办法让学生将这些算法必须全部掌握,让学生感到学有所成。
  3 教学方法
  3.1 运用实例,变抽象为具体
  在C语言的教学中,一开始就要学习基本数据类型及运算符,格式化输入函数scanf()和格式化输出函数printf(),如果单一地介绍数据分为整型、实型、字符型,对应的格式为%d、%f、%c等,学生就会感到枯燥乏味。如果这时我们能够选择一些实际的例题,提出通过我们学习,利用相应的数据类型,就可以编程,如:要求学习者给幼儿生成一道加法题“25+67=”,可用下面4种方法实现(图1)。
  通过类似于这四种方法的变化,使学生在学习%d、%f等格式符和格式化输入函数scanf()、格式化输出函数printf()的时候,做到不抽象,而变得生动起来。
  3.2 层层递进,激发学习兴趣
  C语言中,在语句结构的学习中,就会讲到条件语句if,循环语句等,这时我们可以继续引用前面的例子,进行进一步的深化。这样可以做到环环紧扣、层层递进,相互联系。前面出的题,在幼儿在答题时,不知道题是否答对,现在利用if语句,就可以生成一道题,具有及时告知幼儿答题情况的功能:
  if (x+y==z) printf(“恭喜你答对了!”);
  else printf(“不对,请继续努力,加油!”);
  这样我们每次只能出1道题,如果需要学生一次性生成10道加法题,如何解决?这样我们可以进一步提出循环的概念,利用循环解决问题。让学习者感到有一定的成就感,引发学习者对编写程序学习的兴趣。
  3.3 探究性学习,提高教学质量   在学生有了一定的兴趣后,我们可以向学习者提出更高的要求。通过对知识的扩展,让学生感觉到只要通过努力,进行一定的深入思考,可以达到更高的水平。针对上面例题,我們提出是否可以让计算机自动生成2位数加数和被加数,这时我们提出随机数rand()的产生,并且可以统计出答题对错情况。在这个基础上我们教师可以进一步思考,可以继续提出一些问题,完成让小学生进行“加、减、乘、除”运算,以菜单的显示方式供学生进行选择(图2)。这样看似提高了难度,实际上就是在原来的基础上,将加法程序相似地改成“减、乘、除”,同时可以介绍swith()语句的功能和使用。让学生感觉到以前做不到的,通过学习现在做到了,有了一定的成就感,更加激发了他们的学习兴趣。同时也让他们坚定一定的信念,只要通过有效的学习,他们也可以编写出有效的代码程序。
  3.4 融入课程思政,提升学生素质
  在程序设计的教学过程中,我们不仅要教会学生编程的方法和技巧,而且更应该通过课程的教学,教会学生踏实的工作作风,提升分析问题的能力以及团队合作的精神等方面的内容。首先是树立踏实细致的工作作风。编写程序,我们必须有编译、调试改错的环节,这时,我们就应该教导学生养成“独立、细致、耐心”的工作作风,只有这样才能达到成功的彼岸。其次是提升分析问题的能力。通过具体实例,教导学生“处理任何复杂的问题,应做到先分析、再处理,将复杂问题分步处理”。提高学生的逻辑思维能力和今后处理工作问题的能力。最后是培养学生团队合作的精神。在教学的过程中,灌输学生团队合作的重要性,对于一个大型的软件,现有的软件公司都是组成一个团队进行分工合作、共同开发,需要进行相互的沟通、配合才能完成最终软件开发。因此我们在平时的教学中也应该有意识的安排一些合作完成的项目,培养学生的团队精神。
  4 结论
  这样,我们通过一道小学生的加法题入手,通过精心的设计,由浅入深,层层推进,贯穿始终,让学生在不知不觉中学到了相关的知识点,同时提高了编程的兴趣和能力,让学生感觉到编程既不神秘也不是太难,同时也激发他们要进一步学习和深入研究的动力。同时在教学中进行适当的拓展和延伸,培养学生今后进入工作岗位所需要的职业素质。这就需要我们教师在教学过程中必须不断探讨适合学生的教学方法和手段,激发学生的学习兴趣,更新教学理念,精心研课磨课,努力提高课程的教学质量。真正做到“教学中思考、思考中教学”。
  参考文献
  [1] 孙雪岩.C++程序设计基础教学方法改革研究探索[J].新教育时代电子杂志(教师版),2018 (022):237.
  [2] 彭颖,梁俊斌.以CDIO教育理念为引导的程序设计基础教学改革研究[J].大学教育,2016(1):27-28.
  [3] 杨梅,王杨.以计算思维为导向的程序设计基础课程教学研究[J].计算机教育,2015(16):98-101.
  [4] 马晓娟.校企合作下的《程序设计基础》教学模式研究[J].软件导刊.教育技术,2014(7):13-14.
  [5] 钟娟,章曙光,程远,等.程序设计基础课程多元化教学体系的研究[J].电脑知识与技术,2018.014(022):92-94.
转载注明来源:https://www.xzbu.com/8/view-15345685.htm