HI,欢迎来到学术之家,发表咨询:400-888-7501  订阅咨询:400-888-7502  股权代码  102064
0
首页 精品范文 c语言教学论文

c语言教学论文

时间:2022-04-22 09:29:50

c语言教学论文

c语言教学论文范文1

1.1理论教学

对于大多数课程而言,从宏观上将课程知识点及其关联讲授给学生非常必要,这便于学生更加系统深刻地理解所学内容。作为教材讲解C语言程序设计的知识点结构。知识点之间的关联可以层层细化,教师首先从宏观上给学生介绍C语言程序的整体组成结构。教师对涉及的知识点进行归类,共包含预处理命令、数据类型、运算符、语句和函数等5部分,从宏观上梳理C语言与程序设计课程的知识点是非常必要和重要的,这样可以避免学生“只见树木,不见森林”,最后只学到一堆零散的知识点,只有从宏观上把握各个知识点在知识体系中的位置和作用,才能学得深、记得牢。对于程序语言课程,如果仅仅介绍语法的运用,学生往往对知识点理解不深刻。我们在教学实践中的体会是:在讲解C语言语法的基础上,适当地剖析编程语言在计算机中的运行机制,会让学生的理解更加透彻。因此,我们的课堂教学方法分为如下两部分。

1)课件讲解。课件讲解包括两部分,即知识点要点总结和知识点运行机制剖析。知识点要点总结就是告诉学生该知识点如何使用;而知识点运行机制剖析则告诉学生该程序在计算机内存中的执行过程。由于绝大部分高校在开设C语言程序设计之前都会开设计算机文化基础等课程,因此学生有足够的计算机基础知识来理解C语言程序的运行机制。

2)实例演示。作为一门编程语言,C语言需要在实践中理解和掌握,因此,课堂教学中,在具体的编程环境(如VC++6.0)下演示十分必要。通过在具体的软件环境下编程,告诉学生应该做什么和不应该做什么,并总结该知识点的注意事项。相比传统的脱离编程环境,只在PPT或黑板上进行板书的教学模式,该方法的教学效果要好得多。在课堂教学中,具体的教学步骤如下:①使用PPT或者板书列出该知识点的注意要点;②在编程环境(如VC++6.0)下演示该知识点的用法,给出正确的和错误的使用方法,并进行对比;③通过幻灯片动画或Flas等形式演示程序在计算机内存中的执行过程,让学生更加深刻地理解程序的运行机制。

3)教学难点与重点——“复合知识点”。从C语言的教学内容来讲,数组、函数和指针是教学的重点章节,这些章节之间相互关联的部分又是重点中的难点,如数组和函数结合,数组名做函数参数,数组和指针结合,指向数组的指针变量,函数和指针结合,指向函数的指针变量等。在教学过程中要反复强调各个知识点的注意事项,如果基本知识点能够理解透彻,上述难点内容也就迎刃而解了。

1.2上机实践教学

在实践教学中,教师可以通过实际教学案例循序渐进地强化学生对C语言知识点的理解。上机实践的教学内容通常分为两部分:基本知识点练习和综合训练。首先通过基本知识点的练习,让学生掌握该知识点的使用,即巩固课堂所学内容;然后通过一个综合性的大作业,训练学生综合应用C语言知识点的能力,例如,通过编写“学生课程成绩统计系统”考查学生对数组、结构体、指针、函数、文件等知识的综合掌握情况。对于初学编程语言的学生,往往没有养成良好的编程习惯,出错的可能性较大,而出错之后进行调试又将耗费较长的时间,这势必对学生的学习热情产生负面影响。因此,一开始就给学生制定科学的编程步骤和规范,使学生养成良好的编程习惯,将大大减少程序出错的可能。下面是按照上述五步编写的一个完整的C语言程序,用来比较两个整数的大小。按照上述五步进行编程,经过一段时间的训练之后,学生出现语法错误的可能性大大降低,此时学生更多的精力将集中在程序算法的设计和实现上。

1.3考试形式

对于C语言程序设计的考核方式,我们采用知识点考核和编程实践相结合的方式。知识点考核偏重于C语言基本语法,用于检验学生对知识点的掌握是否全面,此项考核约占总成绩的40%;编程实践考核用于检验学生的实际动手能力,学生将在规定的时间内根据题目在机器上编程,此项考核约占总成绩的60%。为了实现知识点的考核,我们将考试与计算机二级C语言上机考试紧密结合,采用题库平台进行上机考试,学生直接在机器上答题并提交,知识点考核多采取客观题,如填空题、程序修改题以及读程序题等,编程题在实战编程中考核。C语言程序设计课程的重要特点就是实践性强,学习该课程的目的就是为了编写程序。因此从考试的角度讲,进行编程实践是最合适的方式,通过上机编程来考核学生的学习情况也是最公正和客观的方式。

2C语言程序设计教学实践结果分析

中国矿业大学(北京)每年都有40多个班级同时开设C语言程序设计课程,因此该课程教学质量的高低将直接影响全校理工科学生对C语言的理解和掌握。中国矿业大学(北京)C语言程序设计教学团队经过长期的探索总结出一套行之有效的C语言教学方法,我们将上述方法在学校越崎实验班中进行了试点。如图2所示,采用上述教学法的越崎实验班的C语言程序设计课程考试成绩要明显好于其他班级,其中90分以上的学生占10.7%,80分以上的学生占总人数的53.6%。另外,学生的学习积极性比采用上述方法前得到明显提高,很多学生都对计算机编程产生了浓厚兴趣,实践证明我们提出的上述方法是行之有效的。

3结语

c语言教学论文范文2

关键词 高职高专 C语言 可视化 教学目标 可视化教学

中图分类号:G424 文献标识码:A

1 C语言和可视化基本内涵

(1)C语言是一种计算机程序设计语言,主要包括汇编语言和高级语言,因而C语言具有汇编语言和高级语言的双重特点,C语言可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖于计算机硬件的应用程序。C语言是一种通用的、过程式的程序语言,广泛应用于各个领域的系统与应用软件的开发,具有高效、灵活、功能丰富、表达力强和较高的移植性等特点。随着微型计算机的普及和发展,C语言已经成为世界上使用最广泛的、最流行的高级程序设计语言之一。C语言具有可移植性、较高的绘图能力和数据处理能力,广泛适用于三维、二维图形和动画,是数值计算的高级语言,因此,C语言也广泛地在国家教学活动中应用,形成一种C语言教学课程,成为了国家计算机等级考试中计算机二级考试下的一个考试科目,也是高职高专学校教学课程中的一部分。①

(2)可视化(英文称Visualization),是利用计算机图形学和图像处理技术,将数据转换成图形或图像在屏幕上显示,并进行交互处理的理论、方法和技术,可视化已经涉及到计算机图形学、图像处理、计算机视觉、计算机辅助设计等众多领域。是一种数据显示、数据处理和决策分析等一系列的综合技术。可视化最早应用于计算科学中,并形成了一种新的可视化技术—科学计算可视化技术,科学计算可视化能够把科学数据、测量数据、图像,以及计算机产生的数字信息直观地显示出来,方便于观察、模拟和计算,科学计算可视化已经广泛运用于教育等众多领域中,在高职高专教学中发挥了很大的作用。

2 C语言课程在高职高专教学中存在的教学问题及其建议

(1)C语言是一种通用性的计算机程序设计语言,而且C语言已经成为我国国家计算机等级考试中计算机二级考试下的一个考试科目,是计算机专业的主要教学课程,也是非计算机专业的教学工具,在高职高专教学中得到了很好的实践,取得了很好的效果,C语言课程教学模式不仅培养学生程序设计方面的思想,也为学生学习其他科目奠定了的基础,也为计算机专业学生提供了基础性理论知识,对高等高专的教学发展和水平的提高有很大的促进作用,但仍存在一些问题:

第一,理论知识教学和实践教学脱节,由于理论知识教学和实践教学分别安排,以及教师、教学地点不同,使得理论知识不能更好地指导实践,也使得实践过程中缺乏理论知识,从而导致C语言教学无法得到更好的掌控;第二,学生基础差,学习积极性和学习动力不高,自信心不强,由于C语言的内涵要求学生具备计算机硬件的基础性知识,学习复杂的C语言概念和语法规则,而且要掌握C语言的高级语言、数学算法、数据结构和程序设计等多方面的知识,使得学习难度比较大,学习内容比较抽象,从而使得基础差的学生学习积极性不高,学习动力也不强,进而不利于C语言教学课程的开展和教学任务的实现;第三,课堂教学的效果不高,不良学习习惯频繁出现,由于高职高专的学生基础差,需要教师在课堂上更加细心地施教,但很难照顾到每一位学生,导致出现抄袭、作弊、替考等不良的现象,使得C语言理论课堂的效果不高教学效率也不高,从而导致C语言教学的实践环节与理论知识脱节,从而不利于C语言教学水平的提高。

(2)针对高职高专存在的一些C语言教学问题,经过分析原因,提出了一些有效的解决方法和建议,从而有助于提升C语言教学的教学效率和效果,进而提高C语言的教学水平。第一,激发学生的学习兴趣,提高学生的学习主动性,由于C语言本身的难度,使得C语言教学课程比较抽象,为了激发学生的学习兴趣,要把复杂难懂的程序简单化、具体化、生动形象化,通过展示C语言发展历史和实践成果,使得学生主动学习C语言,从而提高学生的学习积极性,增强自信心;第二要鼓励和支持学生的C语言实践活动,以身作则,采用亲自演示教学方法,从而增强学生的动手能力和解决问题的能力,进而提高教学的效率;第二,要采用由浅入深、循序渐进的教学方法,因材施教,根据学生的特点变化教学的进度,随着学生的学习情况来增加教学的难度、深度,可以采用问题启发式、引申法、框架法、求同存异等相结合的教学方法,同时要重视C语言的实践环节,要理论结合实践,进而提高教学的水平和效果。

3 目标可视化教学方法在高职高专C语言教学中的应用

目标可视化是通过利用可视化技术的一种现代化教学模方法,在学习过程中,学生都有自己的成绩目标,都希望获得较好的成绩,这是学生学习的动力,学习目标的实现是提高教学水平的关键,目标可视化教学方法在教学中有重要的作用,主要体现在学生的主观心理和客观行为两个方面的教学活动。

第一,目标可视化教学方法可以调整学生主观心理状态,提高学习的积极性和心理素质,增强自信心。人文心理学家罗杰斯认为“人类自出生起就具有学习愿望和潜能,这是一种值得信赖的心理倾向,它们可以在合适的条件下可以释放出来,当学生了解到学习内容与自身需要相关时,学习的积极性最容易激发”。第二,目标可视化的教学方法可以促使学生主动动手和主动实践,发挥潜在的能力,提高学生课堂学习的效率。美国行为派心理学家马杰认为,教学目标应该遵循“学生能做什么以证明他的成绩,以及教师怎样知道学生能做什么”,由此可以看出,教学目标应该是内在的能力与心理情感的变化,学生内在的心理情感变化来可体现外在的客观行为,据此制定教学目标和学生的成绩目标,在C语言教学中,目标可视化教学方法就可以把复杂的教学内容简单化,使得教学目标转化为一种可实现的、可实际操作的行为,从而促进学生学习热情的产生和高涨,激发学生的潜能。

4 结论

