公务员期刊网 精选范文 c语言课程设计范文

c语言课程设计精选(九篇)

c语言课程设计

第1篇:c语言课程设计范文

关键词:教学模式;课程建设;一体化;网络助教;在线考试

“百年大计,教育为本”,这是教育部《2003-2007年教育振兴行动计划》的开篇词,深刻昭示了教育的重要意义与作用。“新世纪素质教育工程”以培养德智体美等全面发展的一代新人为根本宗旨,阐明了教育的目的是培养具有较强实践能力、具有创新思想和开拓精神的新一代大学生。“高等学校教学质量与教学改革工程”以提高高等教育人才培养质量为目的,强调通过培养模式、课程体系、教学内容和教学方法改革,利用精品课程平台培养出更多的创新性人才。精品课程建设对高等教育教学改革、教学资源共享、提高教学质量起了重要作用[1]。

哈尔滨工程大学是国家工业和信息化部下属的一所具有“三海一核”鲜明特色的211院校。通过多年努力,精品课建设取得了显著成效,C语言程序设计即是其中之一。通过多年的教学实践,我们建立了一套一体化的教学模式。在教学活动中,改变传统的以教师为主的重在“教学”的教学方式,推行以学生为主的重在“指导”的教学方式。这种教学模式强调学生的自主学习能力,最大限度地发挥学生的自主学习能力,使学生很好地掌握了编程技能。学生综合能力得到了较大提高,在包括ACM ICPC在内的各种编程竞赛中取得了良好的成绩,受到用人单位的广泛好评。

1现状分析

我校虽然为211大学,但全校学生的基础参差不齐。各专业的招生情况不同,学生的基本素质参差不齐;计算机课程在中、小学开设情况的不同及生活现状的不同,造成不同学生的计算机基本技能有较大差异。

在教学活动中,教师人数严重不足,尤其缺乏助教。这种情况致使学生在学习过程中缺乏必要的指导,指导力度不足的现状又导致了教学环节的不完善。教师不能及时批改全部作业,无法全面了解学生的学习情况。

精英教育是我校最主要的教育目标。学校推出了2009版的教学计划。新版教学计划带来的问题是程序设计课程的课时被压缩。如何在一个教学周期内让学生很好地掌握程序设计是一个重要问题。要想学好,学生必须在课下再花大量的时间学习,进行必要的训练,同时还需要教师进行必要的指导、辅导和答疑。

摆在计算机基础教学教师面前的课题是:如何以有限的人力教授基础和能力参差不齐的大量学生,使他们在有限的时间内掌握计算机基础知识、基本理论、基本操作,并能灵活运用所学知识进行创造性思维和创造性实践。因此,传统的教师教学、学生学习的模式必须要改革。解决问题的办法是:发挥学生的自主性,鼓励学生进行自主学习,使学生从被动地位转变到自主学习的主动地位。在这种模式下必须加大辅导力度,构建一套全新的、一体化的、贯穿整个教学活动周期的教学模式,开发辅助教学工具――网络助教系统、网络学习平台,采用无纸化在线考试系统,可以很好地解决这一问题。

2一体化程序设计课程模式

C语言程序设计课程几乎是各大学必开的程序设计课程,不仅计算机专业的学生需要学习,绝大多数非计算机专业学生也要必修这门课[2-4]。

教学活动是一个全面的系统工程,包括学习的指导者教师,学习的接收者学生以及教材、实验环境和辅助手段。课程建设的目的是为了让各种教学资源“活”起来,以教学设计为指导,设计各种共享资源及如何为提高学生素质而服务[1]。

一体化教学模式是指利用计算机技术和网络技术[5-6],协调教学系统的各方面因素,充分发挥教师和学生的积极主动作用,配合用现代技术开发出来的软件平成教学活动的教学模式。一体化教学模式结构如图1所示。

教学活动中教学的发起者与引导者是教师,知识的接收者是学生。为使学生得到更多的收获,教师不仅要“教”,更要“导”。“导”的含义是指辅导、指导与引导。教师辅导学生学习、答疑解惑,不仅要像培养研究生一样指导其如何学习、怎样学好,更要引导学生前进的方向、引领其解决问题的思维。优秀的教学团队是教学的良好保障,教材决定课程内容与方向,实验是提高实践能力的基础与验证正确性的手段,教学网站是学习的辅助工具,网络助教是教师的臂膀与拓展,无纸化考试是验证学习成果的方法。

3一体化教学模式各子系统

3.1教师队伍建设

C语言程序设计课程由我校计算机基础课程教学中心承担。中心的14位教师中有教授3位,副教授8位,讲师3位;博士5位,硕士8位,学士1位;博士生导师1位,硕士生导师6位。各位教师长期从事教学活动,具有丰富的教学经验,是一支高水平、高素质的优秀教学队伍。

在努力做好计算机基础教学工作的同时,我们积极参与各级教学改革与教学研究工作,教改立项50余项,获得各类成果奖励20余项,发表教学研究论文30余篇,开展了多门课程的题库建设工作,编写出版教材20余本,完成了两门校级精品课程的建设,有13人次被评为校级优秀主讲教师,获得各种优秀教师个人称号50余人次。

3.2教材建设

在教学活动中,教材的重要性毋庸置疑,教材决定了教学的主要内容,引领学生的思维方向[7-8]。在早期的教学中我们采用谭浩强教授的两本主教材:《C语言程序设计》和《C语言程序设计实验指导》。经过长期的教学实践,发现该套教材存在一定局限性,不能完全满足我校的教学要求。我校的培养目标是创新性的精英人才,除了强调C语言本身的语法特点、编程技巧外,更应强调编程能力的培养及解决实际问题的能力,应该在主教材中重点突出程序设计部分及解决实际问题部分。在实验环节不仅要验证所学知识,更应强化设计能力。

经过认真的研究、分析与准备,我们推出了自编的2套教材:《C语言程序设计》和《C语言程序设计学习指导》。在主教材中以C语言做编程环境依托,强调C语言仅仅是程序设计的工具之一,强化程序设计部分,采用案例教学方式,重点培养解决问题的方法。目的是使学生掌握脱离于任何语言环境的程序设计思想,给学生更大的发展空间,使其能够在今后的科研和工作中,具备快速学习并灵活应用其他工具软件的能力。在辅助教材中侧重于分析问题与解决问题两方面内容。为提高学生的逻辑思维与推理分析能力,精心选择与设计了大量经典算法、习题与练习来训练学生。在实验部分精心设计了验证实验、设计实验与自主发挥实验。经过训练,学生学习了他人的经验与方法,并能融会贯通,做到了首先要学会,继而要会用、用好、用精,将来能够更好地发挥程序设计思想的指导作用。

3.3教学网站建设

学校有很好的网络环境,为了使学生更好地学习,我们建设了C语言课程网站。通过网站学生可以了解课程,共享优秀资源。课程网站主要分为 5个区域:教学区、学习区、练习区、深入与提高区和讨论与交流区。课程网站功能划分如图2所示。

教学区包含教学大纲、教学进度表和实验内容,目的是让学生对课程目的和要求有整体了解。学习区主要强化自主学习,包含教学课件、实验指导、教学录像、教师课程讲义、电子教材和授课教案。通过学习区的内容,学生可以共享不同教师的风采,了解教师是如何设计教学内容,如何通过案例引领程序设计思路,同一问题不同教师的侧重点与切入问题的不同方法。练习区配有练习与习题、作业答案、历年试题,供学生验证学习的效果。深入与提高区包含进一步提高的相关学习资源、经典程序实例与外部优秀资源链接,给学生以更广阔的发展空间。讨论与交流区的设置目的是给学生一个经验交流空间,学生用自己的语言分享学习心得体会。

3.4网络助教建设

助教,顾名思义是一种辅助教师进行教学活动的角色。传统助教需批改作业,进行作业情况的统计与汇总,讲解作业的共性问题,上习题课,完成课下的辅导答疑。由于我们计算机学院整体素质的提升,目前已经不存在助教这一角色。每年要由我中心的14位主讲教师承担100多个自然班的授课任务,3 000多学生的批改作业、辅导答疑等工作任务极其艰巨,而作业和答疑是学习过程中必不可少的重要环节。为了更好地完成教师的工作,增大增强教师的臂膀,共享优秀资源,我们开发了网络助教系统。

网络助教是应用计算机技术和网络技术搭建的计算机辅助教育平台。网络助教利用网络与先进计算机技术完成普通助教的工作,并拓展了助教的服务范围,使全校学生共享教学成果。网络助教系统功能结构如图3所示。

教务处根据教学资源情况在上学期末安排课表,将若干个自然班分配给某教师成为一个教学单位,每个教师承担2~3个教学单位的教学。学生管理完成学生信息的导入与导出;构造教学单位;维护教学单位的上课时间表。将教师角色设计为普通教师、题库维护教师、作业维护教师与系统管理员。系统管理员完成教师角色的分配与教学单位的指派;题库教师完成作业题库的建设、更新与维护;作业维护教师根据情况作业及并为其指定完成时间;普通教师完成自己班级的作业管理。作业管理完成作业的批改与点评,作业情况统计,期末数据综合统计与报表生成,共性问题挖掘,经验知识学习指导。完成作业部分实现学生通过网络在指定时间范围内上交作业,实时查看正确答案及评改、评语,共性问题获取,经验知识学习。题库管理完成作业题库维护。

