探讨面向土木人才培养《计算机程序设计》课程改革实践与

更新时间:2024-01-15 作者:用户投稿原创标记本站原创
摘要:本文在总结已有的《计算机程序设计》成功教学经验的基础上,紧密结合土木工程专业背景知识,以《C语言程序设计》课程为例,分别从教学内容、教学手段与策略以及教学资源建设等方面实施改革,提出一套体现专业特色的教学创新策略。教学实践表明,激发了土木工程专业学生学习的兴趣与动力,可有效训练其运用程序设计语言解决本专业相关理由的能力。
关键字:C语言程序设计;土木工程;专业特色
1674-9324(2014)04-0213-03
随着科学技术的不断发展,同时掌握专业技能及计算机编程能力的复合型人才越来越受到青睐。为适应社会发展的需要,将学生培养成为既熟悉本专业知识又能把计算机技术同本专业领域紧密结合的人才将成为未来教育改革的趋势[1]。土木工程,作为一个工科专业,掌握将计算机程序设计语言灵活地运用于科学计算及分析中,以解决专业理论及工程实际理由的能力是至关重要的。目前教师在非计算机专业的程序设计课程教学中往往脱离本专业的背景,单纯地从程序设计的理论出发,枯燥的理论将使学生觉得学习程序设计课程没有用,或对此课程的重要性认识不足[2,3]。如何让土木专业的学生更好地掌握这门课程,储备本专业研究型科研人才,将对我们的日常教学提出了新的要求。近年来,在全面总结已有的《计算机程序设计》成功教学经验的基础上,以复合型研究型人才的培养为目标,紧密结合土木专业背景,提出有针对性的教学策略,通过教学实践不断地探索,积累了一定经验。

一、目前存在的诸多理由

1.学习目的不明确。非计算机专业学生往往对程序设计语言课程的学习目的不明确[4]。土木工程专业学生认为所学内容应该是如何设计建筑结构、桥梁隧道,如何分析梁板柱、地基等,而不是计算机专业才需要学习的程序设计,对计算机编程不感兴趣,认为设置此课程为多余。学生对程序设计语言课程认识的不足直接导致其在学习过程中缺乏主动性和积极性,学习更加缺乏信心,对计算机程序产生畏惧心理。
2.教学内容与专业背景脱节。教师在教授程序设计课程过于注重语法、语句、基本概念等细节,忽视培养在算法设计、程序编写以及逻辑思维等方面的能力,没有让学生意识到学习程序语言的最终目的是为了解决土木工程领域相关实际理由的。教授过程及内容过于脱离专业背景,在授课例题、实验例题,特别是计算机综合设计大作业方面,没有专业特色。
3.缺乏综合能力的培养。《计算机程序设计》是一门实践性很强的课程。教师往往不注意学生综合能力培养,包括逻辑思维能力、动手能力、甚至英语阅读能力。部分学生反映上课时能听懂,可上机时却脑子一片空白,不知从何下手,无法动手编程,出现“听得懂,编不出”现象,导致对学习失去信心;有学生英语基础不好,对编译器的语法错误提示看不懂,难以找出程序中的语法错误,当然更难找出逻辑错误。这也导致他们在实践过程中过分依赖指导老师,有任何理由就找老师,自己面向土木专业人才培养的《计算机程序设计》课程改革实践与相关范文由写论文的好帮手www.808so.com提供,转载请保留.缺乏必要的深思。

二、选择适合专业教学的程序设计语言

