程序设计语言(精选5篇)

2024-03-29 09:55:39

熟读唐诗三百首,不会作诗也会吟,以下是编辑为大家整理的程序设计语言(精选5篇),欢迎参考,希望可以帮助到有需要的朋友。

程序设计语言 篇一

关键词:C语言程序设计;重修课程;教学方法

中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2017)27-0167-02

近年随着高校招生规模的扩大,学生数量一直呈增长趋势。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的调试窗口做对照:

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

3.强调算法的重要性。算法设计是C语言程序设计的灵魂,编程成功的前提是要分析出正确的算法,因此在教学中必须将算法设计作为程序设计课程的先导和教学重点,以培养和提高学生分析和解决问题的能力。笔者曾以求取任意正整数平方根为例,分别讲解了泰勒展式法与牛顿迭代法,并编写程序为学生展示了选取不同时间复杂度的算法对求解问题造成的影响。对于非计算机专业的C语言的重修学生而言,能够分析与设计简单的算法是我对他们的基本要求。要时时向学生传输这样一个观点:程序设计语言无论多么强大,多么流行,都是一种工具,而程序设计的根本目的是为了解决生产生活实际中的问题,对于解决问题而言,算法才是最重要的。

总之,以上是本人在C语言程序设计重修课教学过程中的一些体会,不一定完全正确,还需要我们不断地去探索,取长补短,不断完善。

参考文献:

[1]常本勤。基于问题的学习模式在程序设计类课程教学中的应用[J].计算机教育,2010,(2).

[2]冯小强。C语言教学方法的探索[J].科技信息,2010,(28).

程序设计语言 篇二

高职计算机专业的培养目标,是使学生掌握计算机软件、硬件的基本理论、基本方法和基本技能,能够从事计算机软硬件维护、一般应用系统的开发设计及相关领域的应用技术工作。程序设计语言课程是高职计算机专业的核心课程,对其教学内容、教学方法的改进,已经成为高职院校普遍关注和重点研究的课题。

一、程序设计语言教学中存在的问题

l、教学课时少

与普通高校本科计算机专业相比,一方面,高职学生的学习基础相对较差,导致他们接受较慢,学习困难;另一方面,目前我国高职院校的学制一般是3年,计算机专业的程序设计语言的课时较少,这就导致了实际教学中存在理论课时和实践课时不够的情况。因此,教师只能传授最基础的程序设计知识,不能提高学生应用程序设计语言解决实际问题的能力。

2、学生的学习动力不足

有些学生认为学习程序设计语言既枯燥又无用,不如学习多媒体或网络的一些课程;有的学生是因为学习程序设计,需要较强的逻辑思维能力和一定的数学、英语基础,因而在学习程序设计时显得力不从心,不能掌握应用计算机解题的基本思维方式,对计算机程序设计产生畏惧感,就知难而退了。

3、实践环节不能满足高职教学的要求

计算机专业本身就是技术应用专业,而且高职院校是以提高实践能力为主的职业教育。然而,现今高职程序设计语言教材,存在的普遍问题就是实践性教学内容不足,没有体现教材的实用性和职业性,不能保证对学生实践能力的培养,不能体现高等技术应用型人才的培养要求,缺少高职教育特色。

4、教学方法落后、考核方式单一

高职程序设计语言课程一般采用的教学方法是教师课上讲授加学生实验的形式,教师在理论课上常常采用“填鸭式”教学,学生很少主动思维,编程题不能独立作答案。上机实验时学生仅仅是对书本上现有的一些实例进行编辑调试,一旦调试成功就完成任务。这种教学方法根本不能让学生掌握如何从一个实际问题人手分析问题、解决问题。单一的笔试考核方式也使教师和学生忽视实践课环节,舍本逐末。

二、解决程序设计语言教学存在问题的对策

l、调整教学安排,改进教学内容,适应高职人才培养目标要求

高职计算机教育必须突出“以培养技术应用型人才”为核心的教学思想,注重学生实践能力的培养。针对程序设计语言课程而言,主要包括三个方面。