网络助教利用计算机技术拓展了教师的工作,由全体教师共同组成了一个超级教师,具有全体教师的教学经验,全天候为全体学生进行全方位的服务,优质资源和优质服务共享。除此而外采用数据挖掘技术进行学生作业的共同问题抽取,抽取出来的经验知识可为全校学生共享并指导其进一步的学习,避免走弯路,促进共同提高。采用知识获取技术得到主观问答题的摘要,并采用相似度匹配技术进行成绩判定。采用相似度匹配技术还可以进行雷同作业判定。

3.5无纸化在线考试系统建设

随着教育事业的发展和网络技术的成熟,计算机网络的应用越来越广泛。将网络应用于教育,实现教学办公自动化,必将提高教学效率,促进素质教育的发展[1,9]。无纸化在线考试已经完全可以满足绝大多数考试的要求。无纸化在线考试是在计算机上进行的考试。纸介质试卷方式只能以有限的题目来测试学生的能力,还无法做到全面覆盖知识体系的全部知识点。无纸化在线机试考试,通过覆盖知识体系全部知识点的题库系统对学生进行考试,可以全面测试学生的能力和掌握知识的程度,由计算机从已建立的题库中抽取试题组卷,考生一人一机一卷,根据显示的题目用键盘或鼠标输入答案,考试结束后,计算机自动阅卷、评分、统计及分析等。采用无纸化考试,丰富了考试内容,提高了考试质量,教考分离,公平公正,知识体系覆盖全面,避免人工批卷产生的错误,也避免了传统考试因所有学生试卷相同而带来的抄袭问题。无纸化考试系统功能结构如图4所示。

无纸化在线考试采用B/S结构。学生实时得到考试成绩并签署成绩单。考试管理完成考试批次设置、考试过程监控、成绩管理、生成报表。学生管理完成考生的导入导出、生成准考证、验证身份。试卷管理完成设定考试难度、随机生成试卷、试卷指派。在线考试完成实时考试、成绩评判、打印成绩单。题库管理完成考试用题库的维护。

采用B/S结构简化了客户端设置,使得考试的组织快捷方便,学生机仅需基本配置即可,无需安装客户端程序,重点需要对考试服务器进行维护。该结构使得服务器成为系统瓶颈。采用多线程与缓冲池技术解决并发登录与并发试卷提交。系统分离用户逻辑与数据,用实体引擎完成数据库操作,采用角色及访问控制、身份验证与数据视图技术解决系统安全问题。采用加密技术保证成绩的不可更改性。

4结语

多年的实践验证了一体化教学模式的优越性。我们精心进行全方位的课程建设,使教学活动不受时空限制,以其互动性强、协作性强、教学相长等特点在为提高我校C语言程序设计课程的教学效率与质量,培养精英人才等方面发挥了积极作用。随着教育事业的发展和网络技术的成熟,将计算机技术应用于教学活动中的一体化教学模式必将越来越成熟。这种模式拓展了优秀教师的作用,使优秀资源充分共享,并能将教师从繁重的批改作业、辅导答疑中解放出来,以更多的精力进行教学研究。此外,网络辅助教学的研究与实践不只是单纯的教学问题,还需要各方面的协同工作和大力支持,只有上下齐心合力,网络辅助教学的目标才能真正实现。这套教学模式不仅可用于计算机类课程,还可以向其他课程或领域延伸,必将取得长足的进步。

参考文献:

[1] 郑莉. 精品课程建设中的几个重要关系[J]. 计算机教育,2006(10):15-17.

[2] 蒋东兴,张继才,罗念龙. 高校网络教学现状与对策[J]. 计算机教育,2004(9):44-46.

[3] 余久久. 浅谈“C语言程序设计”教学体会[J]. 计算机教育,2008(18):120-122.

[4] 杨帆. C语言程序设计课的教学角度[J]. 计算机教育,2008(18):105-106.

[5] 吴宏伟,张殿龙,梅险. 高校网络辅助教学的探索与实践[J]. 计算机教育,2007(13):18-21.

[6] 邓萍,蒋君好,蒋启华,等. 高校网络辅助教学应用中存在的问题及对策初探[J]. 中国现代教育装备,2009(15):21-22.

[7] 李迎秋,李树华,邱建华,等.C语言课程教学改革与实践[J]. 计算机教育,2008(24):12-14.

[8] 朱立华,俞琼. C语言教材建设的研究与实践[J]. 计算机教育,2009(13):151-153.

[9] 关忠仁. C语言教学质量的思考与实践[J]. 计算机教育,2007(6):56-58.

Research and Practice of C Language Programming Course Construction

GAO Wei, ZHANG Guo-yin, HUANG Hong-tao

(College of Computer Science and Technology, Harbin Engineering University, Harbin 150001,China)

第2篇:c语言课程设计范文

近年随着高校招生规模的扩大,学生数量一直呈增长趋势。C语言程序设计作为理工科专业学生必修的基础课程,不及格的学生人数也在逐年增加。重修班的课程教学也是本科教学中重要的组成部分,在重修课程的教学工作中存在一些有别于普通课程教学的特点,需要任课教师采取针对性的措施,才能保证重修课程保时保质完成。

一、目前C语言重修课程存在的问题

1.教学方法与教学手段过于单调。从目前高校的教学情况看,一般现在大多以多媒体教学为主。当然,多媒体教学较以往黑板板书的讲授方式有了一定的进步,但这里边仍然存在一定的问题。第一,多媒体教学方法仍是以教师教授为主、学生听讲为辅的教学手段,启发式教学没有得到充分应用。而且许多教师过分注重PPT教学,强调体系的完整性而非学生的掌握情况。学生经常感到上课好像都听懂了,但是上机时对C语言语法不熟练,编写程序无从下手。第二,多媒体教学很难为学生建立编写程序的直观感受。教师PPT上的例子通常是可以正确运行并得到正确结果的例子程序。这就会使学生产生厌学心理,误认为只要将程序代码输入计算机,计算机就会正确地执行。当程序发生错误时,学生经常感到束手无策,挫伤了学生学习的积极性和热情。

2.学生的学习目的不明确。对于非计算机专业的学生,通常认为C语言程序设计与他们所学专业课相关性较小,而且在现实生活中很难应用,所以对C语言程序设计很难提起兴趣。另一部分同学认为学习C语言的目的只是为了通过计算机等级考试或重修考试,所以认为C语言学习的重点是语法知识而非上机实践,这部分同学学习非常认真,教材上做满了各种对知识点的解释和编程时应注意的误区,可就是不会编写程序,最多只能参照教材的例子编写,无法编写程序解决工程实际问题。还有部分同学认为C语言过时了,应当学习JAVA、C#等目前行业内普遍采用的高级程序设计语言。而且JAVA等高级语言相对来说简单易学,源代码可读性强,同时又有功能强大的编译器支持,利于迅速开发项目。

3.C语言本身的特点。C语言作为一门实用的编程语言,以其强大的编程功能,自由灵活的编程风格,获得了IT技术从业者的广泛青睐,但是这些有点恰恰成为了初学者的最大障碍。C语言程序语法复杂,调试苦难,尤其是对指针的使用,使初学者经常犯难以跟踪的编程错误。而且对于非计算机专业的学生,C语言程序设计往往在大一下学期或大二下学期开设。对于仅学习过大学计算机基础的非计算机专业学生来说,缺乏对计算机结构的全面了解,对于和计算机硬件尤其是和内存结合很紧密的概念,学生基本很难理解和掌握。

二、针对重修课程特点的教学措施

1.培养学生学习兴趣。对于选修C语言重修课的学生,应注意对其学习兴趣的培养。比如在课堂上可以给重修的学生讲一些计算机科学家的生平及小故事、计算机与数学等方面的内容,短则一两句话,长则三五分钟,既活跃课堂气氛,又能激发重修生对程序设计的兴趣。教师也可以在课堂中向学生讲述一些在生活中使用C语言编写的软件,如与学生生活密切相关的嵌入式系统软件,让非计算机专业的重修学生感到C语言程序设计与他们并不遥远。教师在重修课教学过程中,可以采取案例驱动、任务驱动、主题作业、课程设计等多种形式[1,2],增强学生的学习兴趣。

2.改进教学方法。在C语言程序设计重修课程的教学中,要充分利用多媒体课件,其内容应该有条理、重点突出、详略得当。多媒体课件应该注重演示与推理,而不是教材的翻版。同时,教师也可在课堂上现场使用编译软件编写程序,并对程序中的错误加以修改并讲解,也可以教师将程序的主体写好,邀请同学上讲台上编写关键代码段,一起完成程序的编写。如教师在讲解for循环体的知识点之后,可以编写如下图所示代码:

并请同学上讲台现场编写代码完成所需的功能。如果学生在编写过程出现了错误,教师应该在课堂上做出讲解并给出解决方法。这样既调动了重修生上课的积极性,活跃了课堂气氛,同时教师对学生编程时易发生的错误,现场给予了解答,减轻了学生学习程序设计的畏惧心理。

同时,应采用将多媒体教学工具(如Flash)?c程序调试相结合的方法,将C语言程序设计中内容比较抽象、比较底层、不易理解的部分,如排序算法,用直观的形式展现给学生。

例如,在讲解选择排序算法时,可以将如下图所示的Flash与VC++6.0的调试窗口做对照:

教师可以通过Flash动画与程序代码的互动,逐步地将选择排序算法程序每一步操作,形象直观地演示给学生。

第3篇:c语言课程设计范文

Exploration of educational reform of C language programming course

Yao Lixin, Lang Hongtao

(School of Information Technology, Qingdao University of Technology, Jiaozhou, Shandong 266300, China)

Abstract: As a primary course of programming, C language programming is quite difficult for freshmen. In order to deal with it, Qingdao Institute of Technology launched an educational reform project. All the members of this project have conducted continuous exploration and practice during the past few years. The educational team and teaching materials are established. The content and the method of teaching are elaborated. The specific approaches of experimental teaching and reform of examining system are introduced.

Key words: C language; programming; educational reform; curriculum development

0 引言

当前,计算机已经成为人们工作、学习和生活中必不可少的工具,整个社会对计算机的高度依赖促使一个崭新的文化形态的形成――计算机文化。随着高等教育从精英教育阶段进入大众教育阶段,教育部高等学校计算机科学与技术教学指导委员会在计算机基础课程教学基本要求中提出了1+X的课程设置方案[1],理工类学生在学习大学计算机基础课程后,接下来就要学习C语言程序设计,C语言程序设计已经成为各高校普遍开设的基础课程。本文总结了我们在教学改革和实践中的一些做法和体会。

C语言功能强大,使用灵活方便,应用面广,可移植性好,兼有高级语言的优点和低级语言的特点[2],这也使得初学者较难学习和掌握,在教学中我们发现,学生往往对编程解决实际问题感到困难,不知从何下手,而一些考试题目往往重视考查语法的细节,而对编程能力考查得不多。对于C语言程序设计的教学,我们从培养学生的兴趣和能力,以及计算机思维能力出发,进行了一系列教学改革的探索与实践。

1 教学师资团队建设

人才培养师资队伍是关键,教学团队的建设是保障教学效果和实施教学改革的基础和支撑[3]。根据本课程的特点和大一学生的基础,学院确定了一支老中青相结合的骨干教师组成本课程教学团队,团队由一位教授、一位副教授、四位讲师和三位助教组成,分别承担理论教学和实验教学任务,这支队伍年龄、职称结构合理,团队中的教师在每学期的教学督导和学生评教中,成绩都在良好以上,从根本上保证了课程的教学质量。

坚持教学团队的凝聚力建设,定期研讨,统一思想。每周教研时间及时交流教学中出现的问题及解决方法,对教学过程进行总结反思,坚持互相听课,集体研究讨论教案、课件制作,对每个实验内容、案例的选用、考核的内容和方式等都经过团队的统一讨论确定。

重视教学团队中教师自身的进修和提高,团队中的多名教师先后参加了国家精品课程师资培训、全国高等学校计算机实验与实践教学研讨会、全国高等院校程序设计精品课程教学专题研讨会等,教师都很珍惜每一次与兄弟院校的教师、专家交流与学习的机会,教师及时把学习体会传达到团队的每一位教师,汲取其他院校的一些好的做法运用到我们的教学实践中,这些做法对促进教师的知识更新、教育理论的学习、教学方法的改进和教学能力的提高起到积极的作用,也保证了课程的教学改革能不断向前推进。

2 教材建设

C语言程序设计作为第一门编程语言课程,目前几乎所有高等学校理工科专业都在大一第一学期开设此课程。C语言简洁、紧凑、灵活,数据类型丰富,功能强大,灵活和复杂对初学者来说是难以掌握的,而原有的一些教材大多是针对计算机相关专业的学生,而且是在学习了一些计算机基础的相关课程后再学习此课程的,起点相对高,内容全面、有一定的深度。但是对本科低年级初学者来说并不适用。鉴于此,我们从2009年开始着手编写教材和实验教材,从我院人才培养目标和学生的实际情况出发,注重实践及应用,试用后于2011年出版,并于2013年修改再版,新版教材已列为十二五规划教材。作为适用本科低年级学生初学程序设计及C语言的教材,以掌握C语言基本语法、培养程序设计思维、提高上机实践能力为目标,旨在以简单明了的语言和简洁实用的例子,阐述C语言的基本语法和程序设计的基本逻辑思路。C语言的语法及使用有很多灵活和复杂的方面,对初学者来说往往难以全面掌握,所以我们只对主要的适合初学者入门的知识点进行讲解,其目的是通过C语言的学习与实践,培养学生程序设计的抽象逻辑思维能力,掌握动手编程上机实践的技能[4]。程序设计的抽象性往往使学生望而生畏。选用简单实用的例题,目的是让学生能尽快入门,并对程序设计产生兴趣,能体会到编程和调试的乐趣。

3 优化教学内容,改革教学方法,丰富教学手段

3.1 优化教学内容

对于课堂教学内容的取舍,教学团队首先从指导思想上达成共识,就是重点是编程的逻辑思维的培养,分析问题、解决问题能力的培养,而不是解释语言本身的语法细节,据此来优化课堂的教学内容。对于编程能力的培养,从具体的问题分析,特别是从贴近学生生活的实例出发,进行类比,转化,进而同化到学习者自身的已知范畴中,这也符合建构主义[5]关于学生是如何学习的理论。对于语法规则,通过实际的调试程序、验证性实验等方法,使学生有更直观的感受,印象也更深刻。我们对教学大纲进行反复讨论修订,通过教学大纲贯彻教学改革的指导思想。

3.2 改革教学方法

在课堂教学中采用任务驱动、案例教学、类比教学等启发式教学方法,从一个具体问题出发,引入要讲的概念和知识点,使得学生掌握解决类似问题的方法,注意启发学生与以前所用的方法进行比较,并在此例的基础上进行扩充,改变条件等,渐进式的展开,不断滚雪球似地拓展,学生比较容易接受,不断与已经掌握的知识进行同化。

针对下次课要讲的内容布置学生预习,每次课前鼓励学生就预习的情况作讲解,可以是预习收获,可以就疑问提问,坚持了教师为主导学生为主体的理念,训练学生自主学习的能力,对于学生自学能掌握的问题不讲或精讲,重点放在难点问题上。

建立小组学习模式,培养学生自主学习、合作学习的能力。让学生自由结合组成学习小组,3-4人为一组,每名同学轮流任组长(每月轮换),负责本小组本课程的学习讨论,上机、作业、考勤等,给每个学生同等的锻炼机会,促进后进学生提高学习的积极性,形成互帮互学共同进步的良好学习风气。

3.3 丰富教学手段

课堂教学中综合使用PPT课件、程序演示和板书等教学手段,语法规则以PPT课件为主,问题分析,算法设计辅助板书,程序验证直接运行,直观看结果,章节的开始有提示,结束有小结。避免了单纯PPT课件教学易使学生疲劳并产生课件依赖的现象,提高学生积极参与课堂教学的积极性,发挥学生学习主体的作用。

加强精品课程网站建设,充分发挥网络教学的作用。本课程已经建成为学院的精品课程,利用校园网的平台,培养学生自主学习的能力。课程网站上有丰富的教学资源,有教学大纲,电子教案,教学课件,教学视频等,实现了网上答疑,还建有论坛社区,方便师生之间的讨论交流。

组织程序设计竞赛,培养学生对程序设计爱好和实际能动性。通过每年选拨优秀学生参加数学建模比赛、ACM程序设计大赛,组织有兴趣的学生积极参与,并加以指导,培养了学生对程序设计的爱好,提高了学生解决实际问题的能力。

4 加强实验实践教学,适时安排课程设计

4.1 加强实验课的教学,培养学生实际动手能力

为加强实践教学,独立设置了C语言程序设计实验课程,每周2学时实验课,平时实验室开放,学生可以在课余时间进行上机练习。强调理论与实验并重,在实验内容上安排一些基础性的验证型实验,作为必须完成的项目,帮助学生理解掌握基本的知识点,培养学生动手能力。在此基础上布置一些具有一定难度的题目,面对能力较强的学生,提高他们的综合设计能力。

实验课后学生要撰写实验报告,实验报告内容包括以下几个部分:

⑴ 实验内容;

⑵ 算法描述(要求按照规范画出流程图);

⑶ 源程序代码(注意代码风格,必要的注释);

⑷ 测试及运行结果(包括几种算法讨论);

⑸ 调试过程(遇到的问题及解决办法);

⑹ 收获体会。