C语言课程是高职高专学校计算机专业的一门基础性课程,是该专业学生的第一门计算机语言课程,该课程对学生的后续学习程序设计提供了重要的理论知识基础。目标可视化教学方法是在计算机技术基础上不断发展而形成的,是一种现代化教学方法,它在C语言课程的教学中得到了广泛的应用,促进了学生的学习能力和效果,也提高了高职高专学校C语言教学的水平,更为国家培养了计算机程序设计专业的人才,造福了人类。

云南省高等学校教学改革研究项目:基于CDIO模式的《数据结构》课程教学改革

c语言教学论文范文3

关键词:双语教学;程序设计语言;教学质量

DOIDOI:10.11907/rjdk.171166

中图分类号:G433

文献标识码:A 文章编号:1672-7800(2017)006-0222-04

0 引言

国际通行的双语教育基本要求是:在教育过程中有计划、有系统地使用两种语言作为教学媒体,使学生在整体学识、两种语言能力以及这两种语言所代表的文化学习及成长上,均能达到顺利而自然的发展[1]。在这里,第二种语言是教学手段而不是教学内容或科目[2]。

双语教学的目标具有双重性:①对本科生开设双语教学,可以培养英语口语、阅读英语教材、英语资料和英语文献的能力,为进入研究生学习打下基础;教师可通过双语教学,培养和锻炼阅读和撰写英文paper的能力;②双语教学的目的是帮助教师更好地传输学科知识,学生更容易地接收学科知识。

1 C语言双语教学现状

计算机类课程中,最适合双语教学的课程是计算机语言课程,学生一般最先接触的是C语言,理工类专业课程中讲授最多的也是C语言。

C语言本身就采用英语格式,这是此课程作为双语教程的最大优势[2]。学习C语言语法时不需要进行汉语翻译,只需对其英文本意进行直译,这是这门课程和其它非语言类课程的最大区别,也是其开展双语教学的主要原因。

计算机程序设计的知识源自国外,实施双语教学势在必行。如C语言的圣经《The C Programming Language》,《Thinking in C》,没有英文基础也可接收知识,但根本无法真正领会程序设计思想的精髓。因此,C语言实施双语教学,结合各种程序调试来加强对英文程序内容的理解,才能引导学生理解C语言程序设计的语法、逻辑和算法意义。

C语言开展双语教学已有多年,取得了一些成绩,但多停留在课堂理论知识上,对以下几个问题缺乏深入思考:①双语教学时第二语言的比例是多少?②双语教学中学生的英语水平和计算机水平如何?③虽然理论课采用双语教学,但实验环节如何理解英文的相关提示等信息?④双语教学内容选择是否合理?⑤双语教学如何设计实施?

2 C语言双语教学设计

C语言语法和程序设计思维是学科知识,双语是手段和方法,有效利用英语服务于C语言教学对教学效果影响很大。通过对上述5个问题的深入思考,以笔者学院开设的《C程序设计》双语课程为例,设计并实施了“多维”C语言双语教学模式。

C语言的教学设计应具备以下几个基本条件:①授课教师非常熟悉双语教学内容,能用英语交流程序设计方法;②学生具备一定的英语听说读写能力;③学生具备一定的计算机基础知识。

C语言的双语教学设计原则:①根据学生的英语能力适当调整英语授课比例;②根据学生计算机基础(背景),适当调整英语授课比例;③根据教学内容,精心选择英语教学内容;④根据学习情况适当调整英语授课比例;⑤基本概念、句法结构和语法结构等使用准确的英文表达;⑥基本概念、句法和语法结构的解释和使用说明使用一定比例的汉语进行讲解;⑦设计出的程序要保证在符合C语言语法、句法的条件下,使用一定比例的英语表达;⑧算法可以采用自然英语或伪代码形式表达,帮助学生用自然思维去理解;⑨使用英文表达调试程序,尽量使用英文解释程序调试问题;⑩授课资料、教材、学生作业、实验指导、测试和考试应保证一定比例的英语表达和一定比例的双语表达。

C语言双语教学设计要根据学生实际情况和教学具体内容而定,内容应涵盖C语言教学的多个方面,始终遵循“从C语言教学本身出发”的基本思想。

3 CZ言“多维”双语教学实施

C语言实施双语教学,主要从“理论基础、控制结构,算法设计、程序调试和程序设计”5个维度展开。

3.1 理论基础

C语言的理论基础知识包括关键字、常量、变量、数据类型、运算符、表达式、预处理指令和C库函数等,这些基础知识要使用准确的英语来讲解。例如:

在这个程序中,出现以下几类基础知识:①int、return是关键字;②printf是C库函数名;③int是数据类型;④#include 是预处理命令;⑤main是主函数名。

其次,分析这几类基础知识:①return、include、main与英语中对应的单词含义几乎一致;②int汉语是整型,是英语单词integer的前3个字母;③printf是输出函数的函数名,其中 “print”在英语中有打印输出的意思,“f”是英语单词function(函数)的第一个字母;④stdio.h是一个头文件名,其中,“std”是英语单词standard的简写,“i”是英语单词input的第一个字母,“o”是英语单词output的第一个字母,“h”是英语单词head的第一个字母,“.h”是文件的后缀名;⑤This is my first C program!是一个字符串,是一句英文准确表达的句子;⑥\\n是一种字符常量,叫转义字符,起“换行”的作用。

首先要记住这些基础知识的含义,然后用双语讲解这些基础知识的作用、用在什么地方、如何使用。值得注意的是,在双语教学中,学生知道汉语解释是为了容易理解,但在后续教学中,应要求学生用准确的英文表达而不是汉语表达。例如:当学生看到、读到或用到“int”时,脑海里浮现的就是“int”,读的也是“int”,用的也是“int”,而不是去翻译它。学生理解和掌握了理论知识,后续理解和掌握声明或定义结构、句法、语法就能水到渠成。

3.2 控制结构

程序设计的三大控制结构利用人们日常生活思维来设计程序,使得计算机能按照人类思维去运行、计算结果。三大结构采用双语教学方式,有利于学生理解和掌握。

需要说明的是,这个教学内容与生活思维完全相似,学生比较容易理解。因此,可以增加双语教学比例,甚至采取全英文的教学模式。

3.3 算法设计

算法是程序设计之前必须考虑的问题,简单说就是让计算机解决问题的方法。算法的描述方法有很多种,笔者经过多年的教学实践发现伪代码很适合初学者。伪代码接近自然语言,便于初学者理解和掌握。在C语言双语教学的算法设计中采用英语伪代码更能消除算法与程序之间的距离感。

例如:设计一个能进行多次计算的四则运算器,直到用户强制结束程序。

(1)算法的自然语言描述:首先,输入计算用的两个操作数和运算符;接着判断运算符是哪一种(+、-、*、/),进行四则运算;然后输出运算结果;重复以上3个过程直到用户输入结束程序的命令。

(2)算法的英文描述:①input the expression as a+b,“a” and “ b” are operation numbers,“+”is operator;②judge the operator then select the right formula;③output the result;④repeat the three steps ahead until user input the character “N”,the program is end。

通过以上对算法的描述,特别是使用伪代码,大大降低了算法的抽象性,能看到程序的雏形。这时学生编写程序会觉得可以动手,增强了自信心。

3.4 程序调试

学习程序设计,除了学习学科知识(knowledge)外,更为重要的是计算思维(Computational Thinking)和编程技能(Computational Skills)训练。《C程序设计》实验课非常重要,汉化的C语言编译系统存在缺陷,学生应使用全英文版的VC++6.0调试程序。调试程序时得到的警告、错误提示和调试方法全部用准确的英文描述。如图1为程序改错题调试界面。

程序调试过程中,要求学生填写表1。

调试程序是对程序结构、逻辑问题、语法问题和算法进行调整和测试,经过阅读、调试和改错训练,学生对全英文的错误和警告提示理解力提高,调试程序也变得容易。

3.5 程序设计

程序设计是一个综合学科知识和编程技能的过程,学生要依靠所获得的知识和技能才能完成此项工作。首先给出程序结构,然后用英文注释说明程序的某个部分应该实现哪些内容,最后再逐渐把程序补充完整。

4 C语言“多维”双语教学效果

C语言“多维”双语教学实施后,在以下方面取得成效:①学生对理论知识掌握比以往牢靠,特别体现在语法和句法的掌握上,鲜有学生在程序设计时出现语法和句法的书写错误;②学生对三大结构的理解和实现比以前清晰;③利用英语伪代码进行算法设计,为学生从算法到程序的过渡建立了直观的桥梁,消除了对算法的恐惧性和对程序的神秘性;④从实验课完成情况看,学生会优先做程序改错题,再做程序填空}和程序设计题。在程序调试过程中,对很多错误和警告都能马上改正;⑤学生进行程序设计不一定一次成功,但通过多次重复思考和注释的过程,可以做到“设计一点、调试一点、完成一点”,最终逐步实现整个程序。

5 C语言“多维”双语教学总结和展望

笔者学校2014级和2105级计算机科学与技术专业学生使用同一份试卷考试,2014级未使用双语教学,2015级使用“多维”双语教学,成绩统计情况如图2~图3所示,成绩频数分布见表2、表3。

改革是为了提高教学质量,将双语教学应用于C语言是课程的客观需要。但是,在双语教学中如何体现“从C语言教学本身出发”是应该不断探索的问题。C语言“多维”双语教学模式可以移植到其它程序设计语言中,因为设计的5个维度是互相支持、互相补充的,体现了“循序渐进学习知识,由易到难训练技能”的程序设计学习方法。 “多维”双语教学模式还可以应用于计算机程序设计类或其它课程教学,以提高教学质量。

参考文献:

[1]朱小艳,白景华.软件学院C语言双语教学探讨[J].电脑知识与技术,2011,22(7):156-159.

[2]洪炎,王仲根.C 语言双语教学研究[J].科技信息,2010(25):99-103.

c语言教学论文范文4

关键词:C语言程序设计;多媒体;研究

中图分类号:G642 文献标识码:A

1多媒体技术在C语言课堂教学中的应用

在C语言课堂教学过程中,应用多媒体组合教学方式,能将传统的教学媒体与现代教学媒体有机地联系起来,相辅相成,互为补充,充分发挥各自的教学功能,优化课堂结构,提高课堂教学质量。

利用现代教学技术及计算机的多媒体技术,将现代教学媒体与教学目标紧密联系在一起,优化课堂教学结构,使课堂教学效果最优化。

1.1多媒体应用可提高编写C语言程序的逻辑思维能力

C语言教学的主要目标之一就是培养学生的逻辑思维能力。多媒体能用具体形象的媒体展示,使学生能从中体验形象与抽象的关系,总结规律。在课件的制作中,可适当地运用动画、影片和声音来对学习氛围进行调节。在上课前,不再让学生起立,而是通过媒体播放一首乐曲,让学生在专心致志的欣赏中达到情感智商的提高,有利于学生逻辑思维的发展。如在讲函数概念时,可设计插入一个五子棋的游戏,使同学在跃跃欲试的同时,结合教师课题讲解,对函数功能的认识从抽象具体抽象的过程中达到对函数的深刻理解。在制作各张幻灯片画面时,注意用意明确,使常规C语言教学中要求的基本技能、重要的思想方法、运算能力和分析问题解决问题的方法得到连续,贯通。适当地对个别事例做好演示的连接,避免操作过程中的混乱。