一是在课程的设置上针对课时少和学生的特点,可以在学习程序设计之初,先开设一个结构化程序设计语言,如C语言、PASCAL或FORTRAN等。适当增加其课时,使教师足以引导学生独立应用计算机程序设计解决实际问题。计算机程序设计语言虽多,但程序设计的基本知识和方法相同,结构化程序设计语言易于理解和掌握,学生一旦通过它掌握了应用计算机解题的方法和技巧,就可以触类旁通,很轻松地学习其他程序设计语言。

二是针对高职程序设计语言课程普遍存在课时少的问题,教师要认真设计课堂知识结构,不必追求学科的系统性、完整性,使教学内容充分体现应用性的特点。对易学、易懂的知识及一些基本概念有针对性地讲解,对难记的、难懂的知识少讲,与今后运用无关的、理论性过强的不讲,突出重点,抓住关键,将重点放在实际工程应用中需要涉及的知识和通用性较强的编程应用上来。

三是教师在授课的同时,为学生传授良好的学习方法,提高学生的自主学习能力。计算机知识更新很快,尤其是软件的发展更是日新月异。学生在课堂上学到的知识与技能远跟不上社会发展的要求,教师必须使学生认识自主学习的重要性,培养学生学会学习。这样不但可以提高课堂学习的效率,而且可以使学生在新旧知识间构建起新的信息链接,形成新的知识与技能,终身受益。要精讲多练,因需施教。

2、采用多种方法,调动学生的学习积极性

首先要使学生充分认识到程序设计语言的重要性,如投其所好,向其讲解一些小动画制作、软件维护或网络应用的方法。其次,要帮助学生建立学好程序设计语言的自信,如在开课之初带领学生学习教材目录部分,说明进度和标记重点、难点章节,做科目介绍时给学生的压力适当,使其消除对计算机程序设计产生的畏惧感。对学生要以鼓励为主,多关注学生,了解学生的学习状况,有的放矢,并根据情况调整讲课内容、重点和进度。

3、解决实践性教学内容不足问题的措施

一方面在教材的选用上应尽量地选择带有大量实验内容的教材,以提高高职学生运用该程序设计语言进行编程和综合创新的能力。另一方面任课教师也可以根据学生的学习情况,自己设计实验课内容。而且,要加大实践教学的比重,提高学生的实践应用能力。具体来说可以设置两个实践环节,即课内实验与课程设计。程序设计语言课程的实践性较强,仅仅通过课内实验环节是很难达到预想目标的,为此在课程基本内容结束后应增加课程设计教学环节。

4、改进教学和考试方法

一是加强课堂互动,注重启发式教学。教师要在激发学生创新意识的基础上,加强培养学生发现问题、提出问题和解决问题的能力。在教学中可利用新旧知识的联系,提出需要解决的问题,并由易到难,设计一系列具有启发性的问题,引导学生一步步完善程序设计。

二是精心设计教学实例。零散实例可以加深学生对某些知识点的理解,但实例的内容不连贯,不利于学生从整体上掌握教学内容。因此,还要设计一个规模较大的、典型的、学生熟悉且感兴趣的核心实例贯穿于教学全过程。该实例从小到大,随章节的发展开而逐步成长,呈现为逐步进化的多个版本。例如,在visualBasic程序设计教学中,可以设计一个“学生成绩管理系统”作为核心实例,贯穿始终,从而加深对该程序设计语言的整体理解。

三是将软件工程的思想融合到程序设计语言课程的教学过程中。教师在教学中从一开始就明确应用于工程开发的教育目的,以工程实践的方式,将软件工程的基本观念与课程的全部内容糅合为—体传授给学生。

四是采用书面考试、上机考试、课程设计相结合的方式全面考核学生学习效果。书面考试可以侧重于对基本概念的理解和掌握方面,以考查学生对基础知识的掌握情况;上机考试可以让学生在规定的时间内对给定的设计题目编出程序,并在计算机上调试通过,以此考查学生的综合应用能力和快速编程能力;课程设计可将学生分成若干小组,每组布置一个稍大的有实际应用背景的程序设计题目,由小组成员分工完成,目的是考核学生运用程序设计语言解决实际问题的能力和协作编程的能力。

参考文献:

[1]叶幼林.对计算机C语言教学的探讨与研究[J].中南民族大学学报(人文社会科学版),2004,(4).

[2]解晨光.关于高职高专计算机教学改革的研究[J].教育探索,2006,(8).

[3]袁锋.谈VB程序设计教学方法改革的几个转变[J].中国成人教育,2004,(2).

程序设计语言 篇三

程序设计课程一直以来都是信息类专业的必学课程,而《C语言程序设计》又是很重要的一门专业基础课,对后续课程如数据结构、面向对象的程序设计、C#程序设计、.Net应用开发等而言,是非常重要的一门前导课。数十年来,《C语言程序设计》在信息类专业的基础课中有着不可取代的地位,该课程旨在培养学生熟练掌握程序设计的语法规则,形成良好的程序设计风格,为进一步学习后续课程奠定基础。教材作为一本工具书,是教师授课与学生学习的主要参考工具,拥有一本集科学性、完整性和趣味性于一体的《C语言程序设计》教材,是学生学好这门课程的必要条件。对于高职院校的信息类学生来说,能够满足自身学习需求,与教师课堂讲授相吻合,便于自己课堂之余进行知识反刍的教材更是必不可少的。

一、 《C语言程序设计》教材现状

高职院校的培养目标、教学模式、教学内容有其鲜明的特色,教材的建设更应该符合学生特点和学习需求。高职院校《C语言程序设计》教材经历了两个发展阶段:在高职办学的早期,高职教学的主要内容是具体的实用技术,不需要也没有教材,因此,高职《C语言程序设计》教材建设明显滞后。随着高职院校的不断发展与完善,诸多《C语言程序设计》的教材相继问世,尽管其中许多冠以“高职”字样,却依然存在不少弊端,主要表现在以下几方面:

(一)延续本科教材风格,不符合高职教学特点

继高职院校广被诟病为本科院校的“压缩饼干”后,高职教材也成为本科教材的压缩版,《C语言程序设计》的教材也存在此类问题。打开最新版的某一册“普通高等教育‘十二五’部级规划教材(高职高专教育)”的《C语言程序设计》教材,发现内容结构依然是C语言基础、顺序结构、选择结构、循环结构、数组、函数、位运算、结构体与共用体、指针、文件等章节,和任一册本科教材内容结构几乎一致,而每一章节的内容也基本是由例题、解题步骤、流程图、代码和课后习题组成的,延续了本科教材的风格,与高职所突出的培养技能型人才的特点不符合。

(二)内容枯燥,实用性差

目前,大多数《C语言程序设计》教材对语法规则的介绍着墨很多,枯燥无味、实用性差。比如,打开任一本C语言程序教材,会发现还有“编写判断一个数是否为素数”“编写斐波那契数列的前20项”这种与生活距离较远、无法吸引学生的案例,因此,使学生在学习过程中把精力多放在记忆各种灵活多样的C语言语法规则上,忽视了使用C语言解决实际问题的能力的培养。

(三)未能给学生提供充足的自学条件

作为高职信息类专业学生的第一门专业基础课,《C语言程序设计》与学生在进入大学之前所学的知识有着本质上的不同,尤其是让初学者理解并掌握“指针”“函数”“数组”等闻所未闻的概念有相当难度。因此,教材不仅是学生课堂学习的参考工具,更是学生课后进行知识反刍的指导书。目前的教材除了课后习题之外,并没有对学生的自学进行有效的指导和知识补充,不利于学生对C语言知识的理解与掌握。

二、 《C语言程序设计》教材建设的指导思想

鉴于当前《C语言程序设计》教材所存在的各种问题,根据实际教学过程中积累的经验和学生的反馈,我们认为《C语言程序设计》教材的建设应遵循这些方面:①教材内容应兼顾高职院校的教学要求中初学者的学习水平;②教材案例设计应兼顾知识性、趣味性和实用性;③教材主体内容应力求通俗易懂、深入浅出,能让绝大多数学生理解和掌握;④教材的建设应使学生能够理解并积极参与教学过程,引导学生积极思考,调动学生学习的积极性,针对学生的练习应建立由浅入深、由简单到复杂、由单一到综合的转变,形成学习梯度;⑤教材应提供参考依据,为学有余力的学生提供了解更多专业知识的条件,同时对学习进度缓慢的学生,也应该让他们课堂之余有具备咀嚼知识的自学条件。