对于大学低年级的学生,通过编写、调试程序,撰写实验报告,对于培养他们严谨科学的工作作风、锻炼科技论文的写作能力都起到了积极的作用。

实验课程考核为考查,综合实验出勤情况,实验报告情况和完成实验的情况以及期末综合编程的完成情况评定成绩。

4.2 适时安排课程设计,培养学生创新意识

在学完本课程后在相关专业开设C语言程序设计课程设计课程,本课程是实训类课程,时间为一周,通过多名学生合作完成一个相对比较复杂的课题。锻炼学生的分析问题、解决问题的能力,培养学生团队协作精神,使学生了解软件开发流程、代码和文档编写规范,提高编程能力和创新意识。

课程设计的选题很重要,教学团队经过讨论精选出一些具有一定难度但可以通过学生努力完成的课题,并鼓励学生自选题目,提出切合实际应用的课题,写出分析和需求报告,有指导教师共同讨论通过,自选题目有加分奖励。如有的小组就结合学生实际生活,设计学生综合评测系统,解决他们学习生活中的实际问题,提高他们课程设计的兴趣和完成后的成就感。

在课程设计的过程中,按照正规软件开发的流程和步骤,每一个步骤完成都要提交相应的文档,最后完成时提交程序代码和完整的文档。小组成员有明确的分工,以自主设计为主,指导教师检查每个阶段的成果,并及时给予反馈意见,对难点问题通过讨论引导学生自行找到解决的办法。

课程设计课程的考核采用小组答辩的形式,每个课题由一人主要汇报演示讲解,其他成员都要求回答问题,这样既锻炼了学生的表达能力也避免了不自觉学生跟风搭车现象。

5 改革评价体系,面向实践和应用,注重过程评价

改变过去期末笔试的考核方式,全面考察编程能力、调试程序能力,推行考教分离,注重过程考核。最终成绩由平时成绩和期末考试成绩两部分构成。平时成绩由平时测验、出勤情况,作业情况,讨论发言情况等确定,期末考试采用的是无纸化网上考试系统,由系统从题库中随机组卷,以编程题为主,重点考察学生的编程能力和程序调试能力,成绩由系统自动判定。避免了过去那种靠期末突击、死记硬背侥幸过关的现象,保证了考核的客观公平,也对学生的平时学习和课堂管理起到了积极的作用。

第4篇:c语言课程设计范文

[关键词] C语言程序设计 课程教学 策略研究

一、引言

多年来,《C语言程序设计》一直是高校计算机专业的一门重要的专业基础课,很多其他的理工科专业,也在1年级开设这门课程。这门课程的主要目的是掌握C语言的语法规则,并具备一定的程序设计能力。对于没有编程经验的初学者来说,掌握结构化程序设计方法的困难相当大。与其他高级语言相比,C语言具有语法限制少,程序设计自由度大,可以直接操作硬件等优点,但这也使学习《C语言程序设计》这门课程更加困难。本文从《C语言程序设计》的课程教学策略入手,探讨了与教学效果有关的若干问题。

二、课程内容组织策略

在《C语言程序设计》课程教学中,内容组织策略对教学效果有直接影响。常见的内容组织策略有3种:滚雪球式内容组织策略、铺垫式内容组织策略、词典式内容组织策略。

1.滚雪球式内容组织策略

滚雪球式内容组织策略是先讲述问题的核心部分,然后按照问题各要点的逻辑关系,成螺旋状,由内相外,层层展开。这一过程有些像在雪地里滚雪球,雪球由小到大的形成过程,因此称为滚雪球式内容组织策略。例如某些演讲,先讲述演讲的题目,然后解释题目的含义,再举例说明,最后给听众一个思考的问题,这就是滚雪球式内容组织策略。

这种策略的特点是正向思维,开门见山,观点鲜明,讲解的始终是听众最需要解决的问题。优点是先入为主,能够预期要讲的内容,不感到意外;缺点是对复杂的问题,难以立刻让听众明白;对难以接受的观点,难以立刻引起听众的共鸣。

滚雪球式内容组织策略是在《C语言程序设计》教学中常用的内容组织策略。对于复杂、系统化的知识,需要详细设计讲述的过程。我们可以先用准确的术语直接讲解问题的核心部分,再用通俗易懂的话语解释,对于问题的其他部分,以后再按思路慢慢展开。例如,在第一节课介绍什么是C程序时,可以先讲最简单的C程序,即只有一个main函数,而且main函数也是空函数。然后向main函数中添加语句,再介绍含有多个函数的程序。

滚雪球式内容组织策略不仅适用于某一问题,也适用于一本书或一门课程的整体内容组织。例如,我们可以在《C语言程序设计》的教材前言或课程第一讲,就讲述什么是“C语言程序设计”等核心内容,而且要让学生听懂。在第一次课后的上机,就要让学生能够完成简单的程序设计。以后各讲再详细讲解编程所需要的完整知识。

2.铺垫式内容组织策略

铺垫式内容组织策略是先讲述问题的部分,然后按照问题各要点的逻辑关系,成螺旋状,由外相内,层层逼近,最后讲述核心观点。这种策略是在讲核心部分之前,先做充分的铺垫,因此称为铺垫式内容组织策略。例如有的演讲,先讲述日常生活中身边的某些现象,然后举一反三,引出不易想到的问题,再加以深刻的剖析,最后亮出自己的观点,这就是铺垫式内容组织策略。

这种策略的特点是逆向思维,在离中心论点较远的选择入口点,在讲述开始时听众不容易明白入口点与中心论点的关联,因此不能够预期要讲的内容。在引申剖析时往往出人意料,使听众恍然大悟,本来难以接受的事显得顺理成章、水到渠成,产生画龙点睛式的效果;但是在“点睛”之前可能会让听众不明其所以然,晕头转向,心急的听众可能没有耐心听下去。

铺垫式内容组织策略在《C语言程序设计》教学中有时会用到。对于某些复杂的概念、程序或例题,采用铺垫式内容组织策略比采用滚雪球式内容组织策略的教学效果更好。例如,在讲解“数组”、“结构体”等概念时,采用概念功能应用举例的顺序,不如采用应用举例功能概念的顺序讲解效果好。直接讲述概念时,不容易与前面的知识构成一个系统。我们可以先讲某些不适合使用简单变量的例子,然后分析简单变量为什么不适合,如简单变量难以大批量定义,不适合用循环结构依次处理,难以反映数据之间的内在联系,等等,再引出适合这些应用的“数组”来。这样讲解,“数组”的概念更容易被接受。

3.词典式内容组织策略

词典式内容组织策略是把问题的各个要点按某一规律排序,再按此顺序一一讲述。排序的规律是客观的,与要点的内在含义无关,不考虑听众是否容易理解。这种组织方式有些像词典中单词的组织方式,单词排列的次序是由单词的字母决定的,与单词的含义、读者是否容易理解、记忆无关,因此称为词典式内容组织策略。

在讲述那些需要让听众理解的内容时,一般不采用这种内容组织策略。如果某些概念只罗列名称,不介绍含义,可以按这种内容组织策略把这些名称建一个总表。很多教材的附录,手册性质的图书,也会采用这种内容组织策略。这种内容组织策略的优点是便于检索,缺点是不适合理解系统化的、内在联系密切的内容。

词典式内容组织策略在《C语言程序设计》教学中出现的较少。C语言的教材和电子教案一般是按照便于教学,便于读懂的原则编写的。那些没有详细展开讲的内容,往往以表格的形式出现在附录中或者正文中,如printf函数的格式字符表,常用库函数表等。某些总结性质的索引表也经常出现教材或电子教案中。

在《C语言程序设计》课程教学中,经常应该综合运用以上3种内容组织策略。具体应用哪一种,应该看具体情况,例如要讲解的问题是什么,学生的掌握情况和接受能力,教学条件,教师的教学风格等等因素,再确定详细内容组织策略。很多情况下,我们的教学方案是多种内容组织策略的组合。

三、课程教学资源分配策略

这里教学资源指理论课时、实验课时、辅导答疑、批改作业或其他耗费教师精力、学校资产等资源的因素。目前在很多高校,《C语言程序设计》课程存在着学时紧张的状况。因此,确定课程的各个环节占用多少教学资源,成为与教学效果(如考试成绩、编程能力等)直接相关的因素。在确定课程教学资源分配策略时,需要考虑学生学习能力、课程总学时、教学要求等具体情况。

按学生的学习能力,高校学生基本上可以分为A、B、C共3类学生。A类学生的特点是对本课程感兴趣,有钻研能力,有耐心,有恒心。即使得不到很好的教育条件,依靠自己的努力,也能够学会一些知识。对这类学生,不需要耗费太多教学资源,就能获得出色的学习效果。B类学生的特点是认真好学,但是自学能力差,对教师的依赖性很强。对投入的教学资源的回报率很高,在教师的精心指导下也能够取得很好的学习效果。C类学生的特点是对学习不感兴趣,一贯学习不好,自暴自弃。难以预计需要投入多少教学资源,才能达到与B类、C类学生同样的教学效果。