在对学生发散性思维能力的培养方面,我们可以用数的交换贯穿函数整章,在制作上采用了多种不同的方式来表达多个数在交换时的不同方式。启发学生的思维,使学生能在实践生活中体验函数的存在,对开阔学生视野,体现发散思维的流畅性、变通性有较大的帮助。

1.2多媒体应用可提高学生学习C语言的兴趣

C语言课程的特点之一是内容抽象。因此,考虑如何在传授知识的过程中做到生动形象,是C语言教师在教学实践中时常思索的问题。而多媒体在C语言教学中应用可以较好地解决这个难题。例如在指针的使用中,学生对指针很难建立起直观印象,对指针的应用更是把握不定。在设计这一部分课件时,可采用动画显示指针的存储方式和执行动作,例如,先用两个抽屉存放钥匙开锁问题引起学生的思考,然后引入指针在传送数据时的动作特点。可以使指针自左飞入,然后按动画叠放次序播放,表达指针将要传送数据的位置,加深了学生对指针的特征的掌握。

多媒体也可应用于C语言教学中实验模拟和难点突破。学生在高职阶段对C语言掌握有两大难点:逻辑思维的转变与实际问题解决。以往教师对这两个难点很难解决,面对枯燥的C语言操作界面很难解释清楚C语言对高职学生学习的重要性,无法激发学生学习的兴趣。现在可以在选择相关软件的基础上,设计有关课件用于计算机模拟实验,并可多次重现,帮助学生复习掌握。例如,广告灯设计,可以借助单片机进行实物展示,突出C语言实际应用的特点,促进学生对C语言的理解。

2多媒体技术在C语言教材设计中的应用

在高职C语言教学中,应用多媒体教学,能增加教学容量,设计实际问题情景,重新组织教材结构网络,提高学生的C语言素养和应用能力。

多媒体应用能丰富课堂教学容量。课堂教学是师生的共同活动,而活动的主体应该是学生,采用多媒体教学,教学容量比以往的常规教学容量多,教师应注重掌握教学节奏。节奏的快慢强弱、轻重缓急,要根据学生的具体情况而定。在设计课件时应从以下方面考虑节奏情况:

2.1增加问题情景设计,激起课堂高潮

以往的C语言教学课件因程序化太浓,难以达到学习的高潮。而用 PowerPoint2003自编课件,灵活结合教材与教学实际是可以做到的。如对“结构体概念”设计可采用问题情景:放一个关机订票的电影片段,然后向学生提出在整个影片播放过程中,如何实现对登机人员身份资料的查找?如何才能实现资料的快速查找,有多少种方式?让学生集中精神观看后,情绪高涨,思路开阔,对结构体的认识和使用也有了清晰的认识。在对一堂课的归纳、小结时,采用网络技巧及特写处理,把本节课的主要内容思想和解题技巧以特写方式归于一张幻灯片中,并配上轻松的背景音乐,使同学能掌握学习C语言的重要方法。

2.2考虑学生的学习规律,培养师生感情

课堂45分钟,学生眼睛盯着荧光屏容易产生疲劳感,在每一课件的适当位置给予学生思考与活动、讨论的时间,既让学生积极参与,又能注意学生的学习反应,克服因人机对话造成的情感淡薄的问题,培养学生的情商。在课件的设计中,可以根据不同教学内容加入情景问题。如在“分支结构”的课堂设计中,可以在适当的时候加入一些小的心里测试问题,以这样的情景,使学生区分什么是单分支结构、二分支结构和多分支结构。在师生讨论和操作、分析过程中,学生既能体会到C语言中分支结构的作用,又可体会到学习过程中的乐趣。

3多媒体C语言教学软件设计思路与技术

计算机辅助教学软件与多媒体教学软件的设计,是多媒体在课堂教学应用的关键。本文根据近年来计算机网络的发展现状,提出在C语言课堂教学中多媒体应用的设计思路和具体步骤。

教育手段现代化的有效性,是教师探索课堂教育方法、手段的方向。要在45分钟的课堂教学中提高教学的效益,进行高密度、高容量的教学,多媒体的应用势在必行。在高等职业技术学院C语言课堂教学中探索用计算机辅助教学,让多媒体在C语言教学中体现多媒体的最佳效果和C语言教育的特色,使学生的思维能力能不断向高层次发展。

在多媒体应用中,根据目前市场上发行的多种工具软件,结合学校的现有硬件设备,可以选定Office 2003中的PowerPoint 2003软件,利用PowerPoint 2003的演讲演示和新增加的扩展功能配合课堂教学,达到培养学生C语言思维、开拓视野、陶冶情操的目的。在多媒体的应用中,除了软件的选择外,还有课件的制作,选择 PowerPoint 2003作为制作课件软件,主要是 PowerPoint 2003有强大的通用性、易操作性和课件制作的简单性。PowerPoint 2003 面向Web,包括用于即时制作网页的Html选项,能提供50多个模板,它能和Internet Explorer极好地结合在一起,利用了ActiveX技术,可方便地从硬盘或网络上调用其他课件。

在PowerPoint 2003中制作一张幻灯片只要十来分钟,而且其精美程度是普通的胶片难以达到的。在C语言教学中一般一堂课制作5至8张幻灯片,用程序连接可达十多张幻灯片,还可用网络连接其他课件,使课堂上的知识容量大大加强。

计算机辅助教学软件与多媒体教学软件的设计是多媒体在课堂教学应用的关键。在课堂多媒体辅助教学中,教师往往在教学的媒体上选择实物、模型、挂图、录像、录音、幻灯、投影等媒体,但多种媒体临时性拼接往往使教师应接不暇。而采用PowerPoint 2003可以把实物、模型、挂图、录像、录音等媒体利用超级链接组合在一起,通过幻灯投影方式在课堂中应用,收到较好效果。同一张幻灯片中的信息,可通过动画设计使图像、声音、文字、图表等按照一定顺序出现。

3.1多媒体C语言软件制作方法

制作新的幻灯片时,可以从50种自动版式中选择任意一种,每种自动版式的版面设置各不相同,可以按自己的需要选用。例如,有一种版式提供标题、文本及图表的占位符,另一种则提供标题和剪贴画的占位符。如果要创建新的幻灯片,单击“常规任务”工具栏上的“新幻灯片”。要在标题或文本占位符中输入文本,在该处单击可直接输入。教师可以让每个C语言题目或C语言提示单独出现,或者让其逐个出现。也可设置每个C语言题目或C语言提示出现在幻灯片上的方式(例如从左侧飞入)。

PowerPoint 2003中还有一项新功能,可以让图表元素呈动画效果。先在幻灯片视图中,单击“幻灯片放映”菜单中的“自定义动画”,再单击“播放设置”选项。设置幻灯片放映时播放声音或影片时,可先在幻灯片视图中,选择要设置选项的影片或声音图标,后在“幻灯片放映”菜单中的“自定义动画”,再单击“播放设置”。动画幻灯片上的文本、形状、声音、图像和其他对象,这样就可以突出重点、控制信息的流程,并提高课件的趣味性。

课件中可设置超级链接,以便在幻灯片中移动,或跳转到其他幻灯片和程序中,如连接到Web或其他资源。

3.2多媒体C语言课件的设计思路与步骤

制作课件时一般采用以下具体步骤:

(1) 设计课堂教学的思路,建立相关要素分析表。

课题:教学内容、学习水平、教学目标、教学媒体

要点:构成(知识)、事实、概念、原理、观察、推理、其他(能力)、识记、理解、应用、综合

幻灯片:图片、音乐、影片

(2) 建立文档,设置模板。

(3) 按照教学目标制作幻灯片。

(4) 设计多媒体动画与程序连接。

(5) 课件调试与格式转换。

(6) 及时对课件评价与修改。

4小结

在多媒体应用于C语言课堂教学中,有以下几个技术问题有待解决:

(1) 各种软件的配套与硬件的兼容。国外有一定数量的C语言教学软件,但因软件的配套与硬件的兼容问题而无法使用。

(2) 学生信息的反馈。在多媒体应用时,PowerPoint 2000虽能做到丰富C语言课件的内容,但人机对话功能发挥不够,若学校设备联入校园网或每个学生都能自己熟练操作计算机,学生的信息反馈能很好地解决。

(3)C语言推理、论证的培养。在目前计算机技术中,计算机优势在文字、图形等信息的传输与处理,对C语言符号的处理以及C语言中常见的推理、论证有相当的难度,C语言教学智能软件笔者还未了解到。由于技术原因,教师在中学C语言教学中的作用是不能用多媒体代替的。

如何在高职C语言课堂应用多媒体进行教学,如何设计出高水平的C语言课堂教学课件,采用何种适应C语言教学的设计软件,是C语言教育工作者、CAI专家、计算机程序设计师共同研讨的课题。

参考文献:

[1] 谭浩强.C程序设计[M].北京:清华大学出版社,1990.

[2] 谢乐军. 程序设计及应用[M]. 北京:冶金工业出版社,2004.

[3] 彭雪峰,冯小平,姜鑫焱. 浅谈多媒体教学在C语言教学中的应用[J]. 科技信息:学术研究版,2007(1).

[4] 赵拥华. 关于计算机多媒体在教学中的应用的研究[J].电脑知识与技术,2009(9).

[5] 吴敏. 充分利用多媒体技术推进C语言教学发展[J]. 中国电力教育,2007(9).

[6] 柯晓华.浅谈高校C语言程序设计课程教学[J]. 安阳工学院学报,2006(5)

[7] 赵子江. 多媒体技术应用教程[M]. 4版. 北京:机械工业出版社,2004.

[8] 方加娟,李红霞.多媒体辅助教学在C语言教学中的应用[J]. 计量与测试技术,2006.

[9] 潘爱武. 多媒体教学法在C语言教学中的合理运用[J].科教文汇,2007(9).

The Application of Multimedia Technology in the C Language Teaching

ZHAO Hong-kai

(Vocational and Technical College Office of Academic Affairs, Guangdong Zhaoqing Institute of Science and Technology, Zhaoqing 526020, China)

c语言教学论文范文5

关键词:《C语言程序设计》;教材建设;教学改革;教学模式

中图分类号:TP312文献标识码:A文章编号:1009-3044(2007)04-11170-02

1 引言

程序设计作为计算机等有关专业必修的一门重要的专业技术课程,是信息系统学科的一门核心课程,是一门理论性和实践性都很强的课程。C语言程序设计是理工科各专业计算机应用能力培养的重要技术基础。C语言既具有低级语言可直接访问内存地址、能进行位操作、程序运行效率高的优点,又具有高级语言运算符和数据类型丰富、结构化控制语句功能强、可移植性好的优点,成为程序设计语言的常青树。C语言课程是数据结构、C++面向对象程序设计、操作系统和软件工程等课程的基础,并可为这些课程提供实践工具。

C语言是一门实用性的语言。其实验教学环节作为C语言程序设计课程教学中一个十分重要的教学环节,对于实现课程教学的目标起着重要的作用,是理论联系实际的必需的手段,对于理工科大学接受系统的实验方法和实践技能训练,培养科学实验能力是很好的锻炼,学生经过C语言程序设计实验教学环节后对于C语言程序设计理论知识的“三基”(基本理论、基本方法、基本手段)才会有更为深刻地理解。

