2012年第04期
吉林省教育学院学报
No.04,2012
第28卷JOURNAL OF EDUCATIONAL INSTITUTE OF JILIN PROVINCE
Vol .28(总280期)
Total No .280
收稿日期:2011—12—15
作者简介:黄璐(1979—),女,辽宁开原人,大连海洋大学,讲师,博士在读。研究方向:脑电信号分析。
于红(1968—),女,辽宁大连人,大连海洋大学,教授,博士。研究方向:数据挖掘。王建彬(1975—),男,辽宁朝阳人,大连海洋大学,讲师,硕士。研究究方向:计算机应用。
C 程序设计课程教学探讨
璐1,于
红1,王建彬
2
(1.大连海洋大学信息工程学院,辽宁大连116023;2.大连海洋大学教育技术与计算中心,辽宁大连116023)
摘要:针对当前高校C 程序设计课程的教学实际情况,提出了语法与计算思维能力并重的教学理念、问题驱动与WebQuest 相结合的教学模式,在教学过程中兼顾学生基本语法的熟练掌握和计算思维能力的培养,切实提高学生的程序设计能力。
关键词:语法;计算思维能力;问题驱动;WebQuest 中图分类号:G20
文献标识码:A
文章编号:1671—1580(2012)04—0145—03
C 程序设计课程是计算机专业本科的核心课程,它的培养目标是使学生掌握正确的程序设计方
法、具备良好的计算思维能力。通过对该课程的学习,学生不仅要掌握高级语言程序设计中数据类型、句法、语法等基础知识,还要掌握在实践中如何运用这些基础知识的思想和方法,进而养成独立思考的习惯和利用计算机解决实际问题的计算思维能力[1],进而为后续计算机课程,如数据结构、操作系统、算法设计等打下良好的基础。
前些年,国内高校该类课程的教学模式均停留在传统的模式上,过于注重语句、语法和一些细节,基本上是以C 语言自身的体系为脉络展开的,没有
把逻辑与编程解题思路放在主体地位上[2]
,这样培
养出来的学生死记硬背,
考试成绩很高,但是实际解决问题能力很差。近几年,随着这种教学模式弊端
的逐渐显露,人们开始越来越多地提倡偏重思维和创新能力的教学改革。但是,这样培养出来的学生由于基础知识太薄弱,语法不熟,写不出程序来,或者写出来的程序错误百出,纵有一肚子思想也解决不
了实际问题。针对这些状况,结合当前高校计算机专业学生的实际情况,提出了语法与计算思维能力并重的教学理念、问题驱动与WebQuest 相结合的教学模式,在教学过程中兼顾学生基本语法的熟练掌握和计算思维能力的培养,切实提高学生的程序
设计能力。
一、明确课程培养目标
程序设计强调数学基础,是将数学应用于解决实
际问题的技术。因此,
计算思维能力是计算机科技工作者必备的能力[3,4],是程序设计的根本。另一方面,
语言是载体,是表达程序设计思想的工具,只有熟练
掌握基本语法才能正确表达程序设计思想。这两方面,忽视任意一个,都不能达到理想效果。只有通过最佳适应通道,才能使学生在深厚专业知识基础上进
行积极思考,
从新手逐渐向适应性专家方向发展。因此,我们将本课程的培养目标设定为:
(1)熟练掌握C 语言各种数据类型及基本语法知识;
(2)掌握基本问题的求解过程和基本思路;(3)建立算法意识,培养良好的思维习惯;
(4)针对计算机学科,培养计算思维能力。二、建立科学完整的课程内容体系知识可以通过传授获得,能力必须靠训练获得。所以,在教学中必须在重视理论教学的同时强调实践训练,学生只有通过大量的练习,才能真正掌握语言知识,培养计算思维能力,逐步理解和掌握程序设计的思想和方法,从而能利用计算机解决实际问题。
1.理论教学环节
本课程的教学内容包括“语法知识”和“程序设
5
41
计”两条主线,两者并重。
第一条主线———“语法知识”:以程序设计语言必须具备的功能(数据类型和流程控制)为重点,旨在使学生熟练掌握基本语法知识,具备扎实的理论功底。
第二条主线———“程序设计”:包括问题分析、建立数学模型、算法设计和编码、测试等方面,重点讲授程序设计的思想和方法以及程序设计风格,使学生能从更高的角度认识该课程的学习目的,不局限于对语言本身的学习和编程技巧的掌握,更看重对语言应用能力的培养,并在课程中引入软件工程的思想,指导学生编写规范的程序。具体内容及学时分配如表1所示。
表1C程序设计课程内容体系
主线主要内容重点难点培养目标学时分配
语法知识各种数据
类型、基本
语法
流程控制、
构造数据
类型
掌握基本
语法知识
42(含理论
24、实验
18)
程序设计问题分析、
建立数学
模型、算法
设计和编
码、测试
程序设计
的思想、方
法、风格c程序设计pdf下载
培养计算
思维能力、
规范编写
程序
42(含理论
24、实验
18)
2.实践教学环节
为了分层次培养学生的编程能力,我们在实践教学环节中设计了3个层次的题目供学生练习,即基础性题目、设计性题目和综合性题目。这些练习题目可以帮助学生分别从知识点掌握、简单程序编写和大型程序设计三个层次上掌握语言知识、逐步提升程序设计能力。
根据知识点布置的基础性题目,偏重基本知识的熟练掌握,学生在自动评判上机测试系统上完成;具有一定难度的设计性题目,要求学生能将1 3个知识点综合运用并落实到具体程序的编写、调试中去;综合性题目是为优秀学生设计的,要求应用软件工程的思想和方法编写大型程序,解决实际问题。
在实践教学中,考虑多样性和灵活性,为学生提供选择的余地,鼓励自主学习。基础性题目题库10套,必做6套,其余选做;设计性题目,每一类包括6题,必做3题
,选做3题;综合性题目8题,规模在1000代码行以上,全部选做,提交作业形式是程序和相关文档。鼓励学生根据自身水平和兴趣选择适合的训练方式、数量和难度,自主安排学习进程,在达到课程基本要求的前提下,使自己得到充分的发展和提高。
三、问题驱动与WebQuest相结合的教学模式
为了更好地实现教学内容的组织思路,在教学过程中,采用问题驱动(课上时间)与WebQuest(课外时间)相结合的教学模式。
1.问题驱动模式
在课上讲解C语言中各数据类型及语法规则如何应用时采用问题驱动模式。通过问题分析,重点讲解程序设计的思想和方法,同时强化必须牢记的语法知识。然后通过大量的上机练习,包括基础性题目、设计性题目和综合性题目,使学生在实践中掌握语言知识,培养计算思维能力和程序设计能力,逐步理解和掌握程序设计的思想和方法,明确学习语言的目的是为了应用。在学生的学习过程中,教师针对暴露出的问题,答疑解惑。具体的教学过程如图1所示。
例如:讲解循环知识点时,
I)提出:从1加到100这个具体问题;
II)分析:求解这个问题需要“+”操作重复执行若干次,重复操作从1开始,结束于100,加数变化方向是从小到大。画出程序流程图;
III)给出代码:int i,sum=0;for(i=1;i<= 100;i++)sum+=i;
IV)归纳总结:循环结构包含四个要素,缺一不可:①同样的操作重复执行若干次(sum+=i);②设定循环初始条件(i=1);③设定循环终止条件(i<=100);④循环变量从初始趋向终止方向的变化(i++);
V)抛出同类问题:求1!+2!+3!+…+n!。学生课堂练习、上机并辅导答疑。
2.WebQuest模式
WebQuest是由美国圣地亚哥州立大学教育技术系的伯尼·道奇(Bernie Dodge)和汤姆·马奇(Tom March)博士创建的一种课程计划,是以建构主义理论和认知学习理论为基础理论的面向探究的网络教学模式。WebQuest主要的教学方法是在网络环境下,由教师设定一个与学习课程相关的、具有一定吸引力的主题,并依据脚手架策略将其分解后与网络导航资源一起提供给学习者;学习者按照设定的情境和框架,对主题进行多角度探讨,最后通过讨论合作、互相交流完成与主题相关的学习[5]。
641
程序设计课是高强度的脑力劳动,不是听或看会的,而是练会的。只有让学生动手,他才会有成就感,学起来才比较从容。由于课堂教学时间有限,我们运用WebQuest模式使学生不再受制于时空限制,自主安排,独立思考,大量练习,实现了传统课堂教学的延伸。WebQuest网络教学平台模块图如图2所示。
(1)用户管理模块
WebQuest环节中,我们设计的任务是学生以1 3人为一个项目组,完成一个小型应用程序开发。需要对学生的注册信息、组长组员等角权限信息进行管理。
(2)任务与资源模块
教师首先部署关于此次课程的知识点、关键点、难点和重点,并传达最终要完成的目标。同时,教师向学生提供解决此次任务能够用到的学术资源,包括电子课件、网络视频、电子图书、链接等。学生在接到关于此次课程的任务和目标时,对其是没有具体的概念和理解的,因此,教师指导搭建脚手架一步步来完成最终的任务,学生通过脚手架提供的支持和帮助资源,不断提高自己的水平和知识层次,最终达到统领全局。支架式教学对学生在自主学习中遇到的关键点和难点都有指点和解决策略提示,有助于引导学生自我探究的过程。
(3)标准与评价模块
学生的每一次努力都希望得到及时的反馈,这样才能提高他们的学习兴趣。首先,教师遵照评价标准对学生的成果进行客观有效的评价,通过有效评价,发现学生的潜能和特长,了解学生发展中的需求,帮助学生认识自我,建立自信。其次,教师针对学生完成任务的过程及实际成果给出合理化建议。教师提出的建议具体明确,有针对性,把握分寸,不提过高要求,所提的建议是经过学生的努力能够达到的。通过这两个方面的反馈,学生能够清晰地发现学习过程中存在的问题,并能根据教师的建议或分析,通过改进完善取得更大的进步。
(4)交流区模块
学生对事物的感知方式、个人情感和认知结构具有特殊性,因此,即使对同一事物,每个学生对其建构都可能是不同的。通过体验和互动交流使学生能学习他人的长处和优势,养成多角度、全面考虑问题的习惯,培养学生协作能力和团队精神。同时,教师也可以加入其中,发挥主导作用,适时指导,帮助学生有效交流,协作互助,在探究过程中,判断问题解决的方式是否有效,结论是否正确。
四、结语
针对当前高校C程序设计课程教学实际情况,提出了语法与计算思维能力并重的教学理念、问题驱动与WebQuest相结合的教学模式,在教学过程中兼顾学生基本语法的熟练掌握和计算思维能力的培养,双管齐下,取得了比较好的教学效果。
[参考文献]
[1]宁雪静,沈泽刚.高级语言程序设计课程整合研究[J].计算机教育,2009(2).
[2]吴文虎.计算机程序设计基础课程改革[J].中国大学教学,2004(2).
[3]吴文虎.精心铸精品理念须先行[J].计算机教育,2008(13).
[4]蒋宗礼.加强计算机基本技能培养[J].计算机教育,2011(17).
[5]Dodge B.J.WebQuests:A Technique for Internet-based Learning[J].The Distance Educator,1995(2).
C Program Design Teaching
HUANG Lu1,YU Hong1,WANG Jianbin2
(1.Information Engineering College of Dalian Ocean University,Dalian,Liaoning116023;
2.Educational Technology and Computing Center of Dalian Ocean University,Dalian,Liaoning,116023)
Abstract:According to the actual situation of College C programming courses teaching,teaching philosophy of emphasizing both grammar and computational thinking skills is provided,as well as teaching model combining problem-driven and WebQuest.In process of teaching,the students'basic grammar proficiency and computational thinking ability is taken into account,so as to effectively improve students'programming skills.
Key words:grammar;computational thinking ability;issue-driven;WebQuest
741

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。