程序设计语言的选择对于非计算机专业学生而言至关重要。目前,面向对象程序设计语言C++及MFC技术因其功能丰富、表达能力强、使用方便灵活、界面友好、人机互动能力强等特点[5],已成为当前程序设计的主流,为计算机专业工作者和计算机应用开发人员所喜爱。然而此编程语言涉及的概念比较复杂、程序设计规则繁多却自由灵活、容易出错,实践表明,土木工程专业本科生在学习过程中出现不同程度的畏难心理。在众多高级语言中,结构化程序设计语言C遵循自顶向下、逐步细化、模块化设计、结构化编码,较为实用并非常适合科学计算,对于土木工程专业的学生今后进行科研实践过程中编程能力是不可或缺的,并对今后学习其他编程工具(如matlab、autolisp等)具有十分重要的作用。另外,通过对国内同济大学、清华大学、哈尔滨工业大学、浙江大学、大连理工大学等土木强校进行前期调研发现,大多数高校针对土木工程本科专业的培养计划中《计算机程序设计》课程为C语言或FORTRAN语言。因此最终选择《C语言程序设计》,旨在让学生掌握这门高级语言及相关编译环境,掌握结构化程序设计思想及策略,利用C语言解决一般应用理由,为后续的专业课程奠定程序设计基础,尤其是利用所学语言编程解决土木工程专业实际理由。对愿进一步深入学习的学生,拟在高年级开设C++语言,使学生掌握编制大型软件程序技能(包括运用MFC技术编制人机可视化交流界面),适合今后立志于从事土木工程专业软件开发的学生。这种分层次的教学手段,更有利于教学改革的实施和推进。

三、体现土木专业特色的教学改革