传统的教学方法中,程序实验环节只是配合每一章所学的内容进行在计算机上的实践,这样的方法让学生只是孤立的了解了某些C语言程序设计知识,所涉及的知识面较窄,缺少学科的综合性,而且动手能力很差,无法将实际的具体问题和C语言程序设计知识联系起来。学生的学习兴趣不高,教学效果较差。为了改变这一现状,我们对C语言程序设计实验教学的实验教学观念、实验教学内容、实验教学的组织方式和实验教学的手段进行改革性的探索和实践,将教学的目的变为理论和实践并重,以提高学生的实用的掌握这门语言的能力。

2 教学改革方法

针对这些问题,我们在教学中进行了大胆的探索和尝试,主要从以下几个方面进行的:

2.1 加强教材建设

在教学工作中,我们主张讲授要少而精,而选择教材则应在广度和深度上留有较大的余地。在高等学校中应该提倡老师讲授的内容和课时不要太多,为学生提供的教材和学习材料则应该尽量多,并且有一定的深度。这样,才可能让学生有充分的主动学习的空间,使学生在花费精力学习不同课程时有较大的选择余地,同时,学生学习这门课程的能力和兴趣往往差别很大,对于水平高有兴趣的同学,应该为他们创造深入学习的条件。教材应该是一个学习园地,而不是讲稿,老师的讲课好像是导游,为学生的游览(学习)提供指导。讲授的内容不可能与教材的内容相一致,正是这种不一致性,使得学生获得了较大的独立学习的空间,这样培养出来的人才,才可能有较强的学习和创新能力。我们将“少课时,大教材”作为教学改革的一项措施,认为教材应该为学生留有主动学习的空间,这样有利于加强素质教育,从而提高教学质量。

另外,我们针对当前市场上课本的鱼龙混杂的情况,常常在语言的细节上浪费笔墨,这样不但容易使得初学者迷失在这些复杂而庞大的细枝末节上,而且不能很好的掌握C语言程序设计的实质。我们根据自己多年来从事C语言程序设计语言教学的经验和实际开发软件项目所积累的丰富的软件开发经验编写教材。强调程序设计方法和技巧的掌握比对语言细节的理解重要得多,而对语言细节的透彻理解只有通过大量的时间和长期的编程实践才能获得。我们编写《C语言程序设计》教材使学生能在较短的时间内理解C语言程序设计的基本概念并掌握C语言程序设计的方法,初步培养学生按C语言的思想方式分析和解决问题的思维习惯。

2.2 编程实践环节驱动的教学模式

上机编程实践是学好C程序设计语言的关键。“精讲多练”式教学方法的基本特点是上机时数较多。上机实践是掌握Visual C++的一种有效途径,我们在教学中采用1.5:1的模式,即每上3课时的理论课,安排2课时的上机实践。在讲授理论课时,还要针对自学部分和调试技术等内容进行简短的指导, 然后学生在教师指导下上机练习。

2.2.1 重视C语言的上机编译环境的运用

C 语言的理论知识是以实践作为依据的,一个程序的执行过程涵盖该程序所有知识点。我们机房提供了TurboC 2.0、WinTC、Visual C++6.0三种C语言的编译和运行环境。我们认为WinTC虽然基于windows环境,操作简单,但调试功能不强。我们采用Visual C++6.0集成开发环境,强调利用调试工具帮助编程者去思考程序,我们强调单步执行功能(step in、step out、step over)、设置断点(breakpoint)、添加变量监视框(Add Watch)的运用,这样可以对程序执行过程进行跟踪监视,可以帮助学生更好的理解程序中的分支结构、循环结构和函数的虚参实参调用等C语言的知识点,从而弥补课堂教学的距离感和枯燥感,使学生学的更有兴趣,更为主动,掌握的知识也更全面。

2.2.2 重视对警告信息的改正

学生通过课堂和书本的学习,编出来的C语言程序,在实际上机运行时可能会不断出现麻烦,特别在编译程序时计算机会检测出许多错误,这时的错误可大致分为语法错误和语义错误,我们认为学习C语言就是一个发现错误和改正错误的过程,强调学生自己的去发现和改正错误。Visual C++6.0集成开发环境会提示两种信息,一种信息为错误信息,另一种信息为警告信息。一般情况下只要将错误信息改正过来,程序就能通过运行给出结果,这样警告信息往往会被忽略。我们在实践教学中要求学生将警告信息与错误信息一样重视,在调试过程中遇到警告信息必须改正,因为警告信息的出现说明了学生对知识点理解的偏差,让学生通过改正警告信息来正确的理解理论知识,会给学生留下深刻印象,在进一步理解理论知识的同时培养学生严肃、认真的科学态度。

2.3 综合性“大作业”的引入

我们在实验教学的开始就引入软件工程的理念,强调学生们从一开始了解到养成良好的软件设计规范的重要性。我们在实验内容上引入面向对象的软件思想和软件工程的理念,将C语言课程和软件工程紧密的有机联系起来,要求学生按照软件工程的思想去分析设计实现一个具体的MIS系统。

具体说来,我们的实践教学分为以下几个环节:

第一阶段,学习C语言的各个理论知识点和熟悉VisualC++6.0的开发环境。

第二阶段,我们在第一段学习的基础上,引入综合性“大作业”。先由教师给出实验题目,提出具体要求,而后学生根据要求查阅相关的书籍资料,写出实验原理、实验方法步骤交给教师批阅;师生一起讨论,确定实验方案;然后在限定的时间内进行实验,并写出相关的系统的分析、设计、实现等实验报告,然后分组讨论,最后进行集体的总结交流,初步掌握C语言软件系统的设计方法和步骤,锻炼学生灵活运用C语言开发语言进行软件开发的初步能力。

大作业的具体内容如下:

Step 1:教师给学生讲解大作业的题目要求,要求学生在选好题目的基础上,认真研究题目要求,自行查阅有关资料,实行系统的需求分析,总体框架设计;

Step 2:完成C语言的设计,建立C语言;

Step 3:编写界面,要求完成各个功能单元的实现和调试;

Step 4:联编调试,要求把各个功能块联编起来进行调试;

Step 5:上机检查;

Step 6:实验报告软件文档。

第三阶段,继续完善实际系统的开发。本阶段主要让学生在注重基本功能的实现的基础上,对其所完成的软件进行正确性的测试和进行必要的包装设计。

在实验教学中,我们突出以项目训练为主的教学实践。我们使用项目驱动的教学方法,针对学习目标设计问题与任务,将所要学习的概念技巧蕴含在所要解决的问题之中,通过解决问题,从中发现知识点和实践技巧。我们通过实例讲解,系统开发与调试的基本方法的讲解,使得学生从实际中学习。

2.3 采用教学网站作为教学的辅助方法

目前,计算机和互联网已渗透到各个领域。我们可以充分利用互联网的优势,设计网络课件来提高学生的自学与复习的积极性,开辟新的教学与复习手段,使学生学习和巩固知识的渠道多样化,进而提高我们的教学质量。网络课件主要具有两方面的功能:留言板和网络题库。学生可在网络课件留言板中提出问题,教师可在短时间内在留言板中给予答复,实现老师与学生的相互留言,发表通知公告或进行解惑。特别是学生都会遇到的共性问题,教师一旦在留言板上留言,就不需再为每个人分别解答了。网络题库是检验学生每章或每节课阶段性成果的有力工具,它可使学生尽快知道自己哪一方面不足,还有待加强。通过网络课件这样的辅助教学方法,既提高了学生的学习兴趣,又提高了教师的工作效率和教学效果。

2.4 考核方式的改革

考核在教学过程中起着重要的作用。对教师来说,它是教师了解学生学习状况、因材施教的基本依据;对学生来说,它是学生自我评价的依据。

我们认为,在实验教学中加强基本实验方法基本技能和实验过程的规范训练要比掌握一些具体的实验操作更为重要。因此,我们从实验教学的特点和培养学生实践能力的角度出发,重视学生基本实验方法和实验过程的规范操作,突出实验能力的培养,弱化实验结果的评审。

3 结束语

通过我们不断改进教学方法,完善教学手段,学生学习的自觉性、主动性有了很大的提高。上机实验和机考的程序调试通过率也有明显提高。这些表明我们的探索得到大部分学生的认可,受到了老师的普遍欢迎,通过对学生的调查中,大多数学生认为是他们对于课本知识理解更加深入了,他们的主动思考问题的能力也得到了提高 。教师们也普遍反映《C语言程序设计》的教学质量和教学效果得到极大的提高。

参考文献:

[1] 王曙燕. C语言程序设计[M]. 北京:科学出版社,2005.

[2] 房鼎益,等. 计算机科学与技术专业面向21世纪教学改革与新教学计划[J]. 计算机科学,1999,6(2):153-155.

[3] 沈天晴,刘维富等. VC程序设计基础课程实践教学方法的探讨[J]. 南通大学学报(教学科学版),2005,21(3):88-91.

c语言教学论文范文6

C语言课程是高校计算机和核心课程之一,从这门课程的实际内容上看,学生只有在上机操作中才能真正掌握所学理论知识,只有通过长时间的上机操作,学生才会学会一些编制程序和调试程序的基本技巧,也只有通过实践操作才能让学生发现自己哪部分知识比较欠缺,进而进行有针对性的学习和实践。然而,在大多数高校内,一些老师还是应用理论讲授为主的传统教学方法,这种方法已经不太适应时展的需求,因此,高校要与时俱进地实施教学方法改革,培养学生的操作能力。

1 C语言课程的重要性

C语言是计算机专业学生进行深入学习计算机知识的基础课程,只有系统掌握了这门课程的基础知识,在后续学习时才会得心应手。

1.1 C语言课程是学习程序设计的入门课程

计算机专业最主要的目的就是教学学生进行程序设计,程序设计领域中应用的最广泛的语言就是C语言。这种语言满足高级程序设计语言的需要,还具备对计算机的底层硬件进行方便、直接地控制的优点,是程序员深入系统底层进行编程的入门课程。

1.2 C语言是学习其他编程语言的基础

C语言具备了功能强大、效率高、简洁灵活和可移植性强的特点,编程人员在从事软件开发工作时最喜欢使用这种语言,在学校中学生系统地学习完这种语言,就可以掌握编程的基本思想,为学习其他编程语言奠定基础。

1.3 C语言是学生深入学习计算机知识的基础

在语法表述上,C语言具有简洁精妙的优势,注定了这门课程很方便进行描述算法,比如计算机专业另外一门核心课程《数据结构》,在其算法上,绝大多数都是采用C语言或C++语言来描述的,可见,加强对C语言的学习,是计算机专业的学生进行深入学习计算机知识的基础。

2 目前C语言课程的通行授课方式

一些高校的计算机授课教师仍然按照传统的教学方式来从事这种教学,严重影响了教学效果,也影响了学生的学习兴趣。

2.1 授课方式上,一些老师还采用理论讲授为主

在一些高校内,讲授这门课程的计算机老师,喜欢采用传统灌输式的教学模式,教学重点不是培养学生的动手能力,而是讲授程序设计语言的基本语法, 要求学生通过课堂学习来掌握一些理论知识,当然,这种教学方式有一定的优点,可以保证所讲授知识的系统性与完整性,但更大的缺点是轻视了对程序设计能力与思维的培养,因而造成学生学习的积极性不高,没有起到预期的教学效果。在学习内容上,一些老师很少讲授比较流行的程序开发语言如ava和C#,这就与学生的学习需求差别较大,导致学生对学习该门课程没有明确的学习目的与兴趣。

