第一篇:计算机专业大学生程序设计课程教学方法探讨
计算机专业大学生程序设计课程教
学方法探讨
计算机专业大学生程序设计课程教学方法探讨
孙明伟,唐敏
(武汉大学遥感信息工程学院,湖北武汉430079)
摘要:对大学生编程素质的培养,对许多非计算机专业的高校院系来说也是一项重要的教学任务。非计算机专业的大学生面临计算机基础相对薄弱、程序设计课时安排有限等问题,为在有限的时间内提高学生的程序设计能力,采用一种教师理论讲解与学生实践操作紧密结合的三阶段教学方法,帮助学生迅速跨过了程序设计的门槛,让学生能够通过后续持续的自我编程练习提高编程
素质,取得了很好的教学效果。
关键词:三阶段教学法;程序设计课程;非计算机专业;本科教学
武汉大学遥感信息工程学院是集遥感、测绘、信息技术于一体的信息和工程类学院,学院培养的人才在中国乃至世界上一直具有重要的影响力。在本科生培养方面,除了系统培养学生的空间科学、地球科学等专业知识外,还系统培养学生的信息科学知识,包括计算机网络技术、程序设计技术、数据库技术、模式识别与人工智能技术等。由于专业课程较多,相对于计算机专业的学生来说,本院学生在信息学科的课程数与课时数安排上还是较少,比如计算机原理、操作系统原理等课程都没有教学安排。本人承担学院程序设计技术的本科教学工作,在学生计算机基础相对薄弱、程序设计课时安排有限的情况下,使用一套教师理论讲解与学生实践操作紧密结合的三阶段教学方法,使学生迅速跨过了程序设计的门槛,让学生能够
通过后续持续的自我编程练习来提高编程素质,取得了很好的教学效果。
一、程序设计课程的三阶段教学方法
程序设计是一门实践性较强的课程,理想的教学结果应该是学生通过程序设计课程的学习掌握编程语言、养成良好的编程习惯并能够完成简单的软件开发任务。根据程序设计课程的特点,学院将教学场地安排在具备100台左右计算机的机房。结合本院学生的学科背景、计算机知识储备等情况,本人将整个课程的教学过程划分成3个阶段,不同阶段采用不同的具体教学方法,各阶段具体教学方法如下表所示。
第一阶段,即学生刚开始学习程序设计的阶段。首先教师进行教材相应章节的知识讲解,使学生了解相应的基础理论。然后教师将示例代码输入到程序编译器,该过程中辅助适当的代码介绍并编译运行。最后要求学生将代码在各
自机位的计算机上进行输入与编译运行。对于初学者来说,最后过程中往往会产生大量的低级错误,包括编译器操作错误、输入法引起的符号错误等,这时学生通过举手示意,教师即到相应机位查看并解决各种问题,同时向学生解释错误产生的原因。
第一阶段的教学进度会比较慢,主要是由于学生刚开始接触程序设计课程,对编程环境以及程序设计理论比较陌生,因此会犯许多低级错误。教师在解决这类错误时,一方面需要自身具备较强的程序设计功底与丰富的程序设计经验,因为许多低级错误较难通过常规的编译器错误提示来定位与排除。另一方面教师也需要具备充分的耐心以及适当的技巧,如果出现的错误匪夷所思,则可通过学生的重复演示来定位程序错误的原因。随着学生练习次数的增加,程序出错的概率会逐渐降低,这时就可进入第二阶段。
第二阶段,即学生对编程较为熟悉 的阶段。首先教师同样进行教材相应章节的知识讲解,使学生掌握相应的基础理论。然后要求学生将示例代码输入到编译器并编译执行。如果例子较为复杂的话,该过程中部分学生也会出现一些编译错误或逻辑错误,导致代码无法运行或运行得到错误结果,同样学生通过举手示意,教师到相应机位查看、解决并解释问题。最后教师公布标准代码并适当解释代码含义,编译执行并展示代码执行结果。在该过程中教师需要要求学生参考标准代码,养成良好的编程习惯。第二阶段的教学进度就比较快了,该阶段可一直持续到将教材内容全部讲授完毕。
第三阶段,即学生进行软件设计的实践练习阶段。首先教师布置一个软件设计任务,比如要求学生编写一个类似于微软“画图板”的软件,明确要求软件需要具备的基本功能,并要求代码具备规范性、软件具备美观实用性等。然后学生利用三周左右的时间去独立完成软
件设计任务,该过程中学生可以相互交流或上网查阅相应资料,但不允许代码拷贝与抄袭。最后每位学生利用10分钟左右的时间公开演示所设计的软件,介绍基本功能与创意性、并展示关键代码等。在学生演示过程中,教师适当提问或点评,并根据学生的演示情况进行打分作为期末成绩的一部分。第三阶段可极大提高学生的实践动手能力,由于采用公开演示的方式,也基本杜绝了抄袭现象。
三阶段教学方法,各阶段在整个教学过程中所占的时间比例如图1所示。三阶段的教学过程结束后,几乎所有学生均能掌握程序设计的基本理论,具备程序设计的实践动手能力,能够获得较为理想的教学效果。
二、教学成果展示
以我院学生2011~2012学年、2012~2013学年学生程序设计课程的期
末成绩,来说明三阶段教学方法的教学效果。2011~2012学年,由于学院教学条件的限制,程序设计课程主要在普通教室授课,教学过程主要以理论讲述为主,课后学生动手练习为辅。2012~2013学年,由于学院教学条件的改善,程序设计课程改为在计算机房授课,并按照三阶段教学方法来实施教学工作。统计学生两个不同学年的期末成绩,得到如图
2、图3所示的结果。
从图2中可看出,2011~2012学年,62名学生参加考试,取得及格成绩的学生人数为49名,不及格学生人数为13名,大部分及格同学的成绩位于80分左右。从该结果可看出,程序设计课程如果仅仅使用课堂授课的方式,较难取得理想的教学效果。从图3中可看出,2012~2013学年,72名学生参加考试,取得及格成绩的学生人数为70名,不及
格学生人数为2名,大部分及格同学的成绩位于90分以上。从该结果可看出,程序设计课程改为在计算机房授课,并采用三阶段教学方法后,取得了理想的教学效果。
通过将学生的成绩按照≤69分、70~79分、80~89分、≥90分划分为4个成绩区间,分别统计2011~2012学年、2012~2013学年4个成绩区间学生人数占总人数的百分比,可绘制得到如图4所示的结果。
从图4中可以看出,2011~2012学年学生期末成绩主要分布在89分以下,而2012~2013学年学生期末成绩主要分布在90分以上,由此可见三阶段教学方法相对于传统的教学方法来说,能够显著改善非计算机专业的大学生程序设计课程的教学效果。
三、结论
程序设计是一门实践性较强的课程,对于高校非计算机专业的大学生来
说,在学生计算机基础知识相对薄弱及课时安排有限的情况下,采用一种教师理论讲解与学生实践操作紧密结合的三阶段教学方法,能够使学生迅速跨过程序设计的门槛,并继续通过不断的自我练习,巩固提高程序设计水平,实践也表明该方法能够取得理想的教学效果。
参考文献:
[1]王昊,王化更,谢飞,陈乃超。以项目教学驱动机电系统设计课程教学改革[J].教育教学论坛,2015,(1)。
[2]黄静,高延英,杨宇姝。基于计算思维的程序设计课程教学模式研究[J].计算机教育,2013,(5)。
[3]石媛,牟占军。浅谈高校教师教学方法的创新[J].教育教学论坛,2013,(4)。
[4]刘卫国,施荣华。计算机程序设计教学中的抽象思维能力培养[J].计算机教育,2012,(3)。
[5]张本成,龚伟。面向对象程序设计教学改革探讨[J].内蒙古师范大学
学报(教育科学版),2008,21(1)
第二篇:浅谈中职学校计算机程序设计课程教学方法探讨
浅谈中职学校计算机程序设计课程教学
方法探讨
〔论文关键词」中职学校 计算机 程序设计 教学方法
〔论文摘要」计算机程序设计课程是中职学校计算机专业的主要课程之一,曾受到各中职学校的高度重视。但程序设计课程教学设计、教学目标及教学方法远远跟不上形势,怎样调动中职学生对程序设计语言的学习兴趣与提高他们的学习效率成为中职计算机教师们的共同关注的焦点。
程序设计课程作为计算机专业的一门基础课程,它有利于提高学生的思维能力,对学生深人学习计算机专业知识有很大的帮助。其目的就是通过学习程序设计语言的基本思想、语法知识和编程方法,提高学生的程序设计能力、分析解决实际问题的能力,并培养形成严密的逻辑思维能力。那么如何根据社会经济发展变化,对程序设计语言课程的教学内容、教学方法、考核方式进行相应的改革,实现培养高等技术应用型和高技能型计算机人才目标,已经成为广大中职教师普遍关注和重点研究的课题。
1程序设计语言教学中存在的问题
1.1教学课时少
目前我校计算机专业的学制2+1的模式,学校开设的程序设计语言课程的课时(包括理论课时和实践课时)较少,这就导致实际教学中存在理论课时和实践课时不够的情况,学生只能掌握最基础的程序设计知识,理解书本上现有的一些设计实例,而不能用该程序设计语言进行实际问题的处理。
1.2学生基础参差不齐,学习程序设计的信心、兴趣不足
因为学习程序设计需要较强的逻辑思维能力和较扎实的数学功底,而中职学校的学生普遍数学基础较薄弱,导致在学习程序设计时显得力不从心。由于缺乏对计算机本身解题的认识和了解,有些基础较差的学生还对计算机程序产生一种莫名其妙的神秘感和畏惧感,人为的给自己学习程序设计语言设置了一道门槛。学生对程序设计课程的学习兴趣不高,课堂教学中反常行为较多,如卜课睡觉、讲话、玩手机、不配合老师、不交作业等。学生普遍反映难学,提不起学习兴趣,感觉学不到知识或学的知识没用。
1.3学校对程序课程的重视程度不高
计算机程序设计课程注重对学生的思维能力的训练,这与图像处理,动画设计等培养学生动手能力的课程不同,不能立竿见影的看到学生的学习成果。这就导致一些领导对这门课程不够重视,从而使部分教师对这类课程的教学参与兴趣不浓厚,甚至有些学校以取消了程序设计语言的课程设置。
1.4教学方法落后
中职程序设计语言课程一般采用的教学方法是教师课上讲授加学生实验的形式,学生在上机实验时仅仅是对书本上现有的一些实例进行编辑调试,一旦调试成功就完成任务。这种教学方法实际上只是让学生掌握了一些程序设计的语法知识和调试技巧,而达不到培养学生利用该程序设计语言从一个实际问题人手分析问题、解决问题的能力。
1.5考核方式较简单不能全面检验学生的学习效果
目前的考试方式以试卷为主,无法全面检验学生的学习效果,对学生的实践能力考查无法体现学生的真正学习效果。
2间题分析
是什么原因造成了以上这些问题那?随着高中教育不断普及,中职生源及综合素质急剧下降。普遍特点是他们基础薄弱,尤其数学和英语,这是学好程序设计的最大障碍。教材不能适应中职教学的要求。现今中职程序设计语言教材存在的普遍问题是实践性教学和实训内容不足,没有体现教材的实用性和职业性,不能保证对学生实践能力的培养,不能体现技术应用型人才的培养要求,缺少中职教育特色。面对这些问题,我们不能望而却步,一味地去埋怨是起不到效果的,要真正想解决问题,最好就要去不断地摸索,寻找解决问题的突破点,探索适合学生发展的教学方法和教学内容,以充分调动他们的学生积极性和主观能动性。3解决间题的关键在于教育方法的创新
古人云:“知之者不如好之者,好之者不如乐之者。”兴趣对学生的学习有着神奇的内驱动作用,能变无效为有效,化低效为高效。充分激发学生的学习兴趣是当前开展素质教育,优化课堂教学,减负提质的最根本、最有效的途径之一。兴趣的产生来源于兴趣源,兴趣源必须由教师来创造,并贯穿于教师授课全过程的各个环节中。针对程序设计这门课程的特点教师可采用以下一些方法提高学生的对本课程的兴趣。
(1)基于问题的教学。提出问题,以学生独立完成为主,教师只提供必要的辅导,培养学生探索问题和解决问题的能力,更有利于创新能力的培养。
(2)“项目驱动”教学。在理论教学中采用“项目驱动”教学法,整个课程教学围绕一个“工程项目”进行,通过逐步拓展的实训项目和设计,将每一阶段的学习进行小结性的贯穿与能力提高,将知识点都溶化到一个个实训项目的程序编写中。
(3)讨论教学法。在教学过程中,充分发挥学生的积极性与主动性是非常重要的一环。程序设计有一个最大的特点,一题多解。针对这个特点,教师在习题课的教学中,可以采用讨论式教学方法。在此过程中,学生们通过提问、答辩、论证、反驳、判断等激烈的讨论,互相启发、相互协作去分析问题、发现问题、解决问题,总结经验。不仅可以让学生获得课外的知识,同时也利于充分挖掘学生的学习潜力。
(4)归纳教学法编程语言有很多的定义、概念、语法规则,它们使用灵活、难以记忆,也特别容易出错。如果能够引导学生进行归纳,将会起到事半功倍的效果。编程语言的定义、概念、语法规则有许多相似的地方,例如:FOR „„TO„„与DO„„W HILE等命令,有很多语法规则是一样的,对它们进行归纳之后,学生只要记住其中一个,另一个自然就会使用了。
(5)分组教学法。注重培养团队精神,以“竞”求进上机编程实践是学好程序设计语言的关键。但上机实践过程中如果“各自为战”,或在教师的统一“指挥”下以完成不同题型的任务为实践内容,对于中职学生而言很容易失去上机兴趣,也很难达到上机实践之目的。因此,不妨针对中职学生的特点,适当转变上机实践的形式。以组建团队的形式上机实践,事前分配给每个学习小组不同的实践任务。组长负责本组学生利用课余时间去思考、收集资料,上机时各组先分别完成相应任务,然后相互演示成果,评判优劣,最后再进行任务交换,讨论编程心得。在此过程中教师主要充当协调者的角色,对确有疑难的地方可适当加以指导,主要过程可由学生自行解决,则学习能力强的学生自然会成为教师的助手。
(6)案例分析教学。对程序设计语言的教学,不仅仅是教程序设计语言知识,更重要的是让学生学会如何利用程序设计语言知识去编程,去应用于实际需求中。采用案例教学,可以实现课堂内外的有机结合,实现理论与实践相结合。结合学生自学,让学生带着疑问进行案例分析,教师在分析过程中穿插讲授专业理论知识,学生在分析案例的时候,一方面增长知识视野,丰富分析应用技巧;另一方面,在探索思考如何把知识运用于实践,从而及时有效地促进学生对知识的消化吸收,真正达到理论与实践相结合的目的。当然在案例的选择上应结合学生的专业实践,让学生能学以致用。
4结语
对于职业中专的学生来说,学习语法不是学习程序设计语言的真正目的,应该在掌握语法的基础上,通过上机实践,真正的让学生学会使用程序设计语言来解决各种实际问题,学以致用。教师应在开学初就要让学生充分了解程序设计语言的学习并不难,然后在以后的教学过程中,要使学生在学习中得到快乐、尝试成功的喜悦,提高学习的积极性和主动性,让程序设计语言真正成为学生喜爱的课程。课堂教学创新性有助于促使教师的教育观点的转变,确立以学生为中心,以学生主体实践为主,以培养学生创新素质和健全人格、特别是创新精神和创新能力为基本价值取向的教育思想;学生的整体素质得到了有效提高,在教学的起始阶段得以顺利入门,在整个学习阶段保持对学习的高度兴趣,实际应用能力得到大大提高;教育教学的质量得到了稳步提升。
第三篇:试论中职学校计算机程序设计课程教学方法探讨(一)
试论中职学校计算机程序设计课程教学方法探讨(一)〔论文关键词”中职学校计算机程序设计教学方法
〔论文摘要”计算机程序设计课程是中职学校计算机专业的主要课程之一,曾受到各中职学校的高度重视。但程序设计课程教学设计、教学目标及教学方法远远跟不上形势,怎样调动中职学生对程序设计语言的学习兴趣与提高他们的学习效率成为中职计算机教师们的共同关注的焦点。
程序设计课程作为计算机专业的一门基础课程,它有利于提高学生的思维能力,对学生深人学习计算机专业知识有很大的帮助。其目的就是通过学习程序设计语言的基本思想、语法知识和编程方法,提高学生的程序设计能力、分析解决实际问题的能力,并培养形成严密的逻辑思维能力。那么如何根据社会经济发展变化,对程序设计语言课程的教学内容、教学方法、考核方式进行相应的改革,实现培养高等技术应用型和高技能型计算机人才目标,已经成为广大中职教师普遍关注和重点研究的课题。1程序设计语言教学中存在的问题 1.1教学课时少
目前我校计算机专业的学制2+1的模式,学校开设的程序设计语言课程的课时(包括理论课时和实践课时)较少,这就导致实际教学中存在理论课时和实践课时不够的情况,学生只能掌握最基础的程序设计知识,理解书本上现有的一些设计实例,而不能用该程序设计语言进行实际问题的处理。
1.2学生基础参差不齐,学习程序设计的信心、兴趣不足
因为学习程序设计需要较强的逻辑思维能力和较扎实的数学功底,而中职学校的学生普遍数学基础较薄弱,导致在学习程序设计时显得力不从心。由于缺乏对计算机本身解题的认识和了解,有些基础较差的学生还对计算机程序产生一种莫名其妙的神秘感和畏惧感,人为的给自己学习程序设计语言设置了一道门槛。学生对程序设计课程的学习兴趣不高,课堂教学中反常行为较多,如卜课睡觉、讲话、玩手机、不配合老师、不交作业等。学生普遍反映难学,提不起学习兴趣,感觉学不到知识或学的知识没用。1.3学校对程序课程的重视程度不高
计算机程序设计课程注重对学生的思维能力的训练,这与图像处理,动画设计等培养学生动手能力的课程不同,不能立竿见影的看到学生的学习成果。这就导致一些领导对这门课程不够重视,从而使部分教师对这类课程的教学参与兴趣不浓厚,甚至有些学校以取消了程序设计语言的课程设置。1.4教学方法落后
中职程序设计语言课程一般采用的教学方法是教师课上讲授加学生实验的形式,学生在上机实验时仅仅是对书本上现有的一些实例进行编辑调试,一旦调试成功就完成任务。这种教学方法实际上只是让学生掌握了一些程序设计的语法知识和调试技巧,而达不到培养学生利用该程序设计语言从一个实际问题人手分析问题、解决问题的能力。1.5考核方式较简单不能全面检验学生的学习效果 目前的考试方式以试卷为主,无法全面检验学生的学习效果,对学生的实践能力考查无法体现学生的真正学习效果。2间题分析
是什么原因造成了以上这些问题那?随着高中教育不断普及,中职生源及综合素质急剧下降。普遍特点是他们基础薄弱,尤其数学和英语,这是学好程序设计的最大障碍。教材不能适应中职教学的要求。现今中职程序设计语言教材存在的普遍问题是实践性教学和实训内容不足,没有体现教材的实用性和职业性,不能保证对学生实践能力的培养,不能体现技术应用型人才的培养要求,缺少中职教育特色。面对这些问题,我们不能望而却步,一味地去埋怨是起不到效果的,要真正想解决问题,最好就要去不断地摸索,寻找解决问题的突破点,探索适合学生发展的教学方法和教学内容,以充分调动他们的学生积极性和主观能动性。3解决间题的关键在于教育方法的创新
古人云:“知之者不如好之者,好之者不如乐之者。”兴趣对学生的学习有着神奇的内驱动作用,能变无效为有效,化低效为高效。充分激发学生的学习兴趣是当前开展素质教育,优化课堂教学,减负提质的最根本、最有效的途径之一。兴趣的产生来源于兴趣源,兴趣源必须由教师来创造,并贯穿于教师授课全过程的各个环节中。针对程序设计这门课程的特点教师可采用以下一些方法提高学生的对本课程的兴趣。
第四篇:程序设计课程教学方法的探讨和实践
程序设计课程教学方法的探讨和实践
高等学校的根本任务是培养人才,人才培养是办学的核心问题。在高等教育大众化、国际化的趋势中,高等学校办学的竞争日益加剧。教学质量将决定着一所学校的生存和发展。因此,教学质量是教育者、管理者不可不思、不可不谋、不可不为的重要任务。
随着经济的发展和科技的进步,对人才素质提出了更高的要求,在人才培养上,各高校都在夯实基础的同时重视能力的培养,开始实施理论教学和实践的配套改革,进一步加强实践教学,加强学生实践能力、创新能力的培养。但是,对不同层次的高校而言,教育培养的对象虽然都是大学生,但各校均有自己的特性,在教学方法上,有其共性,也具有特殊性,互相之间,只能借鉴,不能照搬,而需要根据自己的情况来制定切合实际的教学方法。本文是以某高校计算机专业的“程序设计”课程为对象,探讨教学方法的改进和实践。
科学的教学方法是通向成功的桥梁。古人曰:“授之以鱼,供一饭之需;教之以渔,终身受用不尽。”授之以方法,培养学生的自学能力,是实现“教是为了不教”的正确途径。教学方法的改进,首先要改传统的单纯灌输式教学法为启发式和探究式的教学法,教师提出问题,激发学生积极思维,主动思考,发现未知,发展智力,达到由此及彼、由表及里、闻一知
十、举一反三的目的。教师不仅要注意培养学生的“智商”,更要发展学生的“情商”,即非智力因素,充分调动学生学习的需要、兴趣、动机,引导学生进行科学的思维,包括形式逻辑思维、形象思维、灵感思维等,以培养学生独立思考问题、提出问题和解决问题的能力,即所谓“既要授之以鱼,更要授之以渔”。教师可以假设一种以案例和问题为核心的情景和背景,激发学生探究问题的兴趣,通过选择与确定问题,讨论与提出设想,实践与寻求结果,验证与得出结论,培养学生独立思考能力、研究能力和创新能力,形成一种讨论式、开放式的现代教学方法,这就体现了大学教学的创新精神和平等合作精神,这种方法称为程序案例教学法或程序驱动教学法。这种方法要求教师精心备课,根据学生的知识水平和能力,创设实用的程序案例,引导过程中的问题情境,帮助学生激发创新意识,促进学生质疑,培养学习兴趣。在课堂上,要努力营造民主、宽松、和谐的学习环境。
现今普遍的程序设计教学方法都是从语法入手,详细地讲解各种编程语言的语法,而涉及的程序案例却很少,虽然有一些例题,但很简单,距离解决实际问题的复杂度相差甚远,学生在学习之后,常常缺乏动手能力和解决问题的能力,无法构建程序设计的思维,而且机械式的记忆语法规则往往是枯燥无味的,很难激发学习的兴趣。以“C++程序设计”为例,针对各种语法规则,创建16个实用的程序案例:1)库存清单应用程序(变量,输入);2)工资计算应用程序(算法,伪代码);3)牙科付费应用程序(逻辑运算符,字符串);4)购车还贷应用程序(WHILE循环语句);5)计算班级平均成绩应用程序(标记控制循环);6)利息计算应用程序(FOR循环语句和数学函数);7)计算个人所得税应用程序(多分支选择语句SWITCH);8)捐款管理应用程序(作用域与函数原型);9)游戏应用程序(生成随机数和枚举);10)薪金统计应用程序(一维数组);11)学生成绩统计应用程序(二维数组);12)数字时钟应用程序(自定义类和对象);13)购物清单管理应用程序(指针,引用及动态数据结构);14)工资表应用程序(继承与多态性);15)便笺信息应用程序(顺序访问文件);16)屏幕抓取应用程序(字符串处理)。
首先教师给出程序案例的框架结构,学生经过思考,选择合适的算法和指令语句,经互相讨论,完善和丰富程序案例,然后上机调试,通过运行来检验结果。程序案例的教学法是从兴趣入手,首先给人们编程的乐趣,继而带领学生进入程序的天地,提高探索的欲望,使学习编程变得生动而有趣。经过对计算机科学专业198名学生的问卷调查表明,其中194人赞成这种教学方法,在反馈的意见中,认为这种方法效果很好,能够很容易接受。在教学过程中既学到应得的知识,又感受到编程的快乐;既感受到成功的喜悦,又得到探索的乐趣。考核的成绩表明,85%的学生达到预期的效果,其中有20%的学生达到优秀的水平,虽然,教学实践取得明显的效果,但仍有15%的学生寻求适合的解决方法。尚未达到预期的效果,这表明仍有一些问题尚待解决,今后将进一步研究不足之处。
(作者单位:山东省潍坊科技学院)
第五篇:《计算机程序设计基础A》课程教学大纲
《计算机程序设计基础A》课程教学大纲
(2015-2016-2)
课程代码:
1571002 课程学科类别:
理工科 课程类别:
课程性质:必修 开课时间:第2学期 课程类型: 公共基础课 适应学科专业:
理工科非计算机专业 学分与学时:
3学分 先修课程:
大学计算机基础 课程支撑毕业要求:
1.掌握利用计算机解决问题的思维方式,掌握高级程序设计语言的基础知识和面向过程程序设计方法。具有计算思维素养、创新意识和团队精神,使用计算机编程解决实际问题的能力。为能胜任本专业技术领域的应用研究、技术开发及经营管理等工作奠定扎实基础。2.了解国家制定的有关技术领域相关职业和行业的政策与基本法津、法规。3.掌握运用现代信息技术获取相关信息的能力。具有不断学习和适应发展的潜力。
4.具有科学严谨、求真务实的工程职业素质,综合运用理论知识、技术手段和工程方法解决工程实际问题的能力。
课程教学目标:
在课程结束时,学生需要能够:
1.掌握利用计算机解决问题的思维方式,具有计算思维素养、创新意识和团结合作的工程职业素质;掌握一门高级程序设计语言的基础知识,具有使用计算机编程解决实际问题的基本能力;为未来在本学科领域使用计算机进行应用研究、技术开发等相关工作奠定基础。
2.熟悉VC++程序的开发和调试环境,掌握C/C++语言的基础知识、面向过程程序设计的基本方法和程序调试的基本技能;掌握常用数据类型、一些经典问题的常用算法,能够使用C/C++语言编程解决一般性问题。
教学手段与方法:
整个课程中包含有课堂教学、实验教学。该课程的教学应该突出体现使用编程解决特定问题的方式,即程序设计方法,而不是语言本身。在这门课程的教学实施中要特别注重实践,要通过验证型和设计型训练,使学生在实践中确实感受和领悟计算机问题求解的基本方法和思维模式。
辅以课程网站资源平台。基本教学内容与学时安排:
本课程基本教学内容和学时安排由基础知识和基本技能两大部分组成。
一、基础知识部分(课堂讲授34学时)1.引论(2学时)
(1)了解程序的基本设计思想,以及编程求解问题的全过程;
(2)掌握算法设计基础知识,包括算法的概念和特征、常用描述方法、以及设计原则和技巧。2.C++的基础知识(4学时)
(1)了解C++语言的基本符号和词汇,包括关键字、标识符、常量、运算符、标点符号等;(2)理解数据类型的概念,掌握C++的常量、变量和符号常量的使用方法;(3)熟悉运算符的优先级和结合性,掌握C++的运算符和表达式的使用方法。3.基本程序设计(8学时)
(1)理解结构化程序设计基本思想,掌握C++的顺序结构程序设计方法,掌握C++的标准输入流、输出流的使用、以及格式化数字的输出方法;(2学时)
(2)掌握选择结构程序设计方法;掌握C++的关系运算符和关系表达式、逻辑运算符和逻辑表达式、以及条件运算的使用方法;(2学时)
(3)掌握C++的循环结构程序设计方法;(2学时)(4)掌握求解一些经典问题的常用算法。(2学时)4.数组的应用(8学时)
(1)理解数组的概念,掌握一维数组和二维数组的定义、初始化和使用方法;(1学时)(2)掌握数值型数组的应用,包括实现起泡法排序、选择法排序和折半查找等功能的常用算法;(3学时)
(3)掌握字符型数组的应用,包括常用字符与字符串处理函数的使用方法。(2学时)4.9-4.10字符串函数--了解, getline必须掌握,字符数组到一维(4)理解字符串的概念,掌握string类型数据的使用方法。(2学时)不要求数组
5.指针的应用(4学时)
(1)理解指针与指针变量的概念,掌握指针变量、指针运算符与地址运算符的使用方法;(1学时)(2)理解数组名的指针含义,掌握一维数组元素的指针访问方式;(2学时)(3)理解引用的概念,掌握引用变量的使用方法;(1学时)6.函数的应用(6学时)
(1)理解C++的函数的概念,掌握C++常用系统函数的使用方法(包括常用数学函数、随机数产生器);(1学时)
(2)了解局部变量与全局变量、变量作用域的概念;理解函数调用过程中的参数传递方法,掌握用户自定义函数与return语句的使用方法;(3学时)
(3)理解递推的概念,掌握递归函数的基本使用方法;(2学时)7.总复习(2学时)
二、基本技能部分(机房实验30学时)1.实验项目1:熟悉开发环境(2学时)
(1)熟悉C++程序的集成开发环境;(2)学习新建和打开控制台应用程序的方法;(3)掌握简单数据运算,以及输入与输出方法。2.实验项目2:基本数据类型的输入输出(2学时)
(1)掌握对一般数据的输入和输出格式控制方法;(2)掌握数据输出形式的设置和小数位数的控制方法。3.实验项目3:选择结构-if/if-else(2学时)
(1)掌握选择结构的程序设计思路;(2)掌握if和if-else语句的使用方法。4.实验项目4:多路选择-switch/if-else(2学时)
(1)掌握多路分支选择结构的程序设计,switch和if-else语句的使用方法;(2)掌握程序调试的基本技能。5.实验项目5:循环结构(2学时)
(1)掌握循环结构的程序设计思路;
(2)掌握while、do-while和for语句的使用方法。6.实验项目6:嵌套与常用算法(2学时)
(1)掌握循环与选择结构的嵌套的使用方法;(2)掌握一些经典问题的常用算法。7.实验项目7:一维数组与常用算法(2学时)
(1)掌握对一维数数组的使用方法;
(2)掌握对数列数据插入、删除、排序和查找等的常用算法。8.实验项目8:一维数组与常用算法(2学时)
(1)掌握对一维数组的使用方法;
(2)掌握对数列数据插入、删除、排序和查找等的常用算法。9.实验项目9:二维数组与字符串(2学时)
(1)掌握二维数值型数组的使用方法;(2)掌握string类字符串的使用方法。10.实验项目10:指针的应用(2学时)
(1)了解指针编程技巧;(2)掌握指针变量的使用方法。11.实验项目11:系统函数(2学时)
(1)掌握常用系统函数的功能和使用方法;
(2)理解返回值的概念,掌握return语句的使用方法。12.实验项目12:自定义函数(2学时)
(1)掌握自定义函数的概念、定义及使用;(2)掌握函数参数间的数据传递和编程技巧。13.综合训练(2学时)14.期中机考
考核方式及评分标准:
考核方式
评分标准
出勤+课堂表现 实验项目 30% 半期考试 10% 期末考试 60% 总分 100%
教材及参考书:
1.景红主编,计算机程序设计基础(C++),西南交通大学出版社.2009; 2.谭浩强主编,C++程序设计,清华大学出版社。