三、《C语言程序设计》教材建设的具体举措

(一)围绕课程定位,精选教材内容

《C语言程序设计》课程的主旨是让学生树立程序设计的理念,而不仅仅定位于C语言本身的知识点上。因此,教材内容的设计应选择程序开发过程中所共有的知识点,尽量删减C语言本身所独有的知识点。比如,在顺序结构、选择结构、循环结构这三种基本结构的内容安排中,应把重点放在这三种结构的应用环境上,特别是围绕这三种基本结构的程序设计思想与方法,而应该弱化这三种基本结构的语法、格式,特别是应该减少输入输出的格式控制符的篇幅,只要让学生了解各种程序设计语言都有各自不同的语法格式规定即可;还比如,C语言在构造数据类型的内容安排中,要重点介绍引入构造数据类型的目的,而非构造数据类型本身的编写格式;此外,C语言对于程序设计非共性的知识,比如二级指针(函数指针)、文件函数等内容,则可以在教材中删减。

(二)遵循学习规律,重整教材结构

学生知识建立的过程是认知与实践交替运用的过程,单纯的认知与单纯的实践都不能形成完整的知识建构,知识学习的过程就是认知、实践、再认知、再实践的循环过程,知与行不断交替以达到统一。前文所述,程序设计类课程对于高职院校信息类专业的学生而言,是入学之后的第一门专业基础课,既没有前导课,也没有同期学习的同类课,而且与他们在大学之前所接触的知识完全不同,是一片极为陌生的知识领域。因此,在教材的结构设计中,应注重将内容由浅入深、循序渐进,切忌将难点重点集中,以免让初学者遇到太多难题,磨灭学习的积极性。比如,数据类型和变量的定义这部分内容,是《C语言程序设计》学习之初的内容,可与C语言程序的小案例结合起来做简单的介绍,目的是让初学者了解数据类型、变量定义的基本方法及作用,当学习了函数的知识之后,可以再对数据的存储、变量的定义过程、变量的作用域和有效性加以深入介绍;还比如,运算符与表达式这部分内容,可以在简单程序设计部分只告诉学生如何使用,让学生较快地进入编程阶段,而在学生学习过三种基本结构之后,再将运算符与表达式进行深入透彻的讲解,则学生能够将结构化程序设计与运算符表达式相结合,对知识的掌握更加完整和彻底。

(三)构造学习框架,强化设计思维

在以往的《C语言程序设计》教学过程中,当要求学生对某个案例进行编程时,学生通常了解程序生成的大致结构,但是对程序具体的编写过程就感觉无从下手,究其根源就在于C语言教学方式与实际解决问题的途径相脱离。当教学内容偏重于语法规则和编程格式的介绍而忽视培养解题思路与解题方法时,学生就无法独立编写完整的程序。因此,为使学生理解和掌握编程方法,教材中各章节在设计编程案例时,应建立一个学习框架,按照“变量分析”“设计思路”“程序代码”“运行结果”“说明与思考”进行设置――对于某一个具体问题,首先分析解决问题需要设置哪些变量及变量的数据类型,接着分析解决问题的具体思路及步骤,给出程序流程;然后,写出程序代码并调试运行,得出结果,并对重点语句进行注释;最后,针对程序设计和实现过程中容易出现的错误及需要注意的问题给出必要的说明,让学生能够充分掌握程序设计整个过程中的思考方法。

(四)针对学生学习特征,适当降低难度