图1为一些常见的有缺陷的分配策略。图中横坐标(X轴)表示按时间顺序排列的各个教学环节,纵坐标(Y轴)表示需要投入的教学资源。3条水平虚线Y=A、Y=B、Y=C分别表示在各个教学环节能够让A类学生、B类学生、C类学生达到教学要求所需要的教学资源。

如图1(a)所示,当教学资源紧张时,把教学资源平均地分配在各个教学环节上是不合适的。若只分析教学资源中的理论课时,那么这时课程进度对B类和C类学生来说过快,会过早促使这些学生两极分化,大批学生在入门阶段就失去信心。在图1(b)中,在入门阶段进度过快,未入门的学生在之后的学习会很吃力。为了让他们达到教学要求,不得不投入更多的时间精力,投入的教学资源的回报率不高。在图1(c)中,在入门阶段过分重视教学效果,占用的课时太多。为完成教学计划,后面的教学环节只好草草完成,呈现出“虎头蛇尾”的现象,总体教学效果不好。

图2是推荐的几种在不同情况下的课程教学资源分配策略。在图2(a)中,大部分学生为B类学生,推荐的分配策略是:首先,尽量使B类学生达到基本教学要求;其次,使尽可能多的学生入门;再次,辅导少数学生达到较高水平。在图2(b)中,学生两极分化严重,A类学生和C类学生为学生的主体。这时推荐的分配策略是:一方面使尽量多的学生(含C类学生)达到基本教学要求,另一方面使上游学生达到尽可能高的水平。

《C语言程序设计》课程教学资源分配策略多种多样,在实际应用中应灵活变化,才能达到最佳效果。

四、结束语

针对不同的情况确定不同的课程内容组织策略和教学资源分配策略固然重要,但更有意义的是把尽量多的C类学生和B类学生培养成为A类学生。“十年树木,百年树人”,把学生塑造成栋梁之才,这对学生的一生都有长远的意义。

参考文献:

[1]谢竞博.C语言程序设计教学中的问题及改革建议[J].重庆邮电大学学报(社会科学版),2008,20(2):137-140.

第5篇:c语言课程设计范文

关键词:C语言; 程序设计;教学方法; 教学效果;教学实践

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)07-1467-02

1 概述

C语言功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高、可移植性好,兼有高级语言和低级语言的特点,是高校程序设计语言课程中的典型代表,C语言课程的教学目的是通过理论教学和上机实践,使学生了解程序设计语言的基本概念,初步掌握解决简单问题的编程思路和C语言的程序设计方法,并通过上机实践锻炼学生的程序调试能力,为后续课程的学习和应用奠定程序设计基础。因为C语言是计算机专业大一学生最先接触的程序设计语言课程,所以一个好的开始对激发学生学习专业的兴趣是必须的。

2 C语言教学中存在的问题与现状

在多年教学实践中发现学生普遍认为课程难度较大,特别是到第二学期学到函数、指针、文件,有些学生感觉越来越困难,从预习作业不能完成到实验课三道题只能完成一题,越来越失去学习的信心。还有些学生对学习C语言很茫然,不知学了有什么用。现在的学生对上网、淘宝、微信、手游、网游等感兴趣,对学习C语言觉得和现实脱节,课本的例子和完成的作业实验基本是一些简单的数值计算,所以认为C语言学了没用,也缺乏了学习动力。再加上采取的教学方法比较陈旧、单一,往往采用传统的教师讲授的填鸭式教学,学生学习缺乏主动性。教学过程以章节为纲,先讲理论知识点,在课堂上花了很多时间讲述语法、格式和注意的问题。这些书上已经很详细地讲述了。所举的例题也都是小的数值计算题,结果学生到课程设计时总感觉无从下手,设计出来的程序有一些必须的需求都没考虑到。比如做的管理系统出现数据不保存,每次运行输入数据,或者没从文件中读出原来的数据。

3 改进C语言教学的方式方法

3.1 以小游戏激发学生的学习兴趣

以前课堂举例都以数值计算为主,如求5!,输出100~200之间所有的素数,学生觉得较为枯燥,没什么意义和乐趣,所以可以投其所好,举一些小游戏的例子让学生编写并尝试。如可以用猜数、简易贪吃蛇等让学生觉得C语言学习和实践很有乐趣和挑战,这样就激发了学生学习的兴趣。

3.2 以项目驱动法培养学生的软件开发的能力

项目驱动教学法鼓励学生通过项目中涉及到的课程内容主动地提出问题,然后再去探索、寻找答案,改变仅由教师上课的填鸭式教学模式。在实施项目的过程中,将学生分成项目小组,有项目组长组织小组活动,这样既培养了学生发现问题、解决问题的能力,同时锻炼了团队合作精神。用项目驱动法来进行教学,以一个具体的项目,贯通需要的知识点,并且按照软件工程的思想,经历从需求分析到设计再到编程和测试运行的几个阶段,逐步培养学生软件开发的思想和能力。

首先要设计一个合适的项目。比如在学习函数、结构体和文件内容的时候,可以设计一个管理系统软件项目,在项目中让学生体会到函数、结构体和文件的作用比教师单纯的强调效果要好。可以选取学生能切身体会的成绩管理系统。

然后在实施的时候,先将学生进行分组,选取项目组长负责项目的执行。第一步进行需求分析,确认新系统的功能需求。学生分析后得出结论,新系统需要具有学生信息输入、增加学生、删除学生、修改学生信息、统计成绩、查询成绩、显示信息、读取文件和保存的功能。第二步进行系统设计。为系统分解成以下几个模块:

l输入初始的学生信息:其中包括学生的姓名、学号和性别以及学生的各门课程成绩等相关信息。

l查询模块:根据学生的姓名或学号查找输出此学生全部信息包括学生的各门课程的成绩。

l插入模块:插入学生,其中通过学号的大小来比较的,并且以此来排序。

l统计学生成绩模块:统计各门课程的平均分数、最高和最低分数。

l初始化模块:若有文件则从文件中读入学生信息到内存中。

l退出系统模块:首先将信息保存到文件中,释放动态创建的内存空间,再退出此程序。

系统分解的功能模块将由相应的函数来实现。项目组长可以将任务进行分配给组员来详细设计和实现相应的模块。通过这个过程,让学生切身体会函数的作用,通过一定的自学和教师的精讲,掌握函数的使用的重点和难点。

这时在设计学生的信息数据结构的时候,学生会发现和思考以往学习和使用的简单的数据类型能否较好地组织和保存学生的信息,便于教师适时引入结构体类型来解决这个问题。

在保存学生数据的时候,学生自然会思考保存在哪里,如何保存。这时引入文件的读写操作帮助学生解决这个问题。

第三步是实现。在学习了相关知识点后,学生在项目组长的组织下编程实现系统。

第四步是测试。指导学生应用相应的测试方法,设计测试用例,分析测试结果、进行相应的调试和维护。

3.3 以动画演示帮助学生理解课程难点

一些算法、概念和步骤仅由教师口头讲授,太抽象,缺乏想象力的学生很难理解,所以用FLASH制作动画将步骤演示给学生看,提高课堂生动性及学生的学习兴趣。如通过动画演示冒泡排序、选择排序、插入、二分法、递归过程、汉诺塔问题、指针、数组、结构体和链表的创建、遍历、插入、删除等操作。

3.4 以网络教学增加师生互动

可以把教学内容做成课程网站。课前上课资料,方便学生预习。学生课后可以随时查看每次讲课的内容,遇到问题可以进入网站查看资料,也可以在公告栏或讨论板问题,寻求教师和同学的帮助。还可以在网站上布置作业和收取作业,参考资料和前沿动态。

3.5 以分层教学适应学生差异

学生刚入校时的编程水平有差异,有的是没接触过编程,有的却学过VB编程,或者有的参加过中小学信息技术培训和比赛,那么如果按照统一标准教学,则有的困难很大,有的却觉得太简单没意思。针对这种情况采取班内分层教学,根据是否有编程基础和能力将学生分成A、B、C三等,在教学、实验题和作业上有一定区别,为A等学生增加难度题,为C等学生减少题目数量要求质量。可以安排优秀学生担任实验辅导员,在熟练迅速完成自己的实验后,也不必无所事事,而是帮助教师辅导学生,帮助学生调程序,在期末成绩上给予一定的加分奖励。这样既增强了先进同学的自豪感和积极性,同时减轻了辅导教师的工作量。

3.6 改革课程考核办法,开发相应的考试系统

传统的考试只有期末考试,并且只有笔试。这种弊端是学生到课程快结束时,才会感到考试的紧迫而匆匆学习,俗称“零时抱佛脚”,这对课程内容的掌握的扎实度和对后续课程的深入都是欠缺的。所以有必要改变“一考定终身”式的和单一的笔试考核方式,发挥以考促学的效果,改革考核形式和方法。将考核分为平时+实践+考试三部分,考试有期中和期末两次成绩,并且包括理论和上机两部分的考试,开发相应的考试系统,能够自动组卷和阅卷,让学生考不同的卷子,减少作弊的可能性,减少教师阅卷的工作量。平时除了考勤、作业,在单个知识点或相联系的几个知识点结束后,安排相应的小测验。通过测验和考试,不断拉紧学生学习的弦,检查自己有哪些薄弱的地方,以促进提高。