从专业化教学内容、教学实践运用、综合能力培养、专业化题库建设四个方面实施。方案实施前,进行学生情况及土木工程专业相关兄弟院校调研,掌握普遍存在的理由,针对性进行改革。
1.各环节中强调与土木专业的紧密性。在教案、课件PPT、上机实验甚至考试等方面有针对性地引入土木工程专业背景知识,合理地分配程序设计理论知识及专业应用课时的分配及相关教学计划。任课教师尤其要上好第一节课,需强调学习程序设计课程的用途、重要性,以及与将来学习的土木工程专业课程的紧密性。列举计算机编程在专业学习以及应用中的重要性,展示相关案例,让学生理解学习该课程的目的并明确课程的作用。比如可对ANSYS、SAP2000、Opensees等有限元软件进行二次开发等。在平时讲授过程中,可适时提出土木工程前沿理由及其与计算机的关联程度,列举利用计算机编程解决土木工程专业理由的案例,着重训练学生学以致用的能力。比如讲解到二维数组时,可联系结构力学中的矩阵位移法,告之学生可利用C语言编制程序解决结构静力分析;运用函数及一维数组等知识点则可以解决施工组织设计、试验数据处理、管网水利分析等专业理由。
2.开发专业化教学的手段与策略。在教学过程中,运用多媒体动画技术辅助教学,结合MFC可视化编程技术和有土木工程专业特色的高质量教学课件,形象地体现教学内容,化抽象为直观,使原本较枯燥抽象的教学内容通过合适的载体向学生体现,激发学生的学习兴趣,强化教学效果,发展学生的主观思维能力。课堂教学应注重编程演示以及分组讨论、交流,力求理论知识形象化。注重上机实践能力,做好实验课的答疑。课后通过电子邮件、网站等现代化网络信息平台解答学生的疑问,并及时进行交流,接收掌握学生的负反馈。实现教与学融合、师生互动。3.培养学生的综合运用能力。在课堂讲授及试题训练中突出算法设计环节,教学重点从语法向程序设计转变,培养学生算法分析的能力。通过专业化课件、例题、案例的运用,培养学生解决土木工程专业实际理由的能力。平时适时传授相关英语词汇,试点选用“The C programming Language”等英文原版教材,增强学生编译调试程序的能力。
通过短学期计算机综合设计任务的锻炼,提高学生编制大程序、综合应用创新能力,并通过分工合作手段,提升学生团队协作能力。
4.建立专业化的程序设计试题库。土木工程中力学分析计算、工程预决算都离不开工程软件的支持,土木工程专业背景与计算机编程两者的结合将激发本专业学生对程序设计学习的兴趣、提高学生的学习效率,并打好扎实的工程计算编程能力,使其能学以致用。如何切实地在《计算机程序设计》课程的教学过程中有机地植入土木工程专业知识、体现本专业特色是教学实践的关键。首先可通过搜集资料,筛选适合植入程序设计试题的结构工程、防灾减灾、岩土工程、桥隧工程、工程管理、结构实验等学科专业知识,并分别针对授课用案例、习题、上机实验的特点,进行分类。并对“计算机综合课程设计”,编制土木工程专业性强的课程设计任务书。其次,教师进行试题试做,按难度分类,方便学生选择,形成初步的题库。最后,在教学过程中不断完善、改善,扩充并优化题库。但需要指出的是,学习《C语言程序设计》的一般均为大一新生,他们并未开始学习结构力学等专业课程。因此,设计的案例应遵循以下原则:需给出土木专业背景知识;学生无需具备专业知识也能解题;不宜过于复杂。
如在考核学生在数组及函数方面的掌握程度时,可根据结构力学中整体刚度矩阵的集成、刚度矩阵的高斯消去法等知识点设计试题。以下为一案例。
请写出以下程序执行后的输出结果。本题背景:运用矩阵位移法编制C语言程序可计算图1所示结构在荷载P作用下节点C位移及各构件内力(假定构件轴向刚度EA=1,抗弯刚度EI=1)。本程序为结构分析重要环节,用于转化刚度矩阵,设数组stiffnessM为结构刚度矩阵。
#include
#define DIMENSION 3
void TranerM(double array[][DIMENSION])
{
?摇int row1,row2,col;
?摇double m;
?摇for(row1=0; row1?摇{
?摇?摇for(row2=row1+1; row2?摇?摇{?摇m = array[row2][row1]/array[row1][row1];
?摇?摇?摇 for(col=row1; col?摇?摇?摇 array[row2][col] -= array[row1][col]*m;
?摇?摇}
?摇}
}
void main()
{?摇double stiffnessM[DIMENSION][DIMEN面向土木专业人才培养的《计算机程序设计》课程改革实践与论文资料由论文网www.808so.com提供,转载请保留地址.SION]={
?摇?摇?摇?摇?摇{4,2,0},
?摇?摇?摇?摇?摇{2,24,0},
?摇?摇?摇?摇?摇{0,0,8},
?摇 };
?摇 TranerM(stiffnessM);
?摇 for(int i=0; i?摇 {?摇for(int j=0; j?摇?摇?摇?摇?摇printf("%6.2lf",stiffnessM[i][j]);
?摇?摇 printf("\n");
?摇}
}
本题实质是对图1所示结构的整体刚度矩阵进行高斯消去法,将总刚转化后成为上三角矩阵,便于后续的节点位移计算。虽然无需专业知识,学生通过阅读程序也可写出结果,但整个求解过程却让他感受到切实解决了一个专业理由,这样不仅激发了学生学习程序设计的热情,而且等到他接触结构力学中的矩阵位移法时,也将有意识地尝试用编程来解决其他相关理由。
以复合型人才教学研究为目标,紧密结合土木工程专业背景,提出有针对性的教学策略。将土木专业背景知识有机地引入到程序设计课程的教学过程各个环节中,选取理论联系实践的教学策略,辅以可视化编程技术,极大激发本专业学生学习的积极性;紧密结合课堂教学、上机实践及综合课程设计三大环节,开发适用于计算程序设计课程专业化教学的手段与策略,形成具有土木工程专业特色的试题库;对学生的多方面能力进行锻炼,为复合型创新人才的培养打下坚实基础。将转变目前土木工程专业程序设计课程难教也难学的现象,对于推动高校非计算机专业程序设计课程教学的发展、培养高素质土木工程专业人才、推进高校教学改革的研究与实践有较大的推动作用和现实作用。
参考文献:
[1]杨秀平,许劲,陈翔.非计算机专业计算机公共课程教学改革的深思与探索[J].长沙大学学报,2003,17(2):89-91.
[2]谢步瀛,王祎.与土木工程专业相结合的VB教学[J].高等建筑教育,2007,16(3):120-123.
[3]陈丽花.非计算机专业《计算机程序设计基础》课程教学改革研究[J].学理论,2010,(3):175-176.
[4]教传艳.浅谈机械专业C语言课程教改策略之实践[J].科技创新导报,2009,(27):131.
[5]刘树新,李革.面向对象程序设计在材料力学教学改革中的应用[J].石家庄铁道学院学报,2006,19(Supp):190-191(226).
基金项目:东南大学教学改革项目(2010-018),江苏省高校优势学科建设项目。
作者简介:陆金钰(1981-),男,博士,副教授,主要研究方向为空间结构、钢结构。

点赞:13256 浏览:49824