教材的面向对象是学生,所以在教材编写过程中必须首先考虑教材内容与学生的接受能力,高职院校的学生与本科院校的学生在学习态度、学习能力和学习习惯上还是存在一定差距的,高职学生相对来说缺少学习的主观能动性和钻研精神,因此,在保证知识点丰富的前提下适当降低内容的难度是编写高职教材需要遵循的首要原则。其次,高职院校的学生应注重其实际应用能力的培养,在面向高职学生的《C语言程序设计》教材中,我们可以删除或简化难度较大又不涉及程序开发共性的内容,如:浮点类型数据的存储格式、函数指针、数组与指针的关系等内容可以删除;C自增自减运算、位运算、共用体、文件操作等内容可以只介绍基本知识点而不做深入讨论。此外,教材中例题和习题的编排也要注意难度适中,尽量选择贴近生活又较为简单的案例,便于学生理解和接受,并且使之在编程过程中产生兴趣,让学生易于上手,在学习的过程中不断产生成就感,乐于对新知识进行更深入的挖掘和探索。

(五)夯实理论基础,注重实验环节

虽说高职学生注重的是技能培养,但作为信息类学生的第一门专业基础课,《C语言程序设计》还应起到奠定理论基础、训练编程理念的作用。因此,在教材的内容设计中,不能完全轻理论,还要把一些重要的理论讲述清楚。例如,三种基本结构(顺序结构、选择结构、循环结构)的流程及应用,要让学生能够将三种结构整合起来解决实际问题;算法是编程之真是思路之源,对一个问题首先要确定算法,才能根据算法步骤编写具体代码形成程序;“结构体”也是一种构造的数据类型,但对于数据类型的理解要更加透彻,有了数据类型的概念,对以后其他程序语言的学习就会更加轻松。教材内容设计上,还要加大实验环节的设计,实验内容按照设计性、验证性和综合性兼顾的原则设计题目,每道题目给出题目描述、题目分析、测试数据、提示代码和参考运行结果。其中,题目分析从变量分析和设计思路两个角度讨论,让学生能够充分体验程序设计整个过程中的思考方法,提示代码只是给出一小段代码,其余让学生进行补充,能够进一步锻炼学生的程序设计能力和创新思维能力,强调对学生分析解决实际问题能力的培养。

程序设计语言 篇四

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

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语言;程序设计;机考;分层教学;课程改革

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2014)34-8225-02

《C语言程序设计》课程的授课对象是计算机专业本科学生,为专业基础(必修)课,是学好后续各软件课程必要的基础。有别于已经掌握的汉语、英语语言,作为人与计算机交流的语言,C语言不但概念多、符号多、语法多、规则多,而且抽象、难懂,再加上需要有一定的理解力以及解决问题的清晰思路,有些学生在学习过程中会感觉到枯燥、繁杂、无趣。因此培养学生的学习兴趣、加强对课程的重视、提高实际编程能力、将理论与实际相结合,是教师必须解决的问题。

为了提高学习质量,从2010年秋季学期开始对《C语言程序设计》课程的教学过程、成绩考核进行了改革,由原来的纸质试卷考试变成全程上机考试。改革实施多年来,大部分学生增加了学习兴趣,有了编写程序的主动性和积极性,增加了专业学习的信心,提升了程序设计的能力。

考虑到学生在基础知识、智力因素、学习能力上的差异,为了更有效地实施“因材施教”,从2013年秋季学期开始实施分层教学。在讲完C语言基础知识、程序基本设计方法之后进行分层。通过考核,外加自愿的原则,将原来的教学班打乱,重新组合成两种班型――高层次、低层次班。分层之后,每个学生个体获取的知识趋于最大化,极大地提高了课堂学习效率。

1 传统教学与纸质考试存在的问题

传统的教学是按照指定教材,在课上将重点内容进行讲解,典型的问题、方法在TC/VC环境中进行演示,课后留给学生一定的纸质作业和上机编程作业。同样的讲授,理解力强的学生一听就懂;理解力弱的学生,老师需要讲多遍才有可能懂。传统的教学中,老师只能顾及大多数中等学生,照顾不到特殊的学生。降低了课堂效率,也可以说浪费了某一部分学生的时间。

由于期末考核采用的是纸质考试,只是从纸面上考核学生对C语言理论、编程方法的理解、掌握程度,更对学生的学习产生误导。部分学生也只重视理论,不重视实际动手编程。他们只满足于“纸上谈兵”,不考虑结果。因此,实际应用时,对上机环境不熟悉、编写的程序不能顺利通过,导致很多学生高分低能,在解决实际问题时,茫然无措。