4 结论

C语言是计算机专业和相关专业的一门重要基础课程,但是具有相当的难度和枯燥性,大多数学生难以掌握,所以在教学中要不断探索总结经验,充分利用现代教学手段,激发学生的学习兴趣,灵活应用各种教学方法,这才能达到较好的教学效果。

参考文献:

[1] 孟朝霞,王琴竹,李妮. C语言程序设计课程项目教学目标建设与实践[J]. 中国科技信息,2010(4).

[2] 陈湘骥,徐东风,杨秋妹. 在线评判在C语言课程设计教学中的应用[J]. 计算机教育, 2010(3).

[3] 蒋霞. 基于CDIO理论的C语言程序设计课程改革[J]. 电脑知识与技术, 2012(27).

第6篇:c语言课程设计范文

关键词:教学创新;教学法;教学设计;教学过程

我校是隶属于“中国一航沈阳黎明航发(集团)公司”下的一所高职院校,目前社会发展对高职毕业生要求越来越高,为了跟上时代的步伐,为我国经济建设培养高素质的应用型人才。通过《C语言程序设计》课程教学中的教学创新努力提高教学质量。

一、教学创新的观念

(一)创新全面教学观

创新全面教学观。一是即要注重教书,又要注重育人,二是在教学中研究各门课程之间的联系,研究同一课程不同章节之间的联系,研究同一章节不同知识点之间的联系。《C语言程序设计》课程具有语言的特点,学习语言要先会字、词、句然后构成段落写出文章。C语言也具有C语言的字、词、句构成功能编写程序。各章是对C语言的字、词、句的详细讲解,前一章为后面章节打基础,后一章应用前面章节的知识。全面教学观培养出来的学生,理论系统,实践能力强,学的知识较实用,且具有应变能力。

(二)创新内动教学观

创新内动教学观。从高职教学的对象看,学生都是经过普高毕业或职高毕业高考后录取的,这些学生具有一定的文化基础知识,学习也有一定的自觉性。内动教学观要求教师在施教时,要从分析研究学生心理活动入手,采用适合于学生心理特点和适应能力的教学模式和教学方法,充分调动学生的学习积极性和创造性。《C语言程序设计》课程是一门能开发计算机软件的语言,实践性较强,要有一定的英文基础,一定的逻辑思维的能力。青年人好学心胜,只要教师由浅入深,循循善进,一定能提高学生的学习兴趣。

(三)教师创新意识观

创新师资是高职教学创新的基本条件,教师的强烈创新意识,是教学创新必要保证,创新师资要具有对教学进行改革创新的欲望。才能进行创新教学。创新师资要具有勇敢的创新精神,不仅意识到教学需要创新,而且积极投身于教学创新活动,在这一活动中,他们勇于排困克难,开拓进取,不达目的,誓不罢休。创新师资具有全面的创新能力,这些教师不仅具有扎实的理论基础和专业知识,以及很强的实践动手能力,而且还具有很强的发现问题和解决问题的能力。他们往往是教学创新的探索者和先行者。

二、教学创新中应用的教学方法及内容

在教学创新中应用了三步教学法:课堂教学―机房教学―实验教学。以课堂教学内容为主线,机房授课讲解实例归纳总结,机房实验加深学生对主题的理解和学生的动手能力。每步骤教学的具体内容如下:

(一)课堂教学

课堂教学:讲理论知识点,按照教学大纲提炼出要讲授内容的主线,通过分析主要实例规纳总结知识点,用问题引出法要求学生独立思考,提高学生的逻辑思维能力、理解问题的能力及解决问题的能力。

(二)机房教学

机房教学:通过课件讲授,减少写板书的时间。进入C语言编辑环境,通过演示实例,直观、形象地看知识点的应用过程,每条语句功能的实现,加深对课堂教学内容的理解。讨论讲授知识点的应用范围,提出问题进行互动。根据不同的层次的学生提出的多个问题,让学生根据老师提出的问题,不同的层次让学生做不同理解性的、逻辑性的编程练习。提高学生的实际应用能力,学生可根据自己能力练习。

(三)实验教学

实验教学:实验内容分为二部分:分析程序和独立编程。要求学生实验课前一定要预习,对于分析程序部分,学生写出分析程序的功能、程序执行过程中各变量值的变化,程序的运行结果。对于独立编程部分,学生根据问题要求给出解决问题的方法做编程练习。

三、教学创新中教学过程的设计

(一)讲授教学设计

无论是在教室讲课,还是机房讲课,每次上课开始,先讲本次课重点主线,抓学生的注意力,对重点内容一次讲授,多次强调,多次练习,给出学生一些思考时间、练习时间、理解时间。对于难点内容的分析讲解,根据学生理解情况和时间安排决定深度。对于非重点内容,为了使所传授的知识有个完整性,扩大学生的知识面,要抓住基本概念讲,高职教育按照专业学习的要求,以必须和够用为度,以实际应用为重点。

机房授课先讲授知识点的应用,每次还要提出一个问题及要求,让同学们上机实践,时间要灵活掌握。有时课堂教学讲的重点内容,同学难理解的,也应在机房授课时抽出一定的时间演示讲解。

(二)实验教学设计

实验教学重点验证学生的分析能力、逻辑思维能力和实际应用能力。对难理解的实验内容通过演示相似例子讲解,通过演示和练习,力求学生掌握实验的主要内容,实验教学过程重点抓辅导到位和检查监督到位。提高学生的实际动手能力。

(三)辅助教学设计

认真制做生动活泼、重点突出的教学课件,对学生作业详细批改,重点总结,统一解答与各别辅导相结合,要求学生一定要各章的知识点。

四、教学创新课堂教学过程举例

(一)讲授教学重点主线

课堂讲授教学重点主线,例如:讲C语言程序设计的第五章:函数。先讲授本次课的主线:函数的定义,函数的调用、函数的声明。这三点为本次课主线,展开讲函数的定义格式并做具体说明;函数声明的作用及位置,通常什么情况下可以省略函数声明;函数的调用的三种形式,通过分析例题,分析主函数中调用子函数采用的调用方式、及传递的参数。讲函数的具体应用过程等内容。

(二)根据主线提出问题

给出问题:定义一个比较二个数大小的函数,解决输入多个数据,完成输出最大值的问题。用什么样的调用方式实现从输入的三个数或四个数中找出其中的最大值并输出?要求学生自己去定义一个函数,自己决定采用什么方式去调用函数,实现程序功能。

(三)学生对问题的求解及验证

根据不同层次的学生,给出不同的问题,提出不同的要求,让学生们自己选择解决问题的方法,练习编写程序。对于理解能力强的学生,完成从输入的四个数中找出其中的最大值并输出。差一点的完成从输入的三个数中找出其中的最大值并输出。再差一些学生的完成从输入的二个数中找出其中的最大值并输出。并要求上机实现。学生一定要掌握函数的定义,函数的调用的正确形式及使用。

五、总结

高职学院的教学创新不但要有创新观念,必须具有创新师资。创新师资是高职教学创新的必要条件,没有创新师资,高职教学创新将是一句空话。教学活动是由教师来完成的,教学创新理所当然地要由教师来进行的。因此,作为高等职业技术学院的教师,我深深的体会到要进行教学创新,必须从我们每个教师做起,教师要有强烈的创新意识,勇敢的创新精神,全面的创新能力,还要积极实践,才能全面实现高职院校的教学创新。才能尽快培养出具备一定专业基础理论和专业知识,具有较强的实践技能,面向生产、管理和服务的高技能应用型人才。

参考文献:

第7篇:c语言课程设计范文

关键词:C语言程序设计;任务型教学;教学评价

学习任务单是任务驱动式教学的一种表现形式,是一种以“做中学”为主的教学方法[1],让学生在自主完成任务的过程中学习和获取知识及技能。这一教学方法的教学效果判定不能仅仅靠成绩决定,要利用教学评价进行更客观的判断。教学评价在教学过程中发挥着从整体上调节、控制着教学活动进行的作用。本次课程中,笔者利用教学评价来验证学习任务单对于C语言程序设计教学效果起到的作用。在本研究中,C语言程序设计是一门选修课程,这门课程的授课形式分为理论课和上机课。

一、基于学习任务单的C语言程序设计课程的教学评价及其必要性

(一)学习任务单与教学评价相结合

C语言程序设计是一门实践操作性比较高的课程,而传统的教学方法则是理论大于实践的“纸上谈兵”[2]。本研究利用学习任务单的教学形式使知识与技能并重,更注重学生的实际操作能力,改变了原有的由“教为主、学为辅”的上课模式。传统的教学评价方式往往是以一次期末考试成绩为决定性因素,成绩的高低不仅代表着教师的教学水平也是学生学习能力、学习效果的结果,这种片面的评价方式忽略了师生在教学过程以及学习过程中的表现。在本门课程中导入学习任务单,让学生独立自主学习,教师进行适当引导,是一种更加注重学生学习过程的体验、在“做”中学的教学方式[3]。因此,教学评价的方式应该与学习任务单相结合,期末成绩定性质的教学评价方式不适用于本次研究教学过程的评价[4]。