2.2 在实验操作方式上,实验的内容比较陈旧

C语言程序设计的实践性很强,这门课程教学效果的实现,离不开学生长时间进行独立的实践操作,科学、系统的实验内容是必不可缺的。然而,现实教学中,一些老师忽视教学实践环节,有的学校是教学老师和实验老师各自独立,导致了实验课环节效果较差,甚至使教学内容和实验内容相脱节相分离,根本起不到巩固所学的理论知识的效果。具体实验环节中,老师布置的任务相对简单,导致了学生在上机操作过程中,参照教科书的案例就可以完成实验任务,这种实验课是有名无实,导致了学生缺乏独立编写程序的有效训练。

2.3 考试方式上,仍然重视卷面成绩

当前高校对课程结课考核中,最常用的方法还是按照书面考试的成绩来决定,而没有充分考虑各门课程的实际情况,C语言也不例外,老师只能按照学校的要求,出一张书面书卷来让学生答题,根据成绩是否及格来判定学生能否过关,这种应试教育阶段的考试方式,对C语言进行考核时,存在大量的弊端,导致了对在对这门实用编程语言的考试时,动手能力考的少,理论知识考得多,而且理论知识中的测试内容过多拘泥于繁琐语法细节,这种陈旧的考试方式使得学生不得不通过做题、背题等方法来应对试卷,动手能力的高低、好坏程度几乎没法衡量。

3 C语言教学方式的创新途径

社会上对毕业生动手能力的要求也越来越高,如不加强对计算机专业学生动手能力的培养,势必影响这类学生的顺利就业。因此,教育部门和相关高校对C语言课程传统授课方式进行改革、创新教学方式已经势在必行。

3.1 加大授课方式的创新力度

高等院校应根据计算机专业课程的实际需要,建设一些多媒体教室,把多媒体网络机房设为主要学习场所,不再单纯依赖课堂教学,改变理论学习和上机实践相脱节的教学模式,在学生实践操作时教师再进行适当的理论指导,弱化教师教学的主体性地位,把课堂的主动性交给学生,使得学生能及时上机,及时验证,及时理解本节所学的基本理论和基本方法。在时间分配上,应适当增加操作时间,压缩授课时间,保证每个学期学生有2/3的时间学习掌握基础知识,另外1/3的时间完成一个实用性的C语言程序,在学生的实践操作中锻炼应用所学知识来解决现实问题的能力,进而培养学生动手能力。

3.2 鼓励改革结课的考核方式

目前,一些高校对C语言课程的结课考核方式,应采用传统的笔试考试方式,这张方式存在很大弊端,一张试卷并不能完全反应出学生的真实水平。因此,高校应把考核的主动权交给老师,鼓励老师应用综合、系统的考核方式。有些院校尝试运用了平时考核、期末理论考试、上机考试、课程设计、项目考察多种手段相结合考核方式,在实践中这种方式效果还不错,挺受学生的欢迎,教育部门可以适当推广这种考核方式,使这种方式更加完善,更能全面反映出学生的真实能力。

3.3 加大教材的改革力度

c语言教学论文范文7

【关键字】C语言 程序设计 教学探讨

一、由实验入手,培养学生的学习兴趣

“C语言程序设计”课程往往是是学生所接触的第一门计算机编程方面课程,所以很多老师采用理论教学,学习完理论基础后开始上机实践,从介绍C语言的语法、算法开始,然后讲程序的书写,最后再学习程序的调试。这样复杂且抽象,这就导致部分学生在上课初期就反映C语言难懂、难学。在教授C语言之初,教师应注意教学的方式方法,要设法调动学生的学习兴趣,让他们先体验C语言程序设计的乐趣。第一次上课最好定为实验课。通过给出几个简单且学生熟悉的数学问题以及它们所对应的C语言程序源代码,边介绍程序运行平台的操作边指导学生自己编辑调试,观察运行结果。当程序成功的输出结果时,学生对这门课的学习兴趣自然产生了。第一堂课通过实验教学,完成从数学逻辑到计算机语言程序的转变,从而逐渐培养学生对程序设计的兴趣。

二、教学中应避免过分强调某些容易引起副作用的知识细节

由于C语言牵涉到的概念比较复杂,规则繁多,使用灵活,容易出错,所以在C语言教学过程中,要遵循由易到难,抓主要矛盾的原则。介于C语言中有些细节牵涉到的副作用问题很多,教学时应把教学精力放在最基本、最常用的那些部分,等学生有一定基础后再深入到一些非主要的细节上。

三、阶梯性举例

为培养学生的学习兴趣,大部分教师在C语言教学过程中,都不一味地按书本去讲,而多举实例来巩固学生所学习的知识点。笔者在一年来的C语言教学实践中采用阶梯性举例方式,取得了不错的教学效果。阶梯性举例是指在课堂上把同类型问题归结出来,让学生从理解最简单的例子开始,按照由易到难的顺序依次理解所学知识点。

例如,在讲述C语言中求若干数中最大值的知识点时,举出:第一层问题:2个数的最大值求法,采用简单if语句解决;第二层问题:3个数的最大值求法,采用简单if-else复合语句解决;第三层问题:4个数的最大值求法,采用条件语句加上if语句解决;第四层问题:n个数(4个数以上)的最大值求法,采用一维数组比较方式解决。

这样通过阶梯性举例教学,学生对同类问题的解决有了比较深刻的认识。其主要特点是升级适度,符合学生的心态,使学生有成就感,形成积极向上的学习态度。

四、强调程序语法规则,淡化程序算法设计思想

C语言语法规则繁多,且使用灵活,很容易出错。这样使得学生调试程序过程变得更难。因此,教师在C语言的教学过程中,一定要强调C语言中语法细节问题,把一些经常会犯的错误总结出来。例如,在C语言里,赋值运算符是“=”,而“==”是关系运算符的相等比较,如if (a = 1),因为“=”是赋值操作,括号中的条件则会永远为真,程序在编译时不会提示有错,可以编译通过,但这明显不是所要的结果。教师在授课时一定要强调语法细节,避免出现不必要的错误。

五、传授编程技巧,养成良好编程习惯,培养学生独立调试程序能力

C语言是一门实践性相当强的课程。教学中,教师应该传授学生一些编程技巧,例如一些典型数学问题的运用等,让学生学会如何熟练应用C语言编程。由于C语言语句书写灵活,教师在实验课上应重视学生书写程序规范问题。例如,强调变量命名应顾名思义,一行只书写一条语句,每一小段程序要有中文注释等。养成这些良好的编程规范对学生今后编程解决问题是很有帮助的。此外还应引导学生多读程序,多编程序,多上机调试程序。教师在实验课中,应该把一些常用的程序调试方法总结出来,教给学生。只有通过反复上机操作,自行找错纠错,才能对C语言有更深、更全面的认识和理解,逐步提高实际操作和学习的能力。

六、采取多元化的考核方式

为了保证课程的教学质量考核是必不可缺的,可以采用多元化的考核方式,针对C语言中不同的知识类型采取不同的考试形式。如:考查C语言中常识性的知识可以采用闭卷考试形式;考查学生知识转化能力、应用能力等可以采用开卷考试形式;考查学生的程序调试、改错等可以采用上机考试。

七、结束语

以上是笔者近年来学习和讲授C语言课程中的一点心得体会,在教学过程中应注意的问题还是有很多的,但是关键在于对 “教什么”和 “如何教”的合理组合,是否能调动学生学习的积极性。教学中,只要教师能理解C语言本身的特点并采取相应的措施与教学手段,一定能取得理想的教学效果。

参考文献:

[1]谭浩强. C程序设计(第三版)[M]. 清华大学出版社.2005

c语言教学论文范文8

【关键词】C语言程序设计 实践教学方法 实践实践能力 积极性

【基金项目】2013年防灾科技学院教研教改项目(2013B24); 2012年防灾科技学院教研教改重点项目(2012A04)。

【中图分类号】G42 【文献标识码】A 【文章编号】2095-3089(2013)05-0246-01

公共基础课程C语言程序设计是面向非计算机专业本科生开设的,这门课程的教学目标是通过理论学习和编程训练,使学生较全面、系统地理解和掌握C程序设计的基本概念、语法知识和计算机程序设计的基本思想和方法,初步具备运用C程序解决实际问题的能力。通过本课程的学习培养学生利用计算机处理问题的思维方式,启发学生主动将计算机引入到其他基础课和专业课[1]。

C 语言是一门实践操作性很强的课程,要学好C 程序设计不仅要掌握好理论知识,实验教学更不容忽视。通过上机实验,不仅可帮助学生消化和巩固课堂所学知识,也可帮助学生验证学习中的疑难问题,更重要的是可激发和提高学生学习C 语言程序设计的兴趣[2]。

1.C语言程序设计实践课存在的问题

通过进行问卷调查非计算机专业学生,有69%的学生认为C语言课程对自己今后的学习与工作中比较有用;有81.25%的学生希望理论和实验课时比例为1:1,有56.25%的学生把影响学习积极性的主要原因归咎于教师、课程内容等方面;主动研究、解决问题的学生仅占37.5%,68.8%的学生课下基本不看有关C语言程序设计的书籍,75%的学生基本不会进行学习小结,68.75%的学生课下基本不会主动复习、预习新课;在C语言程序设计课程学习过程中遇到的问题,出错时希望得到教师辅导的占51.3%,只有37.5%的学生课下会花时间编写程序。

笔者从事C语言程序设计教学工作多年,通过实际教学和综合调查分析,学生层面问题突出主要体现在以下几个方面:

1)对课程认识不够重视

有的学生对C 语言认识不足,觉得没什么用,学习上缺乏主动性和积极性;有的同学又觉得C 语言很难,学习缺乏信心,对计算机程序产生一种畏惧的心理。有的学生对实验课不重视,抱着应付的态度,不愿投入很多的时间和精力[3]。

2)学生学习兴趣有待提高

在C语言的教学中,实验课的时间仅占课程的三分之一,明显感觉学生无法按时完成当次实验所要完成的任务,只能依靠学生课下自己找时间再继续完成,这样势必会存在一些问题,学生可能抄袭现象严重,还可能因为在完成实验任务的时候,对于遇到的问题不能及时得到辅导与解决,而会“知难而退”,大大消减了学生对课程学习的积极性[4]。

3)课下投入精力不足

有的学生只是在课堂上听讲,课下没有进行总结归纳、认真复习、做习题、主动查阅学习资料、不能将实验作业提前预习准备。导致知识掌握不牢固,不能有效利用实验课有限时间。

4)有效学习方法欠缺

有的学生在实践过程中过分依赖指导老师,有任何问题就找老师,自己缺乏必要的思考。在学生逐渐掌握并积累一些常用的编程方法和技巧后,可以把总结归纳作为一种重要的学习方法,提高学习效率。

由于以上的各种问题,使得实验课效果不佳,从而影响了C 语言课程的整体教学效果。

2. C语言程序设计实践教学方法的探讨

经过几年的教学实践、观察总结以及研究尝试,本文针对以上问题,总结提出几点建议来改善实践教学的效果。

1)明确学习目的,加强对C 语言认识的重要性