2 机考及分层教学改革的探索

计算机专业课程的特点是实践性强,学生在掌握了基本语法后重点是上机实践,即在计算机上解决实际问题,这里包括问题的分析与抽象、程序的编写与调试。

常言道:“实践是检验真理的标准”。在学习C语言过程中,上机实践是巩固理论知识、增加理解力、提升编程能力的重要途径。为了提高教学质量,让学生真正打好专业基础,授课教师在教学内容、教学方法、教学组织、考试方式等多方面上进行了调整。

2.1 教学方法以及教学组织上的改革

为了使教学效果更好,将两个自然班作为一个授课班,教学内容统一要求。讲授时,由浅入深、循序渐进。在语言的基础上,重点放在程序设计的思想、方法、技巧的讲解,结合典型例题,培养学生分析、设计、解决问题的能力。通过精心设计实验题目、课后作业、调整考核比例、增加课后上机机时、多方位提供答疑指导等环节培养学生学习兴趣,使学生重视上机编程。

对学生作业题目进行精心设计,既覆盖知识点,又有趣味性,每个题目都像在讲一个故事,把要解决的问题融在故事中,学生在读故事的同时,不自觉地就会去想解决办法,增加了兴趣,提高了自主性,也锻炼了思维。

调整平时考核内容。平时考核的环节包括:上机小测试、期中机考、上机作业、考勤,每一个环节的成绩都会反映到平时成绩中。平时成绩的取得完全依赖自己的学习态度。

增加课后上机机时。由于考核重点是对实际动手能力的考核,光靠课内安排的上机时间显然不够,所以需增加学生课外自主上机实验时间,并配有指定人员辅导。

多方位提供答疑指导。所有任课教师把答疑时间错开,这样每周学生可以有多次答疑时间,对比原来教师只给自己学生答疑的做法,学生增加了学习解疑的机会。

2.2加强上机实验过程控制,促进考试改革

借助于“课程自动评测与抄袭检测系统”,老师和学生有了C语言作业部署、学习、检测的平台。通过这个平台,老师可以布置上机实验、安排考试、检查学生提交的作业。根据知识点,每章布置4-5道题,限定学生在规定时间内独立提交。老师可以随时查看学生提交的程序,及时与学生沟通、反馈。学生可以随时把自己编写的程序提交,系统对提交到服务器的程序自动判断对错,学生可以及时了解自己程序存在的问题,不断进行修改,直到能够顺利通过所有测试。

这一环节起到了巩固课本知识、增加独立思考、加强动手能力的作用。期末就是利用这个平台进行全程两个小时的考试,要求学生既有编程的能力,又有时间的紧迫感。

加强过程考核,增加平时机考次数。为了缓解期末机考时的紧张情绪,之前会安排1-2次的上机考试,成绩记入期评,其中期中考试的考试形式与期末一样,为全程两个小时的机考,随机组卷。学生可以尽早了解考试模式,并更加重视对本门课程实际动手能力的训练,学会调整心态。

为了满足不同层次学生的要求,在平台上配备了大量不同难度的习题,不受提交时间的限制。学生可以根据自身需求,随时编程测试。

2.3分层教学,提升学习效率

分层教学是根据学生不同基础、不同学习需求而实施教学的一种手段。是在承认学生差异、考虑学生兴趣的前提下,以发展的眼光看待学生,给每个学生提供符合他们发展的教学目标与方法,是同时提高所有学生能力的理想状态。经过调研,从三个方面进行分层教学。

1)学生分层。对学生能力考核的一个重要标准就是学生的学习成绩,但是在学习这门课之初,没有可依据的成绩。分层安排在讲完两周课,即学完了简单程序设计之后进行。学生根据自己当前对C语言的理解和接受程度,选择不同层次。在分层教学的实施过程中,这样的分层是暂时的、动态的。过一段时间,视学生的后期学习成绩、学生的具体情况,可递进或降层。这样更有利于学生个性化发展。

2)讲课分层。对不同层次的学生,采取不同课堂。在讲授编程思想、必备知识基础上,对高层次学生,拓宽和加深问题的难度,做到拔尖提高;对普通学生,在达到大纲要求的同时,考虑他们的接受能力,适度增加和加深知识,做到稳步推进。