(二)教学评价的必要性

客观、公正、科学的教学评价会对课堂、学生及教师产生非常重要的影响。教学评价的结果可以对教学过程起一个诊断、总结的作用。教师通过获取反馈信息可以了解教学各方面的情况,判断教学质量和水平,并对教学成效和教学短板进行分析、反思,从而做出调整,不断改进和完善任务单的设计。而学生在完成任务单的过程中可以体验解决问题的成就感,建立兴趣,提高自信心,进一步激发内在的潜力。

二、基于学习任务单的C语言程序设计课程的教学评价方式

学习任务单贯穿了整个学期的教学活动,对本次课程的教学评价,从一定程度来说,就是评价基于学习任务单的教学效果。对于这一形式的教学方式,形成性评价则是最佳的教学评价方式。形成性评价是一种根据学生平时学习过程中的行为表现、最终的学习成果以及在学习过程中呈现出来的学习态度、学习习惯、学习方法等做出评价的一种教学评价方式[5],其最终目的是为了能够有效帮助学生学习,最大效能地管理学习过程,激发学生学习的动力以增强自信心,有效地培养学生自主学习的能力与合作能力,提高教学效果、改善教学过程。这与通过导入学习任务单的形式所要达到培养学生自主学习能力、科学高效的学习方法与习惯、提高课堂教学效果的目的相一致。本研究是基于任务型教学的教学方法展开的课程研究,采用形成性评价的教学评价方法既符合了对学生学习过程持续观察的基本要求,也符合了科学性、导向性原则。

(一)课堂情绪观察法

观察法是最直观、也最能从细节之处发现学生情绪以及行为上的变化的方法。在上机操作课中,总体观察学生在收到任务单时的表情、肢体行为,感受学生情绪的变化;再从学生个体入手,仔细观察其面部表情,比如略有惆怅、较为严肃的面部表情,可能代表任务单对该学生来说有一定的难度;如果打开任务单是无所谓、毫无思考的表现,可能该学生存在着对此学习任务单或者学习方式甚至是本门课丧失兴趣与动力的情况,这种情况需要特别关注。由于开设本门课程的班级的人数较少,完全可以做到观察每个学生。

(二)任务完成度与“QQ档案袋”相结合

学生在完成学习任务单时的表现以及完成学习任务单的结果都是教学评价的重要内容和依据。如果完成学习任务单较为轻松、不用查阅资料,可能就意味着任务的难度系数较低,并不能实现对知识技能的拔高。学习任务单的完成情况将从两个方面进行分析,一是数量,任务完成的多少反映了学习任务单任务量的制定是否合理;二是质量,质量的好坏很大程度上体现出任务的难易度、精准度以及是否适合学生。此评价都是以大多数学生为相对参考。如果个别或少数学生未能完成学习任务单,可能是学生的个体差异性导致这一现象。反之,大多数学生都未能达到完成任务单的标准,这反映出设计的学习任务单存在问题,需要进一步完善和改进。“QQ档案袋”是指将档案袋评价方式与现代信息技术相结合,利用大众使用的网络平台腾讯QQ所建立起来的一个集沟通、收纳、保存于一体的网络档案袋。QQ群,为学生讨论和解决问题提供了平台,也为教师提供了一个了解学生情况的途径。学生将完成的学习任务单通过QQ平台发送给教师,以此作为评价的依据和内容。学生在各自小组的QQ群里讨论小组作业(教师在每一个小组的群里),作业是以PPT的形式进行汇报展示,同样是QQ备份,教师可以以“QQ档案袋”的形式了解学生的情况。

(三)学生自评与教师评价相结合

现代教育注重引导学生在教学过程中发挥主体作用[6],让学生参与教学评价的过程之中是发挥学生主体作用的一个重要表现,在新形势下,学生的自我评价是整个教学评价中不可缺少的一部分。每一个学习任务单后都有自我评价环节,学生在完成本次任务单后需要对自身的学习情况进行评价。评价整体上包括两大模块的内容,一是学习内容方面的自评,包括知识方面如函数的基本概念等、技能方面以及能力方面。在能力方面的自评中,主要体现的是学生能否完成拔高型、提升型的任务。二是在小组作业中,学生对于自己做的工作及付出、参与度进行自评。让学生对自己的学习过程、学习方式、学习效果以及在学习过程中的感受、体验等进行反思和评价。教师对学生完成的学习任务单以及小组作业汇报展示情况进行评价,在此环节中,教师评价与学生自评相结合,实现了生生、师生之间的交流与互动。

三、结语

教学评价是教学活动中必不可少的一个环节,通过对学生完成任务情况的分析,不仅可以反映出学习者对知识点的了解和掌握情况,而且能够比较精准且客观地反映出学生的实际操作能力,有利于教学目标的实现和改进。基于学习任务单的教学评价,主要是根据学生在完成学习任务单时的实际表现来反映学生知识与技能的掌握水平,因此,教学评价要能有效地判断每个学生学习任务完成的真实情况以及学生的潜力所在,判断学习任务单是否有益于树立学生的自信心,是否能够培养学生的自主学习能力,增强学生继续向上的动力。

参考文献:

[1]杨维东,赵娟.基于建构主义理论的“任务型、互动式”教学模式研究:以非英语专业硕士研究生英语课堂教学为例[J].外语教学,2011(5):56-60.

[2]邓晓云.新课标背景下任务型教学模式初探[J].新课程研究(基础教育),2010(5):45-46.

[3]佟玉洁.任务驱动教学法在高职《Photoshop》教学中的应用研究[D].济南:山东师范大学,2013.

[4]张凌.基于多元智能评价观构建大学英语多元评价体系[J].辽宁公安司法管理干部学院学报,2010(2):91-93.

[5]王瑜.基于多元智能理论的学生评价研究[D].开封:河南大学,2005.

第8篇:c语言课程设计范文

关键词:精品课程建设;教学改革工程;C语言程序设计

中图分类号:TP434文献标识码:A文章编号:1672-7800(2013)006-0189-02

基金项目:黑龙江省高等教育教学改革项目(JG2201201256)

作者简介:高巍巍(1976-),女,硕士,黑龙江外国语学院信息科学系讲师,研究方向为软件工程、数据库、教学管理。

0引言

教育部于2010年颁布了我国精品课程建设的评审体系,该体系面向高职、高校本科和研究生等多个层次,涵盖了几乎所有的教学学科。精品课程建设评审体系要求各教育机构结合自身特点,规划符合自己学校办学理念和学生实际情况的精品课程教学改革方案[1]。《C语言程序设计》是计算机专业的一门重要课程,是学习计算机编程的基础课程,黑龙江外国语学院信息科学系通过多年的教学研究和教学实践,将其打造成为学院精品课程体系中的重要课程之一。

1精品课程建设思路

C语言程序设计作为计算机专业学生的专业基础课,为学生学好程序设计和编程思想的形成起着重要的作用。笔者所在院系为了响应教育部建设精品课程规划和倡导质量工程的新教学理念,组织教师总结多年的教学经验,并根据目前最新的人才需求,对《C语言程序设计》进行教学改革实践,完成精品课程的建设。

以往的C语言课程教学普遍存在如下几个问题:①教学内容复杂、难以理解,无法兼顾基础各不相同的学生;②知识体系庞大,授课学时不足;③教材建设和教师知识结构很难适应C语言的最新发展和社会对人才的要求。针对上述问题,笔者所在系(以下简称我系)根据应用型人才培养目标的定位和通过校企合作企业了解到的用人需求为依据,经过反复研究和探索,总结出一套涵盖教师队伍建设、课程内容、教材建设、教学方法和手段等方面的精品课程建设体系,该体系与学校的应用型人才培养策略和优秀教师团队建设的总体要求相对应。

根据精品课程评审体系的要求,我系首先对C语言程序设计的教学体系进行改革,不再采用照本宣科、直上直下的传统教学路线,提出了三步走的教学方式:

第一步是基础知识普及,把C语言中的所有概念按照编程思想涉及范围集中进行讲授。这部分内容大概占总学时的六分之一,目的是在进行进一步的学习之前,消除因为教育背景和知识面不同而造成的学生基础的参差不齐。教师要根据最新的技术发展和用人需求,详细介绍日后程序设计和编程开发中遇到的重点难点问题。这样做的目的是为了让学生了解C语言、喜欢C语言。所以课后习题和上机实验环节的内容要丰富而有趣,教师也要积极调动学生的学习主动性。