让学生认识到学习C 语言是具有普遍适用性的,根据各专业的不同特点,使学生明白C 语言作为一门基础性程序设计语言,对理工科各专业后续课程的开设起着开路先锋的作用,而且通过C 语言培养起来的逻辑思维和计算能力,是伴随我们学习全程的。另外,要使学生树立信心,使他们能正确地认识到自己在经过一段时期的学习以后是可以编写程序的,可以通过计算机解决本专业领域的问题,从而提高学习的主动性和积极性[3]。

2)培养学习兴趣

兴趣是学习的最好动力之一,兴趣源必须由教师来创造,并贯穿于教师授课全过程的各个环节中。针对C 语言程序设计这门课程的特点教师可采用以下方法提高学生对本课程的兴趣。

教师在课程刚开始时,能够对学生指出日常生活中哪些产品或工作可以是C语言进行程序设计完成的,并能够演示,以便吸引学生的眼球和激发学生学习的兴趣。在日后的课程中,逐渐利用已学知识来解决生活和专业学习中的实际问题。

3)充分利用实践课程

在实验教学中,由于实验课时间相对有限,建议老师在布置作业时一般要难易适当,使学生在经过努力后,基本都能编程实现,这样学生编完程序后就有一种成就感。如果作业太简单,学生轻松实现,印象不深,成就感不强烈,觉得太容易,没有兴趣。如果作业太难,学生难于实现,就会出现放弃或抄袭现象,也会丧失学习本课程的兴趣,更无从谈起学生的成就感。

对于后续课程的综合程序设计,可以将实验任务提前布置,留给学生更多的准备和预习时间,可以要求学生将作业在实验课之前写在作业本或编辑为电子版,对于出现的问题在实践课上进行独立、求助老师来解决,这样有助于问题的解决和提高学习效率,并且能够督促学生利用课余时间来进行复习和预习。这样学生对每个题目已经了解,避免学生上机时现看教材、现编程序的现象。

4)建设课程资源平台

创建资源丰富的课程资源平台,网站资源包含课程介绍、教学大纲、教学日历、教学材料、课程通知、答疑讨论、教学邮箱、课程作业等丰富的基本教学资源,所有资源实现资源共享,学生可以自行下载课件、学习资料,并进行交流讨论,为教师的教和学生的学提供学习和交流的平台,能更好地提高学生的学习主动性和学习效率。

3.结束语

本学期的C 语言程序设计课程在实践环节采取了上述教学方法后,学生对实验课的学习态度发生了根本变化,学生虽然有压力,却很有成就感,感觉学有所用。实践证明,以上实践教学方法极大地提高了学生,学习主动性和动手实践等综合能力,取得了良好的教学效果,在C语言程序设计实践课程教学中切实可行。当然,要真正上好《C 语言程序设计》的实验课,还必须将各种有效措施有机地结合起来,我们要在教学实际中总结新经验、勤于探索新方法并不断改进,才能在教学实践中取得好的教学效果,提高学生用C语言解决实际问题的综合能力。

参考文献:

[1]王冰.C 语言程序设计课程教学方法的探讨[J].计算机教育,2009 (2):142-144.

[2]程志梅,刘光萍,李荣.非计算机专业C 语言程序设计实验课程教学探讨[J].电脑知识与技术,2009(7):1649,1660.

c语言教学论文范文9

(渤海大学信息科学与技术学院辽宁锦州121000)

摘要:分析和探讨了C语言与数据结构课程的关系及其两门课中存在的问题,提出了C语言与数据结构进行课程整合的思想,针对C语言与数据结构整合后的课程内容、目标,教学模式及教学评价方式等几个方面给出了一些建议,从而提高两门课程的教学质量及学生的学习效率。

关键词:C语言;数据结构;课程整合;教学模式设计

1、引言

信息技术急速发展,计算机加工的对象涉及广泛,如图形、表格、字符等,而不再只是单纯的数值。从而诞生了C语言与数据结构这两门课程。C语言与数据结构是相辅相成的两门课程,数据结构的算法需要某种编程语言实现,C是常用的语言,数据结构是对C语言的进一步应用。

2、C语言与数据结构的关系及存在的问题

2.1 C语言与数据结构的关系。C语言课程是计算机专业的一门语言类基础学科,主要是培养学生学会程序设计中C语言本身的一些语法、语句与程序结构。C语言是一种面向过程的程序设计语言,它具有结构化的控制语句、多种类的数据类型、比较强大的图形功能,适用范围较大。C语言课程是所有的程序设计类课程的基础,它主要培养学生的编程能力。

数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。它主要研究在计算机上进行储存、删除、修改等数据处理。数据结构课程注重培养学生的逻辑思维能力和分析解决问题的能力,提供解决实际问题的算法思想。

C语言与数据结构这两门课程对于应用计算机解决一个实际问题来说是缺一不可的,密不可分的。从课程内部的知识结构看,C 语言中体现了数据结构的思想,数据结构中应用了 C 语言的知识。

2.2两门课程间存在的一些问题。前面提到,C语言与数据结构存在着密切的关系,在传统的教学中就存在着一些弊端,传统教学中C语言与数据结构是分开教授的,分上下两个学期来完成,数据结构中有些地方需用到C语言中的知识加以支撑,来实现算法与结构。

3、C语言与数据结构课程整合

由于C语言与数据结构的关系及其授课过程中存在的一些问题,有必要对C语言与课程结构进行课程整合,使理论知识能够与实践操作结合起来,且能节省时间,使学生能够很好的掌握这两门课程应该学到的内容。

若是要进行C语言与数据结构的课程整合,最主要的就是要从课程的内容入手,只有将内容整合好才能够进一步的完成课程整合。内容整合好之后,在课堂上教授才更加的有条理、紧凑,便于学生对C语言与数据结构课程的学习与掌握。

从教材中可以看出,C 语言和数据结构两门课程中知识点有重复的、也有相互关联的。因此课程制定要化散为整,去掉重复的内容,使知识能够合理的贯通,达到良好的教学的效果。

这门课程还是需要分两个学期来讲,第一学期注重语言基础和简单数据结构和算法实现,使学生能够对C语言数据结构的算法知识有相当的了解、会进行简单的算法实现。第二学期注重算法实现和设计,同时介绍C的高级应用。

4、整合后教学方式的多元化

传统的教学主要是采取以教为主的“填鸭式”的教学方式,课堂的教学显得较死板,通常是教师的“一言堂”,在进行课程整合后,要采取多元化的教学方法和手段以提高课堂教学的质量,从而激发学生的学习兴趣,达到良好的课程教学的效果。

4.1教学目标的设计。教学目标的设计对课堂的质量是非常重要的。它是教学设计过程的基本要素之一,是教师在完成教学任务后要达到的课程要求或标准,同时也对教师课堂教学实践活动起到指导的作用。教学目标的设计主要是根据它的三个维度来设定知识、技能、情感与价值观。要能够非常直观的体现学生学完C语言与数据结构课程之后要达到怎样的标准,学生应该具有哪些能力。

4.2课堂教学设计。C语言与数据结构课程整合后,课堂教学中的教学设计要更加的丰富多彩,课堂上既对理论知识进行讲解,也对学生进行动手训练。因此在整合后的课程教学过程中,可以通过以下几个方面来组织教学活动。

(1)激发学生的学习兴趣,培养学生的学习动机。教师要利用用现代化的教学设备,如把多媒体、PPT课件、Flas等运用到教学中;还可以采取兴趣驱动案例教学法,将与课程教学过程相关的案例引入到课堂当中,来激发学生的学习兴趣,培养其学习动机。俗话说的好兴趣是最好的老师,只有使学生产生了学习的兴趣才能够更好的进行课堂的学习。

(2)创设学习情境,使学生能够融入课堂。

创设学习的情境,让学生来扮演相应的角色,使学生体验每个变量的变化过程,增强感性认识,使学生产生学习的兴趣,由于表演更加的直观,能够引起学生的注意,使观看的同学愿意去关注,参与表演的学生也能够更深刻的理解程序,使同学们能够自主的去探究知识,学习知识。

(3)进行课堂讨论,项目驱动式教学

课堂中充分发挥学生的主体作用,学生进行讲解,互相讨论,老师在课堂中只起到引导、指导、监督、评价的作用。可进行项目驱动式教学,把同学进行分组,根据每节课所讲授的内容,给学生留一些小的项目,使学生进行分组练习,不仅起到复习的效果,还能够培养学生的实践操作能力及团结协作能力等。

5、整合后的教学评价设计

教学评价是教学活动中必不可少的一部分,由于仍是分两个学期来上,第一学期主要学习的是一些理论的知识,因此可以用平时成绩加期末的书面考试成绩来考核。第二学期主要是对编程及动手操作能力的培养,因此考核时要以项目的完成情况作为主体。最后对两个学期的考核进行综合,从而对学生的两门课程作出合理的评价。

6、总结

本文分析和探讨了C语言与数据结构课程的关系及其两门课中存在的问题,提出了C语言与数据结构进行课程整合的思想,针对C语言与数据结构整合后的课程内容、目标,教学模式及教学评价方式等几个方面给出了一些建议,从而提高两门课程的教学质量及学生的学习效率。

参考文献:

[1]景凌凌.高职教育多元课程评价视野下学生职业能力培养机制探究[J].职教论坛,2013.

c语言教学论文范文10

[关键词] C语言 教学改革 问题

C语言是一种计算机程序设计语言,是一种面向过程的计算机程序设计语言,它是目前众多计算机语言中举世公认的优秀的结构程序设计语言之一。它既具有高级语言的特点,又具有汇编语言的特点。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,不仅仅是在软件开发上,各类科研活动都可能用到C语言。

一、高职院校C语言课程教学现状

根据当前高职院校学生的基本素质和特点,高职院校的C语言教学主要有两大部分:理论知识和上机实验。在大部分的高职院校中,C 语言的教学内容侧重于基本原理和基础应用,强调过程性知识的学习和实践;部分带有研究性质的高职院校C 语言课程的教学内容侧重于理论和算法的学习,重视研究能力。高职院校的学生基础知识薄弱、学习自主性较低,对于编程语言很多学生理解不了,并且由于英文水平不高,看到稍长的程序代码就会产生恐惧心理。此外,由于 C 语言本身数据类型多、运算符丰富、语法结构多变,这就更使得学生难学、教师难教。

二、高职院校C语言课程教学存在的问题

1.学生问题

高职院校的学生是国家经济发展的重要人才资源之一,其成长、成才、择业、就业受到政府与高校及社会各界的广泛关注。但是我们也应该清醒的认识到,高职院校的学生存在着自己的特点,他们普遍存在基础相对较差、心理自卑感较强、思想不稳定、接受能力相对较弱的特点。因此,就决定了在学习C语言这样的思维和动手能力要求较强的学科时存在着一定的困难。

2.学校的问题

高职院校与本科院校的培养目标存在较大差异,高职院校培养的学生主要是企业基层从事技术应用、生产组织、工艺实施、各类管理及具有较高技能的操作人员,用人单位提供的也大多为“高级蓝领”或“蓝领”岗位。因此学校在培养过程中只是注重一般技能的培养,很多还停留在基础理论知识的培养阶段,没有注重动手实践能力的培养。

3.教师的问题

