论文部分内容阅读
摘要:结合电气类专业的特点,讨论了C语言教学的新方法;依据教学改革及实践经验,指出了C语言教学中存在的问题,给出了解决方法;教学实践表明:采用文中提到的方法,起到了良好的教学效果。
关键词:编程思想; 考核体系; 团队作业; 教学改革
中图分类号:G642文献标识码:A文章编号:1009-3044(2011)31-
Discussion on C Language Teaching Methods for Non-specialized Computer in Electrical Information
WU Jia-zhou, HUANG Hua, LAI Wei
(School of Information Engineering, Nanchang Hangkong University, Nanchang 330063, China)
Abstract: A new methods are discussed on C language teaching, Combined with the characteristics of electrical engineering. According to the teaching reform and practice experience, C language teaching problems are pointed out , The solutions are given; Teaching practice shows that it can bring good teaching effect using the methods mentioned in the paper.
Key words: programming ideas; examining system; teamwork; teaching reform
根据高等教育对于学科的划分,电气信息类专业一般包括:电气工程及其自动化、自动化、电子信息工程、通信工程和计算机科学与技术等;现代社会是一个信息化社会,信息的获取、处理和传输等都特别重要,而信息化实现离不开软件,电子信息类专业的人才是促进信息化发展的主要动力;C系列语言和JAVA,是实现算法的两种主流编程语言;但是,C语言具有知识点多而杂的特点,且初学者往往不具备编程能力,但信息类非计算机专业又急需C语言知识,比如嵌入式系统、通信协议和手机游戏开发等,问题在于非计算机专业学生不会专门开设计算机专业像数据结构、编译系统等重要课程,编程思维得不到培养;根据本人多年的教学,谈谈关于C语言学习的几点看法。
1 C语言教学中存在的问题
1.1 理论教学方法不足
理论教学中,上课内容主要来源教材上的知识点,由于这是一门语言类的课程,所以涉及很多的语法,这样使得学生上课感到乏味,并且互动效果不是很好;课时安排也是一个原因,一般C语言理论56学时,实验20学时,教师没有太多的时间去补充额外的知识,不能和学生有一个良好的互动,不能及时了解学生是否真正的理解所学的内容,要不然没法完成教学计划;C语言是理论和实际结合性很强的课程,师生之间的交流比其他课程更重要;虽然安排了上机课,但效果并不理想,有的同学能很快写出老师布置的程序代码,但有的同学根本无法下手。
1.2 课程考核体系不足
考试是教学过程的一个重要环节,衡量学生学习的好坏还是通过课程结业考试来体现;在一般高等院校,C语言的考试总成绩评定比例:理论占70%、上机占20%、平时占10%;但像C语言这样的课程,理论分数并不能很好的反应学生实际水平,有的学生只是为考试而考试,根本就不具备编程能力,典型的“高分低能”;更有甚者,平时根本不怎么学习,考试前几周就狂看书,连怎样进入VC++的界面都不会也都能及格,对于动手能力要求比较高的课程,应考虑采用灵活的考核方式。
1.3 编程思想缺乏
大多数学生上课能认真听讲,但是没有能力去思考蕴藏在知识点后面的深层次问题;主要是因为C语言的课堂教学讲授的基本上是语法知识和一些简单的程序,但要写好一个C语言程序,必须熟悉Visual C++编译系统、数据结构与算法、MFC、编译系统和计算机操作系统等知识,掌握面向对象编程思想,一个初学者很难短时间掌握;而且,非计算机专业一般只开C语言和面向对象程序设计两门课程,其他的像数据结构与算法等重要的计算机基础课不开,这样就客观上使得学生缺乏编程思想的培养;同样一个问题,掌握知识点不同的人理解是不同的,只有通过思考,善于总结,才能灵活掌握和运用知识,提高编程能力。
1.4 兴趣问题
C语言课程一般安排在大一下学期或者大二上学期,与这个阶段其他课程相比,它是一门全新的课程,具有完全不同的特点:其一,上大学之前根本就没有学习语言编程,特别是在某些农村的学校;其二,与高中和大学所学的其他课程基本上没有联系,自成体系,要求不一样;例如,在大一期间所学的高等数学,大学物理和英语等基础课程基本上都是高中课程的延续,至少学习方法相同,只要多看书多做题,一般学生学习都没有问题;但C语言不一样,不能沿用以前的学习方法来学习C语言,如果学生一开始就感到这门课很难,而且程序编写无法下手,这样学生就会失去学习兴趣,没有兴趣就没有学习的动力,严重影响后面的教学。
2 解决方法
2.1 积极主动的学习
兴趣是最好的老师,有兴趣就有动力,培养学生学习兴趣,是提高教学效果的重要途径;C语言教学最初的内容,主要是语法的讲解,这样极容易让学生产生消极状态;教师上课不要太主重语法的讲解,特别是像i++、优先级这方面的内容极其繁琐,实际上在程序设计中又没有多大的用处,要结合专业背景,多讲讲程序在本专业的应用,比如:第一堂课就可以演示已经编辑好的源代码程序,例如指尖检测的演示,如图1所示;这既让学生了解C语言的应用,也加强学生对于所学专业的认识。
图1 指尖检测操作界面
师生互动的教学方式可以很好的提高教学效果,要让更多的同学参与进来,教师对学生的关注和肯定,能大大提高学生的学习兴趣;每次上课前,增加一个提问环节,提问的内容是针对上堂课所讲的知识点,对于同学的回答,作为平时成绩的一个考核指标。
2.2 灵活的课程考核体系
不可否认,学生通过考试获得学分,是学生学习课程的重要动力;像C语言这种对动手能力要求比较高的课程,不一定要采用普通考试方式,成绩评定比例中理论占70%就不尽合理,当然这并不是否认理论考试的重要性,但要加大上机考试的比率,这一点在国家大学计算机等级考试中得到充分体现;理论分数占50%,上机考核占40%更能反映学生的实际情况,可以完全采用国家大学计算机等级考试中机试的方式来衡量学生的编程能力,试卷主要考察学生的语法知识,两者相辅相成,互为补充,通过考试方式的变化来改变学生学习方式,不注重上机编程,试卷考满分也不能及格。
2.3 团队作业和个人作业结合
课外作业是课堂教学的重要补充,是学生巩固和消化课堂知识的重要环节;像C语言这样的课程,可以结合电气类专业的一些特点布置作业,采用个人作业和项目团体作业相结合的方式;个人作业就是平常意义上的课外作业,其内容主要来自于教材,巩固课堂上所学的内容;项目作业内容,主要与专业相关;首先将学生分成多个小组,每个小组大概5至6人,每小组有一定基础的人任小组长;各个小组从教师处抽签获得项目要求,团体合作完成,在固定的时间由各小组成员做一个不超过5分钟的汇报;通过这种方式,学生之间能相互交流,共同提高。
2.4 提高编程思想,先模仿再创新
数据结构与算法,是提高编程思想的核心课程;电气类专业在不学习该课程的情况下,要推荐学生自己先去看看这方面的教材;其次,C语言的学习,不能太注重语法,抓应用,刚开始学习主要以模仿别人的程序为主,先不要去想“为什么”,先想“怎样做出来”,学习一个月之后再去想“为什么”,怎样做才能写的更好,分析自己的程序和别人写的程序有什么差别,对一个题目举一反三,先模仿再创新,逐步形成自己的编程思想。
3 结论
C语言是电子信息类专业的专业基础课,对以后专业课程的学习非常重要;积极主动的学习是学好这门课程的关键,灵活的课程考核体系有利于加强学生动手能力的锻炼,项目作业的形式可以起到“传帮带”的作用,使学生共同进步;先模仿别人的程序,再自己写代码的方法有利于学生克服为难情绪,逐步提高编程思想;根据学生的实际情况,因材施教,提高学生的程序设计能力。
参考文献:
[1] 朱利娜.注重加强非计算机专业大学生计算机应用能力的培养[J].高等教育研究学报,2007(6).
[2] 孙华峰.计算机课程机房教学规律探究[J].高等教育研究学报,2007(8).
[3] 张瑞,舒虹.高校非计算机专业计算机教学的几点思考[J].贵阳学院学报:自然科学版,2010(9).
收稿日期:2011-09-15
基金项目:江西省教改课题(JXJG-08-7-11)
作者简介:吴家洲(1973-),男,讲师、硕士,主要研究方向为计算机应用、图像处理模式识别和计算机视觉。
关键词:编程思想; 考核体系; 团队作业; 教学改革
中图分类号:G642文献标识码:A文章编号:1009-3044(2011)31-
Discussion on C Language Teaching Methods for Non-specialized Computer in Electrical Information
WU Jia-zhou, HUANG Hua, LAI Wei
(School of Information Engineering, Nanchang Hangkong University, Nanchang 330063, China)
Abstract: A new methods are discussed on C language teaching, Combined with the characteristics of electrical engineering. According to the teaching reform and practice experience, C language teaching problems are pointed out , The solutions are given; Teaching practice shows that it can bring good teaching effect using the methods mentioned in the paper.
Key words: programming ideas; examining system; teamwork; teaching reform
根据高等教育对于学科的划分,电气信息类专业一般包括:电气工程及其自动化、自动化、电子信息工程、通信工程和计算机科学与技术等;现代社会是一个信息化社会,信息的获取、处理和传输等都特别重要,而信息化实现离不开软件,电子信息类专业的人才是促进信息化发展的主要动力;C系列语言和JAVA,是实现算法的两种主流编程语言;但是,C语言具有知识点多而杂的特点,且初学者往往不具备编程能力,但信息类非计算机专业又急需C语言知识,比如嵌入式系统、通信协议和手机游戏开发等,问题在于非计算机专业学生不会专门开设计算机专业像数据结构、编译系统等重要课程,编程思维得不到培养;根据本人多年的教学,谈谈关于C语言学习的几点看法。
1 C语言教学中存在的问题
1.1 理论教学方法不足
理论教学中,上课内容主要来源教材上的知识点,由于这是一门语言类的课程,所以涉及很多的语法,这样使得学生上课感到乏味,并且互动效果不是很好;课时安排也是一个原因,一般C语言理论56学时,实验20学时,教师没有太多的时间去补充额外的知识,不能和学生有一个良好的互动,不能及时了解学生是否真正的理解所学的内容,要不然没法完成教学计划;C语言是理论和实际结合性很强的课程,师生之间的交流比其他课程更重要;虽然安排了上机课,但效果并不理想,有的同学能很快写出老师布置的程序代码,但有的同学根本无法下手。
1.2 课程考核体系不足
考试是教学过程的一个重要环节,衡量学生学习的好坏还是通过课程结业考试来体现;在一般高等院校,C语言的考试总成绩评定比例:理论占70%、上机占20%、平时占10%;但像C语言这样的课程,理论分数并不能很好的反应学生实际水平,有的学生只是为考试而考试,根本就不具备编程能力,典型的“高分低能”;更有甚者,平时根本不怎么学习,考试前几周就狂看书,连怎样进入VC++的界面都不会也都能及格,对于动手能力要求比较高的课程,应考虑采用灵活的考核方式。
1.3 编程思想缺乏
大多数学生上课能认真听讲,但是没有能力去思考蕴藏在知识点后面的深层次问题;主要是因为C语言的课堂教学讲授的基本上是语法知识和一些简单的程序,但要写好一个C语言程序,必须熟悉Visual C++编译系统、数据结构与算法、MFC、编译系统和计算机操作系统等知识,掌握面向对象编程思想,一个初学者很难短时间掌握;而且,非计算机专业一般只开C语言和面向对象程序设计两门课程,其他的像数据结构与算法等重要的计算机基础课不开,这样就客观上使得学生缺乏编程思想的培养;同样一个问题,掌握知识点不同的人理解是不同的,只有通过思考,善于总结,才能灵活掌握和运用知识,提高编程能力。
1.4 兴趣问题
C语言课程一般安排在大一下学期或者大二上学期,与这个阶段其他课程相比,它是一门全新的课程,具有完全不同的特点:其一,上大学之前根本就没有学习语言编程,特别是在某些农村的学校;其二,与高中和大学所学的其他课程基本上没有联系,自成体系,要求不一样;例如,在大一期间所学的高等数学,大学物理和英语等基础课程基本上都是高中课程的延续,至少学习方法相同,只要多看书多做题,一般学生学习都没有问题;但C语言不一样,不能沿用以前的学习方法来学习C语言,如果学生一开始就感到这门课很难,而且程序编写无法下手,这样学生就会失去学习兴趣,没有兴趣就没有学习的动力,严重影响后面的教学。
2 解决方法
2.1 积极主动的学习
兴趣是最好的老师,有兴趣就有动力,培养学生学习兴趣,是提高教学效果的重要途径;C语言教学最初的内容,主要是语法的讲解,这样极容易让学生产生消极状态;教师上课不要太主重语法的讲解,特别是像i++、优先级这方面的内容极其繁琐,实际上在程序设计中又没有多大的用处,要结合专业背景,多讲讲程序在本专业的应用,比如:第一堂课就可以演示已经编辑好的源代码程序,例如指尖检测的演示,如图1所示;这既让学生了解C语言的应用,也加强学生对于所学专业的认识。
图1 指尖检测操作界面
师生互动的教学方式可以很好的提高教学效果,要让更多的同学参与进来,教师对学生的关注和肯定,能大大提高学生的学习兴趣;每次上课前,增加一个提问环节,提问的内容是针对上堂课所讲的知识点,对于同学的回答,作为平时成绩的一个考核指标。
2.2 灵活的课程考核体系
不可否认,学生通过考试获得学分,是学生学习课程的重要动力;像C语言这种对动手能力要求比较高的课程,不一定要采用普通考试方式,成绩评定比例中理论占70%就不尽合理,当然这并不是否认理论考试的重要性,但要加大上机考试的比率,这一点在国家大学计算机等级考试中得到充分体现;理论分数占50%,上机考核占40%更能反映学生的实际情况,可以完全采用国家大学计算机等级考试中机试的方式来衡量学生的编程能力,试卷主要考察学生的语法知识,两者相辅相成,互为补充,通过考试方式的变化来改变学生学习方式,不注重上机编程,试卷考满分也不能及格。
2.3 团队作业和个人作业结合
课外作业是课堂教学的重要补充,是学生巩固和消化课堂知识的重要环节;像C语言这样的课程,可以结合电气类专业的一些特点布置作业,采用个人作业和项目团体作业相结合的方式;个人作业就是平常意义上的课外作业,其内容主要来自于教材,巩固课堂上所学的内容;项目作业内容,主要与专业相关;首先将学生分成多个小组,每个小组大概5至6人,每小组有一定基础的人任小组长;各个小组从教师处抽签获得项目要求,团体合作完成,在固定的时间由各小组成员做一个不超过5分钟的汇报;通过这种方式,学生之间能相互交流,共同提高。
2.4 提高编程思想,先模仿再创新
数据结构与算法,是提高编程思想的核心课程;电气类专业在不学习该课程的情况下,要推荐学生自己先去看看这方面的教材;其次,C语言的学习,不能太注重语法,抓应用,刚开始学习主要以模仿别人的程序为主,先不要去想“为什么”,先想“怎样做出来”,学习一个月之后再去想“为什么”,怎样做才能写的更好,分析自己的程序和别人写的程序有什么差别,对一个题目举一反三,先模仿再创新,逐步形成自己的编程思想。
3 结论
C语言是电子信息类专业的专业基础课,对以后专业课程的学习非常重要;积极主动的学习是学好这门课程的关键,灵活的课程考核体系有利于加强学生动手能力的锻炼,项目作业的形式可以起到“传帮带”的作用,使学生共同进步;先模仿别人的程序,再自己写代码的方法有利于学生克服为难情绪,逐步提高编程思想;根据学生的实际情况,因材施教,提高学生的程序设计能力。
参考文献:
[1] 朱利娜.注重加强非计算机专业大学生计算机应用能力的培养[J].高等教育研究学报,2007(6).
[2] 孙华峰.计算机课程机房教学规律探究[J].高等教育研究学报,2007(8).
[3] 张瑞,舒虹.高校非计算机专业计算机教学的几点思考[J].贵阳学院学报:自然科学版,2010(9).
收稿日期:2011-09-15
基金项目:江西省教改课题(JXJG-08-7-11)
作者简介:吴家洲(1973-),男,讲师、硕士,主要研究方向为计算机应用、图像处理模式识别和计算机视觉。