第二步是进阶学习阶段,这里采用项目式教学手段,用一个或多个贯穿C语言程序设计和开发整个流程的项目为主线,讲授编程思想相关的教学内容。这里要强调的是思想的形成,比如面向对象、软件工程和网络编程思想等,这些对于学生养成良好编程习惯和计算机思维都有很大的促进作用。这部分的学习是对学生编程技能的提高过程,所以教师在完成教学内容的同时,还要讲授包括软件健壮性、系统测试以及程序优化等相关软件设计和开发的重要内容。这部分的教学活动占总学时的二分之一。这个步骤中学生应成为课堂教学和实验教学的主体,让他们自己通过实践把所有教学内容都融会贯通,教师要做好答疑解惑的工作。

第三步是课程设计阶段,将学生按照知识掌握情况组合成若干小组,每个小组设计和实现一个小型软件系统。课程设计的内容要包括前两部分的知识点和重要编程技术,并要能体现系统的软件开发生命周期。这部分的教学活动占总课时的三分之一,目的在于为以后的程序设计相关课程打好理论和实践基础。这部分的教学活动应全部由学生完成,他们以小组为单位共同讨论协商包括需求、设计、开发、测试、版本控制等软件设计的各个环节。最后提交的除了具有可运行程序之外,还需要有完整的软件开发文档,这些程序和文档要在最后的课程设计评审中供所有教师和学生评价,最后打出分数,计入最终的课程评分中。《C语言程序设计》精品课程建设课程体系“三步走”示意图如图1所示。

2精品课程建设实例

教育部对精品课程的定义是具有一流教师队伍、一流教学内容、一流教学方法、一流教材、一流教学管理等特点的示范性课程。借助现代计算机网络技术,精品课程的相关资料和方法将在网上公开和共享,实现教学资源的共享和共建。精品课程资源作为优质的教学资源,是提高教学效果和办学质量的重要基础内容。

我们认为,精品课程建设首先要有明确的定位,要符合所在学校的办学理念,适应社会的发展和科学技术的变革,并在教学实践中不断发展进步。要逐步形成一套科学完整的课程体系,包括教学内容、教学方法、教学手段和考核方式的改革。不但要有知识的教育,更要体现对学生认知能力的培养,培养他们自主创新的能力。同时通过精品课程的建设,形成一支优秀的教师队伍。还要研究如何建设和利用网络支撑环境,促进课程建设,利于通过网络共享教学资源。

2010年颁布的精品课程评审体系分为5大体系指标,若干分支指标,其中教师队伍建设和课程内容设计是最重要的指标[2]。精品课程评审体系示意图如图2所示。

2.1教师队伍建设

精品课程的核心内容就是建设一流的教师队伍、一流的教学内容和教学方法、一流的管理模式等,可见教师队伍建设是精品课程建设的重点。目前我系《C语言程序设计》教学组有教师5名,包括3名讲师、2名副教授。教学组5人均为硕士以上学位,年龄结构也是以中青年教师为主,具备知识结构快速更新的特点。任课的教师都具有国内知名学校相关专业的研究背景,并都有兼顾学术研究和技术应用的人才素质。在总结以往经验和不断探索中,我系采取了一系列有利于教师队伍建设的措施。

(1)集体备课。主要采取群策群力、以老带新的形式,组织教师进行学术调研和讨论的活动。教师之间可以畅所欲言,在介绍自己教学经验的同时把自己解决不了的问题提出来供大家讨论解决。这种传帮带的形式可以很好地帮助年轻教师适应岗位。

(2)教学研究。鼓励教学研究,年轻教师可以根据最新的教学理念自己探索和总结研究方向,把研究成果作为补充教学内容的主体。并组织年轻教师进行定期培训,不断提高他们的理论水平和授课能力。

(3)良性竞争。组织教师参加教学大赛,通过比赛发现自己的不足和他人的优点,取长补短。

(4)督导观摩。为了让年轻教师尽快地适应岗位,学院安排了由老教师组成督导观摩小组,以听课和公开课的形式指出他们的不足,帮助他们尽快成长。

(5)考察进修。安排教师参加国内外各类相关学术会议,进行卓有成效的学术和教学交流活动。通过教学交流,我系在学习国内外知名院校的教学经验之后,引入了任务驱动式教学等先进教学方式,取得了良好的教学效果。

(6)教材编写。为了让教材的内容符合我系的精品课程建设体系,组织教师编写相关的授课教材和实验指导书。

2.2课程教学内容

《C语言程序设计》课程的教学内容,是在充分考虑了学生基础、学校人才培养目标定位、社会人才需求等多个因素之后制定的。教学内容强调实践教学的重要性,让学生边学边练,以战代练,在知识学习的基础上,养成良好的程序设计习惯和思想,具体的做法如下:

(1)任务驱动教学。教学的目标明确,根据学时要求将课程分为48讲,每个阶段的学习都有一个教学目标,所有的教学内容和课堂活动都围绕这个目标展开。

(2)应用性教学。为了贯彻学院应用型人才培养的教学理念,教学内容要做到少概念和公式,多思想和技巧,把培养学生的思维能力和实践创新能力作为教学的主要目标。

(3)情境教学。教学内容要丰富有趣,可以通过创设任务情境的方式展开教学内容,激发学生的学习主动性。例如:在讲解二维数组的定义和引用时,在问题深化部分,为了讲解二维数组的应用,我们创设情景,举例如下:做一回黄蓉,帮靖哥哥填九宫图。为逃避裘千仞的追杀,靖哥哥背着黄蓉逃进瑛姑的住所,瑛姑出了一道难题,要求靖哥哥将1~9这9个数字填入九宫图中,使得横向、纵向、斜向的数字之和均为15。通过这样的问题描述,学生的兴趣马上就被调动起来,课堂活跃有序,教学效果自然会好。

(4)边学边练。教学组编写了同步训练指南,根据每个教学章节安排练习内容,分为基础训练和能力提高两种,学生可以根据自己的学习情况自主选择。同步训练的内容都是根据实际的程序设计内容和部分计算机二级题目制定,让学生在学习之后可以有一个好的复习和能力提高过程。

(5)实践教学。作为精品课程建设的重点之一,实践教学必须得到足够的重视,实践教学环节占总学时的三分之一。实践教学包括上机实验和课程设计两部分,上机实验根据我系教师参于编写的《C语言程序设计题解及实验教程》进行,共分为12个实验,每个实验分为:实验目的、重点内容提要、实验示例和实验内容4个环节。实验前,要求学生预习实验,填写分析结果;实验后,填写运行结果。避免学生上机盲目性;课程设计则是安排学生组成若干个小组,每个小组都有各种能力水平不同的学生,让他们互相学习和讨论,让落后的学生尽快赶上来。这样不仅培养了编程能力,对于团队精神和软件开发思维的形成也有很大帮助。

3结语

C语言程序设计精品课程建设中关键问题探究是建设好精品课的灵魂,有了思路,在实践中就有了一个方向,在精品课程建设中才能取得一个好的效果。随着我国新教育改革的展开,会有更多更好的精品建设思想出现,需要我们广大教育工作者好好学习和总结,真正把教学改革工作落到实处。

参考文献:

[1]张丽萍,刘东升.程序设计精品课程建设的研究与实践[J].内蒙古师范大学学报:教育科学版,2007(1).

第9篇:c语言课程设计范文

从领到书的那一刻,我就很郁闷,《C语言程序设计》到底事学什么的,有什么用。刚开始上课时,还在迷茫这门课程是用来做什么的。不过,这些感受都是在对这门课程不了解的情况下产生的。后来慢慢的接触多了,听老师讲的多了,了解多了,渐渐的产生了兴趣。尤其是学到语句和函数时,上机操作程序,经过编译,调试和运行后,出现界面,当时觉得很好奇,想真正的学好这门课程。通过半个学期的学习,我掌握了基本知识。

下学期开始时,被通知要进行三周的课程设计。当时有点懵,感觉学的东西很少,很零散,不知该怎么练到一起,就要课程设计,是不是太难为我们了。

第一天基本上都是在看书,把基本知识再熟悉一边。到了下午的时候,老师发过来三道练习题,从这几道练习题上我得到了不少启发,然后我们组把整个程序的思路理清了,开始着手写程序。

第一周结束的时候,我感觉自己收获挺大的,从一开始的迷茫,不知道从何下手到把程序中的几个模块编写出来,心里挺开心的。但是,到了第二周,我们由不得不再次陷入困境。在整个程序的编写过程中。最难的就是修改和删除这两个模块,这也是我们第二周要解决的重点问题。

开始编写修改和删除时,很头疼,去向其他人寻求帮助,在别人的帮助和提示下,我编完了修改程序,但编译时老出错,修改后的内容将文本内的信息全部覆盖了。困难之时,我们组的其他人,帮助了我,完成了修改和删除。这样的话,整个程序基本上全部完成了,就剩下完善工作了。我们组写了两个程序,最后,两个程序相互组合,互补,大功告成

虽然设计时完成了,但是我觉得其中还是由一些不足之处:

1.警告句。程序中缺少一些警告句,例如:“是否真的删除(y/n)?”。

2.重名的情况。由于考虑的不周全,没有设计遇到重名的情况该怎么处理。

3.选择单一。我们设计的程序中,只设计了按名字选择,进行操作,忽略了重名的情况。