3)实验分层。练习是对所学知识的巩固和消化。按照作业、实验题目的难易,对不同层次的学生提出不同要求。对普通学生布置基础题,进行强化训练;对高层次学生,以综合运用知识进行练习。要求学生多编程解决问题,以提高应用知识的能力。这样使得不同层次的学生得到不同程度的提高。

3 教学改革实践效果

实行考试改革后,学生的学习积极性有了明显提高。由于考试时间的有限性,增加了学生的紧迫感、主动性,在程序编写、调试程序的实际动手能力方面得到了重视并有所提高,为后续课程学习奠定了良好的基础。经过分层教学,满足了不同层次学生学习的需要,激励了各层次学生朝着有利于自己的方向努力,有利于学生个性能力的张扬,有利于学生综合素质的提高,更有利于优秀学生综合能力的发挥、较低层次学生潜在能力的开发。

3.1带动学风,促进后续课程的学习

大部分学生能够按时到课,勤于思考,互相研究,答疑的同学增多了。改变了不良学风,营造了良好学习氛围。由于课程期间比较重视学生结构化程序设计的方法,要求编写程序之前理清解题思路、做好算法设计,经过训练后,在后续的“程序设计专题训练”中,面对稍难一些的问题,学生也能逐步找到解决办法,编出程序,顺利通过测试。在小学期“学术工程实践”课程中,要求完成一个小型管理系统,有一定的难度。大部分学生能够顺利编写由多个结构体、多个文件、几十个函数组成的、2000-4000行代码的程序,并调试成功,完成管理。

3.2提升学生的程序设计能力和创新能力

竞赛是考核学生全面素质的一个平台,它要求学生具有扎实的理论基础、清晰的算法设计能力、娴熟的编程能力、良好的心理素质和快速的临场应变能力。

随着知识的积累,学生的能力和自信心不断增强。学生们更加渴求知识,渴望展示自己,参加竞赛的积极性提高了,人数也不断增多。在大二阶段,报名参加全国软件设计大赛的人数由09级的16人次(占09级学生人数14.04%)、10级的33人次(占10级学生人数26.19%),增加到11级的66人次(占11级学生人数51.56%)。全国获奖人数由09级的1人次(占09级学生人数0.88%),到10级的12人次(占10级学生人数9.52%),再到11级的17人次(占11级学生人数13.28%),获奖人数同比增多。

4 结论

总之,学习“高级程序设计语言”不仅要使得学生在程序表达和设计上得到培养,更重要的是在掌握解决问题的思想、方法和手段的同时,实际动手编程能力有所提高,从而增长设计程序的能力。因而,将“C程序设计”课程的考试改为上机考试是很有益的,可以改变不良的学风,营造良好学习氛围;可以加强学生对课程的重视,提高学生程序编写、调试等实际动手能力,提升学生的程序设计能力和创新能力,为后续课程学习、为培养合格的专业人才奠定良好的基础。

对“C程序设计”课程实施分层次教学也是必要的,可以针对不同层次学生的需求给予相应的学习指导,以达到学生全面发展的教学目标;可以激发不同层次学生学习的欲望,向着更高更深的知识海洋探索;可以鞭策任课教师积极思考、合理取舍,做到充分了解学生、合理安排进度,能够极大地提升老师的组织与应变能力。

参考文献:

[1] 李学会。C程序设计教学改革与实践[J].实验室科学,2010(4)33-34.

【程序设计语言】相关文章

读不完的大书仿写小练笔精选7篇09-30

读不完的大书仿照课文写一写(精选5篇)09-30

苏轼《定风波》赏析精选10篇10-13

读不完的大书仿照课文写一写小练笔【优09-30

试卷反思怎么写【优秀7篇】10-05

教育教学叙事案例优秀10篇10-09

课文《四季》仿写优秀9篇11-10

合家欢乐家庭范文(精选6篇)10-22

儿童大脑急转弯10到12岁经典8篇10-21

幼儿园安全教育内容会议记录(最新5篇)10-04

180 231035