由于我国近几年实施了高等教育的改革,尤其是各个高校的扩招,学生人数的不断增加,学校的老师相对增长较慢。这就使得部分教学能力优秀的老师主要完成对本科以上学生的教学工作,高职院校的老师很多都是由助教等在教学方面能力相对较弱的老师承担,因此也给C语言教学带来了一定的影响。

三、高职院校C语言课程教学改革措施

1.教学目标的改革

虽然高职院校的学生将来大部分从事的是应用类的工作,但是在教学目标的设置过程中也要相对提高对高职院校学生的教学目标的设定,应该根据市场的需求来定位高职院校的学生培养目标。对高职学生而言,应要求其掌握C语言基本语法和常用算法,具备基本的编程素养,要将精力集中在解决实际问题上,以应用为背景、以程序设计方法为主线、以语法和结构为基础、以培养能力和提高学习兴趣为目的、变应试为应用,让学生从多角度、以多方式了解和掌握C语言以及程序设计的核心。

2.培养学生兴趣

大部分高职院校的计算机课程都是在一年级开设,这时绝大部分同学没接触过程序设计方面的知识。为了使初学者能尽快地掌握计算机程序基础知识,在课程讲授过程中,要特别注意培养学生兴趣。初接触计算机时,很多学生感到新奇、好玩。随着课程的不断深入,大量的规则、定义、要求和格式出现,加之高职院校的学生基础较差,就很容易在学生心里产生枯燥无味的感觉。因此,能否把好奇转化为学习兴趣是C语言教学成功的关键。为了把学生的好奇转化为学习兴趣,授课时我们应改变过去先给出定义和规则、后讲解编写的讲授办法,而是从具体问题入手,多使用形象的语言、情境和实例来讲解,引起和培养学生对C语言的学习兴趣,让学生积极主动、自觉独立地获取C语言知识。同时,高职院校的学生也要加强自身程序语言基础知识的强化训练,不断增强自身学习计算机程序语言的能力。

3.改进教学方法

由于大部分学生在学习之前都没有接触过程序设计,因此在教学过程中要加强对学生的引导,只有正确的引导才能够使学生得到很好的消化。在教学过程中切忌照本宣科式讲解,而必须合理编排教学内容,坚持由浅入深、循序渐进地开展教学活动,使学生首先对该课程产生兴趣,形成进一步学习的好奇心,打消学生的畏难情绪。C语言中的概念非常多且复杂,在教学中应保证学生掌握基本概念并能在程序设计中熟练地应用。对此,可以把教学内容中的难点分散,以缩小台阶,循序渐进。其次,实现课堂上的互动,教学的效果也会显著地提高。同时教师在教学过程中,应当注意设置疑难问题,引导学生思考和探索,留给学生时间揣摩、讨论、解决问题,让他们的思想活跃起来,从而更好地从思考中获得能力的提升。这种教学方法才能够充分调动学生的积极性和主动性,才能够使学生更好的理解和运用C语言。

4.加强实践

学习C语言不能停留在学习它的语法规则,而应学会编写C语言程序,解决实际问题。即把C语言作为工具,描述解决实际问题的步骤,由计算机实现解题。上机实验是学习程序设计语言必不可少的实践环节,C语言灵活多变,需要通过编程实践去真正掌握它。而且,也只有通过上机才能检验自己是否真正掌握C语言的编写、自己编写的程序是否能够正确地解题。对于C语言的学习步骤,可以概括为学习语法规定、掌握程序设计方法、提升程序开发能力。这些都必须通过充分的实际上机操作才能完成,因此学习C程序设计语言除了课堂讲授以外,必须保证足够学时的上机时间。在高职院校的实际教学中,由于机器设备不足、上机课时安排较少等原因,学生上机实验的机会非常少。因此在这种情况下,学生更需要的是有效地利用C语言课程上机实验的机会,多向教师请教,从而尽可能迅速地掌握用C语言开发程序的能力,为今后的深入学习打下一个良好的基础。同时高职学校要克服困难,要多安排实践课程,过程由易到难,以逐步提升学生对C语言的运用能力。

参考文献

c语言教学论文范文11

摘要:本文在分析了C语言程序设计课程的教学现状和教学困境的基础上,对比自然语言和程序设计语言的共性以及C语言的特殊性,提出了“从概念入手,侧重程序阅读和程序设计能力培养”而非“语法研究”的教学角度。

关键词:C语言;程序设计;教学内容;教学角度

中图分类号:G64 文献标识码:A

1教学现状

在高等学校的本科教育中,“C语言程序设计”几乎成了所有专业的必开课程,从计算机科学与技术、软件工程、网络工程等相关专业,到电子信息类理工科各专业,乃至理工科院校的所有非计算机专业,有的是专业基础课,有的是公共必修基础课,有的是“非计算机专业的计算机基础课”。只是课程名稍有差异,常见的有“C语言程序设计”、“高级语言程序设计”、“C语言”、“C程序设计”、“结构化程序设计”等。无论叫什么样的课程名,也无论是哪类专业,其课程的教学要求和教材选用却无太大差别,只是课时分配差异较大。

从网络调查的16所不同类型高校的“C语言程序设计”教学大纲看,普遍都包含“通过本课程的学习,使学生了解有关程序设计的基本概念、术语及C语言的特点,掌握C语言基本数据类型、语法规则、程序控制结构、常用的标准库函数,培养学生的程序设计技能,初步积累编程经验”的教学基本要求;约百分之八十左右的“C语言程序设计”课程都选用由谭浩强主编、清华大学出版社出版的“C程序设计”作为主教材;课时分配从30~108课时不等,其中80课时以上的多为应用型本科院校的计算机相关专业以及综合性大学的非计算机专业,理论课时与实验课时的比例一般为1:1到1:1.2。与此同时,其他专业基础课(如计算机组成原理、操作系统、数据结构等)的课时一般为54课时,最多不超过72学时。相比之下,“C语言程序设计”所占课时是其他专业基础课的1.5倍至2倍。

从教学目的看,非计算机专业的“C语言程序设计”课程主要目的是“掌握语法规则和程序结构,具备一定的程序设计能力”,而计算机相关专业的“C语言程序设计”课的教学目的则要分为三个层次,一是使学生全面理解计算机程序设计语言的基本内容和结构;二是通过算法掌握程序设计的基本方法和步骤,并具备一定的程序设计能力;三是为后续课程的算法描述和其他程序设计语言的学习奠定基础。

2教学误区

从以上的教学现状(特别是课时分配)看,长期以来,“C语言程序设计”的课程教学存在“教学内容背离教学要求和教学目的”的误区,主要表现在教材误区、讲授误区和考核误区三个方面。

2.1教材误区

国内高校的“C语言程序设计”课大多选用谭浩强主编、清华大学出版社出版的“C程序设计”[1]为主教材,目前使用的是2005年7月修订出版的第三版,教材共363页,主体内容分为14章,其中,第3章的数据类型与表达式占用30页,第4章的格式输入输出占用12页,前9章共占用218页,后5章共占用145页。占用如此大篇幅的原因是教材中除了介绍相关语法格式外,还增加了相当多“特殊格式”和“特殊情况”的解释和说明,因此,该教材的最大优点就是“内容详尽、解释清晰”。然而,对于初学者来说,学习计算机程序设计语言就是为了“为计算机描述求解问题的过程”,过于详细但又远离现实问题的“特殊格式”和“特殊情况”的解释,使得学习内容复杂化,增加了程序设计语言学习的难度,误导了学习者的学习重点,由此也赋予了该教材无法掩饰的缺点,那就是教材编写的指导思想和教材内容的组织脱离了高校各专业“C语言程序设计”课程的教学目标,过分强调语法细节而忽略了程序设计语言的“正向表达能力”的应用,过分强调“语言的灵活性”而导致教材主体内容的“复杂化”,从而误导“C语言程序设计”课程的教学内容朝着“重语法学习、轻算法描述”的“语言研究”方向发展。

2.2讲授误区

由于教材内容的“复杂”,课堂讲授自然需要较多课时,教学重点当然也放在了“语法研究”上。从网上下载的“C程序设计(第三版)”的配套教学课件以及有关院校的“C语言程序设计”教学课件的内容组织上可以清楚的给出以上判断。“语法研究”型的课堂讲授,更加放大了教材对“C语言程序设计”课程内容的“扭曲”程度,给学生提供了错误的程序设计语言学习方法,把简单问题复杂化,更为严重的是,挫伤了学生学习计算机程序设计语言的兴趣和积极性,把本应“主动学习”的课程成引入了“被动学习”的歧途,直接导致“懂语法、会做题,但不会编程序”的教学后果。

2.3考核误区

多年来,“C语言程序设计”的主体考试内容就是“语法”,无论是选择题、填空题还是程序阅读题,大多都无法逃脱“语法”的束缚。考试方式以笔试为主。这在某种程度上肯定了“语言研究”的教学角度,促使“C语言程序设计”的教学重点更向“语法研究”的方向倾斜,最终误入“增加课时,强化语法,还是不会编程序”的怪圈。

3应有的教学角度

按照网上调查的各专业教学大纲中“培养具有一定程序设计能力”的教学目的,“C语言程序设计”课程的教学落脚点应该更确切的理解为培养“能用程序设计语言描述求解问题过程”的一般程序设计者,而不是造就“全面掌握程序设计语言语法、能设计高效、难懂程序”的程序设计语言方面的“作家”。因此,“C语言程序设计”课程教学相当于自然语言中的“基本语言能力”教学,而不是“语言研究”或“高级写作”能力培养。

3.1自然语言与计算机程序设计语言

计算机程序设计语言是用人和计算机都能识别的方式描述计算机求解问题过程的过程描述语言,它具有和人所使用的自然语言相同或相似的组成和结构特点,对于已经掌握了至少一门自然语言(比如汉语或英语)并具备一定文化程度的人来说,学习一种计算机程序设计语言并非难事。自然语言的基本组成包括符号集合、字、词、句、数据及其运算规则等基本要素,学习过程包括认识符号、发音、识字、组词、学语法并造句、学文法并写短文、练习写文章等基本阶段,在具备了基本的语言能力之后,扩充词汇量和提高写作能力将成为终身学习的基本内容。按照自然语言的基本组成和学习过程,也可将计算机程序设计语言的基本组成归纳为字符集、标识符(常量、变量、保留字等)、数据类型、运算符、表达式、语句、程序格式等基本要素,其中,字符集和数据类型是定义程序设计语言的基础,字符按一定规则组成标识符,用来充当常量名、变量名或其他标识,在自然语言中被人们公认的特殊标识符被赋予特定的语言含义,专门为语言系统所用(用户不得再次定义其意义),称为保留字;字符集中的特殊符号(如+、-、*、/)被赋予特定的运算意义(如加、减、乘、除)称为运算符;不同数据类型的常量、变量用运算符按一定规则连接起来组成的式子就构成表达式;将特定的保留字与表达式等语言要素按照语法规则组合起来就形成相应的语句;将语句按照要描述的求解问题的逻辑顺序排列起来,就构成了某种程序设计语言求解特定问题的一段程序。

3.2C语言的特殊性

一方面,C语言是程序设计语言的一种,具备一般程序设计语言的基本组成要素和结构特点。另一方面,C语言能成为面向过程的结构化程序设计语言的代表,也有其自身的特殊性。首先,C语言的数据类型极为丰富。除了基本数据类型外,还有构造类型、指针类型、空类型和用户自定义类型,其中,构造类型包括数组、结构体(struct)、共用体(union)和枚举类型(enum)等四种数据结构。其次,C语言具有位操作能力。除了能够对各类变量进行操作外,C语言还具备“按位”进行逻辑“与”、“或”、“非”、“异或”运算和“左”、“右”移位运算,这使得C语言具备了更强的系统开发能力。第三,C语言具有显著的结构化程序设计能力,并通过完整的函数定义来实现。第四,C语言的最大特点就是“语法限制不严,解释灵活”。第五,C语言允许直接访问物理地址,可直接对硬件端口进行操作。第六,C语言没有输入/输出语句,信息输入/输出功能由标准函数库中相应的I/O函数来完成。

C语言的这些特殊性,决定了C语言的教、学过程不同于其他程序设计语言的教学过程。

3.3C语言的教学角度

根据一般程序设计语言的基本组成与结构特点,结合C语言的特殊性,“C语言程序设计”课程的教学角度应该是:从介绍程序设计语言的基本概念入手,重点介绍语言的“正

向”设计功能而非“特殊格式”或“特殊语法”说明,侧重学生的程序阅读和程序设计能力培养,从教学内容的广度和深度两个方面,恰当把握教学角度。

“C语言程序设计”课程的内容可分为三个基本模块,教学过程从第一个模块切入,逐渐扩展到第二和第三个模块。第一个模块可称为“程序设计语言公共模块”,主要包括程序设计语言的基本概念、程序设计语言的基本要素(字符集、标识符、常量变量以及保留字、基本数据类型、运算符、表达式、语句与控制结构、程序结构以及程序书写规范等)以及输入/输出格式等内容;第二个模块是C语言的主体,主要包括函数、数组、指针、文件等;第三个模块是高级编程内容,主要包括结构体(struct)、共用体(union)、枚举类型(enum)以及用户自定义类型等。

在教学深度方面,各模块的教学重点应放在“规范的语法描述和直观易懂而且正确的语义表述上”,避免涉及各种过细的“不符合人类阅读习惯”的语义描述,暂时避开“特殊格式”或“特殊情况”的纠缠,摆脱“研究语法”的错误向导。在此基础上,第一模块的教学可与自然语言相比对,通过学生已有的自然语言学习经验和语言要素,使学生快速建立程序设计语言的基本概念,正确理解程序设计语言的基本要素及其关系,掌握基本语法和程序基本控制结构(顺序、选择、循环),并通过算法归纳求解问题的过程,正确理解算法不同描述方式(自然语言、传统流程图、N-S流程图、伪代码、程序设计语言)的作用和差异,特别是从“问题”到“程序”的渐进转化过程,从而培养学生的基本程序设计能力。通过第二模块的教学,使学生明确函数、数组、指针、文件等概念和作用,掌握它们的定义和引用方法,能进行相应数据类型的编程,进而掌握用函数定义的结构化模块程序设计的方法;通过第三个模块的教学,将程序的数据处理能力扩展到结构体、共用体、枚举类型以及用户自定义类型等复杂数据类型的处理上来,通过恰当的例子应用这些数据类型,向学生展示C语言强有力的数据表示和处理能力。

另外,可以将C语言中的“语法灵活性”和不同部分的各种“特殊情况”分类总结,归纳整理成“语言参考手册”等形式,以附录的形式提供给学生,以便需要时“备查”。这样既可节省教学课时,又可向学生提供学习语言的主动权。

3.4教学策略和方法

“C语言程序设计”属语言类课程,教学过程充满了逐步完善和熟练的基本特点,因此,从教学安排的策略上要分重点、分阶段逐步进行,每个阶段的教学方法应该采用建立在一定基础上的有重点的“部分教学法”,以核心内容为基础,向外逐渐延伸,部分学习,渐进掌握。尽可能避免不分主次、不论难易、不顾急缓,盲目一次性扫清各类知识点的“地毯式”教授方法或学习方法,同时强调自学和上机验证,强化在特定环境下(如Turbo C++ 3.0)的程序设计训练,做到“精讲多练[2]”,从小程序练起,逐渐过渡到求解较大或实际问题的程序设计上来。

4结束语

从目前的教学现状看,无论是计算机相关专业,还是理工科的电子信息类专业,乃至综合性大学的非计算机专业,“C语言程序设计”的课程教学均占有重要的教学地位,在全面提高教学质量和教学效率的今天,不同类型专业结合自身优势和程序设计语言类课程的特点,选择合适的角度组织和实施“C语言程序设计”课程的教学活动非常重要,而且很有必要。笔者的教学实践证明,避开“语法研究”的程序设计教学不仅可减少课时,更可提高学生利用程序设计语言“表述求解问题过程”的能力。

参 考 文 献

c语言教学论文范文12

关键词:非计算机专业;C程序设计;编程能力;提高

中图分类号:G642文献标识码:A文章编号:1009-3044(2009)13-3446-02

1 引言

随着高科技在各行各业的普及与深入,计算机已成为一种处理专业领域问题的有力工具。是否掌握计算机知识和技能已成为衡量当代大学生适应社会发展需要的重要标志。非计算机专业的《C程序设计》[1]课程的教学目标是通过学习使学生熟练C语言,掌握程序设计的思路,并具有用C语言编程的能力;培养学生利用计算机技术解决工程实际问题的能力。但在实际教学过程中发现,学生对课程的基础知识和基本概念的理解和掌握比较扎实,但在灵活应用C语言编制程序的能力方面就比较薄弱,处于看得懂、编不出的状态。

对于一些非计算机专业的学生,他们普遍对为什么要学习编程语言尤其是C语言感到困惑。另外计算机学科概念的基础术语比较抽象,程序设计语言的语法枯燥,编程的算法比较复杂,学生普遍存在畏难心理[2]。由于以上几方面的原因导致学生在学习过程中没有学习的兴趣及动力。所以在教学中如何提高学生的学习兴趣和消除学生的畏难心理是提高学生编程能力的关键。本文针对非计算机专业学生的特点,从理论教学和实践教学两个方面作了一些探索,收到了较好的效果。

2 理论教学上的探讨与实践

一直以来,程序设计课程都采取“理论+实践”的教学模式。理论课主要教授语法、算法;实践课主要是验证性、设计性的内容。本人认为要提高学生的编程能力,理论课应该在如何提高学生的学习兴趣上下工夫。

2.1 利用第一堂课充分调动学生学习兴趣

《C程序设计》课程的第一堂课一般是概述,介绍C语言的产生、发展以及特点,初步认识C程序,介绍编辑、编译、运行C程序的步骤。但如果照本宣科地向学生灌输书本上的知识,不免让学生感到枯燥。

本人认为第一堂课应该充分调动起学生学习C语言的兴趣和热情。在简单明了地介绍上述基础知识外,应该将重点放在让学生了解为什么要学习C语言程序设计、学习C语言是件很有意思的事情上。比如本人会把用C语言编程解决实际问题作为一个切入点,以过河游戏为例。首先和学生一起玩游戏,将课堂气氛活跃起来。学生在玩这个游戏的时候,一方面启发其解决这个问题的方法,比如提出“规则”、“遍历”等概念,一方面提出人在解决问题时的“力不从心”。然后不失时机的向学生展示自己编写的解决该问题的程序,并向学生提出算法的概念。告诉学生,C语言可以解决现实中的实际问题,编程就是将自己所想的用另一种语言表达出来而已。

这样,在一定程度上消除了学生对程序设计课程的恐惧心理,充分调动起其学习编程的兴趣和热情,学生普遍进入一种迫不及待、跃跃欲试的状态。

2.2 合理调整授课顺序

在C语言教学中,无论是教材还是教师上课,一般都是先介绍数据类型和表达式,再介绍各种语句的语法规则,然后是数组、函数、指针等等。这种编写安排或教学模式不利于学生编程能力的提高[3]。学生在学习C语言时,开始怀着神秘兴奋的心情进入课堂,但随着几节关于大量难以理解和记忆的新术语、新规则的介绍,枯燥乏味的例题分析后,学生马上又产生了厌学心理,一开始的热情也随之减弱甚至消失。

针对这种情况以及非计算机专业学生的认知特点,本人在教学过程中,合理调整了授课顺序。本人主张应使学生先对程序设计有个宏观的认识,然后才是细节上的深入。所以在第一堂课后,先讲授程序设计结构,中间穿插讲解必要的基础知识,然后在学生上机过程中点出、强调,使学生在特定的编程环境中吸收这些基础知识。

3 实践教学上的探讨与实践

《C程序设计》是一门实践性要求很强的课程,只有通过上机实践,学生才能真正理解消化课堂上的教学内容,纠正原来理解上的偏差,加深对C语言的了解。学习的能力和方法比掌握的知识更为重要,教师更应该教会学生编程领域的学习方法,培养他们的学习能力,而不是仅仅教给他们知识点。在上机实践环节本人作了以下几个方面的研究和尝试。

3.1 递进启发式编程

在非计算机专业学生编程的时候,会觉得代码处处出错,无从下手,似乎只有在教师的指导下才能完成编程。因此,有必要找到一种有效的自我提高的方法。本人在实践教学过程中发现,对于初学者,应该循序渐进地进行启发,教会学生编程的方法。

第一阶段 抄代码。在每个新知识点的学习后,提供给学生范例代码。学生通过读懂、调试通过程序,感受新知识点的应用方法。

第二阶段 填空补充。在读透程序的前提下,设计新的题目,应用前面程序的知识点。在这个阶段不能全部把程序代码给学生。采取填空的方式,让学生去补充完成代码,并上机调试。

在这个阶段仍然要分步进行。开始的时候让学生补充单个的语句,最后以补充程序段的方式来提高学生的编程能力。

第三阶段 设计程序。在前两个阶段的基础上,让学生独立设计出应用相关知识点的程序。这里其实也是一种模仿阶段。

这种学习方法一方面强调了学习的渐进性,降低了学习的难度,能力得以逐步提高;另一方面可以逐步使学生从依赖老师向独立解决问题而转变。

3.2 鼓励学生读出错信息,学会自己解决问题

学生在编程的过程中,往往一出现问题,就不知道该如何是好,不会自己去查错。本人在教学过程中强调编译环境中编译信息的查看,鼓励学生遇到问题自己发现问题、分析问题、解决问题。在出错中学习,从而提高学生的编程能力。

3.3 重视程序调试

在C的编译编译环境中一般都有调试功能。虽然对于非计算机专业的学生没有调试程序的要求。但本人认为,学生通过调试不但可以对程序进行逻辑错误的查找,还可以在调试过程中更深层次地理解程序的执行过程。

4 结束语

提高非计算机专业学生的编程能力,是公共程序设计课程教学改革研究的一个课题,需要在教学的各个方面进行探索和研究。本人在提高学生学习兴趣以及消除学生畏难心理等方面总结了几种行之有效的方法,并应用于实际教学中。学生编程能力得到了很大的提高,取得了很好的效果。

参考文献:

[1] 谭浩强.C程序设计[M].3版.北京:清华大学出版社,2005.

[2] 谢书良.试论学习程序设计语言课程的心理障碍及压力来源[J].计算机教育,2008(20):120-122,199.

[3] 李妮.公共《C语言程序设计》课程教学改革的探讨[J].电脑知识与技术,2008(23):1094-1095.