夜上海论坛 精品范文 vb程序设计论文范文

vb程序设计论文范文

前言:我们精心挑选了数篇优质vb程序设计论文文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。

vb程序设计论文

第1篇

程序设计课程具有很强的实践性,在培养学生学会自己分析问题、使用计算机解决问题能力的同时提倡学生创新意识和创新能力的培养,主要采用的教学模式有项目教学法、案例分析法、任务驱动法等。

1.1《vb程序设计》课程中项目的设计

1.1.1章节项目

夜上海论坛 在整个教学过程当中,采用了“大项目、小案例、任务驱动不断”的教学模式,设计并选取与生活相联系的合理的能够调动学生学习积极性的项目。针对课程教学的最终目的,设计了一个比较完整的图书馆管理系统综合项目,但是这门课程知识点较多,要想完成这个综合项目,学生首先必须熟悉VB开发环境、掌握VB程序设计的基本概念和基础知识、各章节的知识点内容。为了配合整个课程最后综合项目的完成,在具体的教学中按照教学内容由易到难,针对教学中的重点和难点安排了13个章节项目,帮助学生更好地学习教材各章节中的知识点。项目一:由现实生活中的汉诺塔游戏、交换两个杯子中饮料的问题,引入一个利用VB程序解决两幅图片对换位置的具体案例,使学生熟悉VB集成开发环境以及各种窗口的使用、掌握常用控件对象的建立以及布局、利用VB开发简单应用程序的步骤、并初步引入程序设计思想,引导学生思考两数互换的问题,使学生通过观察、思考、总结得出两数互换的问题和两幅图片互换位置是一类问题。项目二:编写一程序,在屏幕上显示“欢迎来到VB世界!”,并输入自己的名字。使学生熟悉VB编程四部曲———界面设计、相关对象的属性设置、相关对象的代码编写、调试运行,尤其注意程序的调试过程。项目三:设计一个华氏温度与摄氏温度之间转换的程序。通过这个项目熟悉VB的数据类型及其运算,掌握VB的常用标准函数、变量以及常量的使用等语法知识点。项目四:利用输入函数输入一元二次方程的系数a、b、c,编写程序计算一元二次方程的两个实根或虚根,用输出语句输出结果。熟悉常用的输入输出控件、掌握Print方法、Inputbox()函数、Msgbox()函数和Msgbox过程的使用方法。项目五:设计一个账号和密码的输入检验程序。规范整理英文文章,即对输入的任意大小写的英文文章进行整理,规则是:所有句子开头应为大写字目(句子是以符号“?”、“.”、“!”作为结束符的),其他都是小写字母。使学生熟练掌握程序三大结构中的选择和循环结构。项目六:对一个班级的学生成绩进行输入统计,找出所有成绩中的最高分和最低分、全班成绩的平均分等。使学生掌握数组的使用。项目七:编写一个函数,在已知的字符串中找出最长的单词。假定已知字符串中只含有字符和空格,空格用来分隔不同的单词。通过该项目的学习使学生掌握过程程序的设计、实参、形参等基本概念。项目八:常用控件的使用。设计一个类似Win-dows记事本的应用程序,并完善其各项功能。通过该项目使学生掌握菜单、对话框和多重窗体程序设计。项目九:导入手机号码文件,编写一个手机选号程序,比如说选出手机尾号后四位相同的手机号码等。要求学生通过学习,掌握文件的相关操作,利用文件能够建立简单的应用程序。项目十:建立本班同学信息库,具体包括:学号、姓名、性别、出生日期、寝室电话、手机号码,并用数据控件及绑定控件实现对同学信息的浏览,并实现按姓名查询相关人员的基本信息。通过该项目掌握VB数据库的相关技术。项目十一:设计多文档应用程序,熟悉VB高级界面的设计。项目十二:用MMControl控件设计一个录音机,用API函数设计一个用户化的CD播放器。通过学习,使学生掌握VB多媒体程序设计。

1.1.2阶段项目

夜上海论坛 为了使整个学期的教学内容具有连贯性,糅合各章节零散的知识点,使教学实践具有可操作性,将整个学期的教学实践分成了三个阶段,每个阶段选用一个打破章节限制的阶段项目,使学生对所学知识内容有一个阶段性较完整的认识。这三个阶段依次是实践的开始阶段、实践的展开阶段、实践的结束阶段,分别对应阶段项目一、阶段项目二和阶段项目三。每个阶段中抓住关键教学环节,按照“大项目、小案例、任务驱动不断”的具体教学流程组织教学。阶段项目一:选用简单的项目,如蝴蝶飞舞、字幕滚动的项目。由于是初次接触计算机编程语言,所以对于非计算机专业的学生来说,这门课程的入门学习很关键,如果按照常规授课方法,依据书本上的章节内容安排依次讲授VB语言发展史、VB语言特点以及编程环境等内容的话,学生很难接受,往往是听得稀里糊涂,不知道学习VB究竟有什么实际作用,从而会产生畏难情绪,最终导致学生对VB知识学习失去兴趣和信心。为消除初学者的畏难情绪,第一阶段主要以激发学生的学习兴趣为主,让学生对VB有一个直观的认识,同时让学生在轻松的气氛中了解VB的编程环境和编程步骤,以及VB面向对象、事件驱动的编程机制。万事开头难,一旦学生对VB产生了兴趣,就有利于后续知识的学习。阶段项目二:难度稍微加大,选用计算器项目。通过本项目,一方面让学生理解控件数组的含义和设计使用方法,以及简单下拉菜单、常用数学函数的使用、过程函数的编写等,进一步加强学生对概念的理解。另一方面让学生注意可视化界面的设计,因为友好美观的人机交互界面,给人赏心悦目感觉的同时是软件的门面。阶段项目三:选用综合项目———学生信息管理系统。通过这个项目让学生真正了解掌握软件的开发过程。虽然这个项目比较难,但是有了前面知识的铺垫,会变得容易接受理解,也是对前面所学知识点的一次巩固和进一步更深入的理解,更是对前面知识的综合应用,让学生由浅入深、由易到难,逐步领会掌握编程的基本思想、基本方法和开发一个软件的完整步骤。三个阶段通过运用“大项目、小案例”,每个阶段让学生带着具体任务去学习,把枯燥的理论知识与生动形象的教学方式相结合,以清晰简明的表达方式深入浅出地向学生传授VB程序设计语言课程的知识,使学生在完成具体任务的实践过程中不断加深对面向对象程序设计思想和知识的理解。

1.2《VB程序设计》课程中的案例选取

有了已经准备好的各模块的项目,并展示给学生,学生有了兴趣后,就会想这些项目是怎么完成的,任务就落到各个模块项目里面具体的案例上了。由于VB程序设计授课内容多,授课时间紧张,按各知识模块划分选取项目后,在每个项目里面,按项目选取具体案例或是进行设计各项目的各功能模块,各功能模块实际就是一个个案例。在教学过程中应循序渐进,可以在原有案例的基础上逐步改变或增加一些条件,将应用进行引申,启发学生思维,让学生对知识点的理解更透彻,掌握各知识点之间的联系,提高学生发现问题、解决问题的能力,并在教学中兼顾学生生活经验与知识趣味性,达到事半功倍的教学效果。

1.3任务设计

围绕每一知识模块的教学内容、教学知识点,设计相关的项目,并在各个项目中采用了系列案例以及完成各功能模块的案例,为了让学生更加熟练、更好地掌握教学内容,在各知识模块的学习中设置学习情景,给学生留有感兴趣的任务,让学生去完成。同时根据各知识模块提出了单元任务,单元任务设置两个层次———基本任务和提高任务。由于学生自身水平有差异,对于基础好、学有余力的学生,要求他们不但要完成基本任务,还要完成提高任务;对于大多数学生,只要求他们完成基本任务。由于时间的限制,可以让学生在课余时间分析任务,在上机实践课以及课余时间去完成任务,最后做任务的总结。有了兴趣和任务的驱使,学生为了完成任务,就会利用各种方式和手段积极主动地去解决问题,他们会通过查阅相关书本、浏览网络资源、同学之间互相协作等方式解决问题,充分调动了学生的主观能动性,在完成任务的过程中学生分析问题、解决问题、实际开发应用程序的能力得到了锻炼,为学生知识的创新奠定良好的基础,同时知识面也更广、更大了。学生不会再觉得教学只是教师一个人的“独角戏”,而是教师和学生的“二人转”。在相互的配合以及友好和谐的师生关系中,教学顺利完成的同时学生个人的知识库也得到了构建。

2实施方法

第2篇

关键词:VB实例教学激发性主动性

作为语言程序设计领域的前沿软件,VB的发展历史已经很久,相关的技术也比较成熟,由于其简单易学、功能强大、应用广泛,因此在很多职业院校都开设了这门课程,我校也在计算机信息与管理、计算机网络技术以及电子商务等相关专业开设了这门课程。正是由于社会办学力量的推动和“程序设计”职业的热衷,现在会VB的人越来越多了,但是我们也应该看到,很多人都局限在“会VB”,而不能灵活的运用,不能用VB完成相应的程序设计,更谈不上从事专业编程工作了。在这样的情况下,作为高职教师的我们,在教学中怎样才能够吸引同学们努力主动的学习好VB,这是我们值得探讨的问题。虽然我们学生的起点相对来说较低,但以后所从事的工作大多数也是以程序设计操作员为主的,因此笔者认为我们的主要教学目标,不仅是使学生熟悉VB的基本概念,而且还要能够熟练的掌握一些程序设计的相关技巧和方法,有一定的程序编写思维能力,并且在今后的教学中同学们能够积极主动的探索和学习。为了达到这个目的,笔者认为以下几个方面是我们在教学中值得开展的:

一、注重实例教学

夜上海论坛 对于一项操作性很强的工作,我们是不可以只讲理论的,正如当我们学习游泳的时候,如果教练只是告诉我们每个动作的名称但不告诉我们这些动作怎么完成,我们是不可能学会游泳的。那么我们在学习VB的过程中也必须结合大量的实例演示,让同学们真正体会到VB的可视化设计和它的实用性。

在最初接触这门课程的时候,我们必须先要详细的介绍各个控件,只有知道每个控件各自的作用以及使用方法以后我们才可以在VB中创造我们自己的程序。在控件介绍和程序设计中我们必须通过实例的演示来让学生在模仿中学会各个控件的使用和程序的编写。特别是在程序的编写方面,我们一定要有相关的实例来让学生在感性上得到认识。比如在介绍IF……ELSE选择控制语句的时候,如果我们只是讲解单纯的语句,学生听起来觉得比较枯燥,但笔者首先给同学们演示一个通过用户名和密码的登录界面,通过选择控制语句来确定我们在文本框中输入的条件是否为真做出判断,如果为真就登录到我们所需要的另一个界面,否则弹出一个提示信息框。在演示的过程中,同学们都表现出强烈的好奇心和学习的欲望,思维表现得非常活跃,因为他们觉得这些知识非常有用。在这个时候我们抓住这一特点,首先,讲解实现这一程序的基本思路,提出实现思路所需要解决的问题。其次,在程序中讲解新语句的使用方法,总结新语句的使用方法和注意事项。这样的教学使学生很快了解了程序设计的整个过程,并有豁然开朗的感觉,从而产生浓厚的学习兴趣。虽然这是一个简单的编程应用,整个创作过程只用到了简单的选择控制语句,但通过此例的学习学生学会了选择控制语句的使用以及如何设置选择控制语句,同时也激发了同学们学习程序设计的兴趣,从而创作出自己的程序。

目前市面上有很多关于VB的实例教材及各种参考书,但是都比较散而且内容也不是很详细,所以在讲解的时候笔者认为必须对实例进行慎重的选取和必要的修改,力求做到以下几点:

1、程序结构严谨化

笔者所收集的程序除了强调程序的可靠性以外,还要特别强调程序的结构性,即使是一个简单的实例,也需要做到程序结构的严谨化,使之符合大众的思维,但也要突出自己的特点。比如在讲FOR……NEXT等循环语句的时候,一般的都是利用从1累加到另一个固定的数值,来完成我们的循环讲解,这样的语句由于方法是完全一样的,所以最后的效果也没有什么吸引力可说。因此,笔者采用了另外一种方式,结合利用文本框输入的方式,即在两个文本框中可以输入任何两个数,使之从小的数值累加到另一个较大的数值,这样程序的效果也就更具结构严谨的魅力,同学们的感受也就会完全不同。

2、步骤详细化

夜上海论坛 因为同学们对新知识的接受,特别象程序设计这样的知识结构,还是需要一定的过程,因此为了让学生能够顺利的完成实例,从而在实践中提高自己的能力,笔者认为对每一个实例的操作步骤都要详细的板书出来,上机课或是在课余时间学生只要按照程序的操作步骤去做,就可以得到最终的效果,只有这样同学们才能掌握程序设计的基本思想和相关步骤。

夜上海论坛 3、方法常规化

在讲解的过程中,力求采用最简单、最容易的方法完成每一个实例,尽量采用常规化的语句,避开一些不容易理解的概念、方法。比如,在利用文件操作对数据录入以及把录入的所有数据输出时,我们可以避开利用Type语句定义自己的数据类型的使用,因为采用Type语句定义,有多少个字段,就会产生多少个相关的成员,在这种情况下同学们就很难想得到这个成员代表的是什么,它的作用是什么,这样就把程序复杂化了,其实我们完全可以采用简单的文本框来进行输入,然后用Input函数输出就轻松完成了。

夜上海论坛 二、注重培养学生的实际操作能力

还是以游泳为例,不管我们怎么看别人游泳,但自己却不下水实践,我们是永远都学不会游泳的,那么我们在学习VB语言程序设计的过程中也必须不断的练习、实践。

笔者曾担任了计算机网络技术两个班的该门课程的教学,为每周四学时,其中两学时是笔者的理论讲解课,两学时是上机实践操作课。由于学生的思想还不够成熟,自我控制能力相对来说还是比较差,因此自觉性还不够好,为了监督他们很好的学习、认真的实践,笔者每次课都留一次作业,第一次就是完全按照笔者的课堂实例上机操作,以加强对本节课课程内容的理解并熟练这些操作技巧,这项作业是必须要上交的,并作为平时成绩登记。因为这是这门课程中最基本的知识要点和教学要求,虽然学生不可能每个人都对这门课程有浓厚的兴趣,不可能以后都有可能去从事专业的程序设计工作,但是作为计算机专业毕业的学生,笔者希望他们不管以后从事什么样的职业,对于一些基本的程序设计思想以及常用的计算机软件操作,至少都能够体现出来。

夜上海论坛 在最后的综合实训、实践中,笔者结合同学们所学的知识并引进一些课外的知识实例来弥补课本上没有的相关内容。比如,我们利用VB做前台界面的设计,尽量用到所学过的所有控件进行布局、设置,把它们结合起来使用,而用小型的Access数据库做后台数据管理来做一个学生成绩管理系统,它具备一般的常用功能,即成绩的添加、查询、修改、删除,用户的管理等,虽然这个管理系统程序的设计比较简单,但通过这样一个小型的综合实例,就更加让同学们了解了VB语言程序设计的功能及特点。这是我们VB程序设计教学课程中不可缺少的一个重要环节,只有通过这样的一个综合实例,才能把同学们零散学到的知识全部的串联起来,让他们感觉到自己所学的知识终于有了一定的成果,他们自己也会感觉很有成就感,也会产生一种利用计算机解决实际问题的强烈愿望,在今后的学习中才能更加有信心和目标。

夜上海论坛 以上的两个方面是笔者认为的主要教学方法。采用实例教学的一个重要目的实际上就是为了使课堂生动,提高学生的积极性、主动性。虽

夜上海论坛 然是实例教学,有很多有趣的程序及相关的小动画,但是这样的有趣如果久了,也并不能完全抓住学生的心,因为这些过程进行的场所都是在课堂,课堂生活不可避免的具有一定的单调性,这只是一个方面。另一方面是,笔者要求学生在完成自由独立创作这一作业以后要相互交流经验,这种交流我们一般都是在自己班内部进行的,次数多了大家就会觉得似乎还需要加入一些更新的内容,希望与其他班的同学一起探讨学习。为了弥补课堂学习和班内交流的不足,笔者有时间就会将两个班的学生聚集在一起,首先每个班选几个优秀的作品演示给大家看,并向大家介绍创作的技巧和存在的问题,然后大家一起讨论。最后笔者会结合最近的学习内容对设计进行一个总的评说。通过这些活动既可以提高学生的学习兴趣,提高他们的专业技能。我们在教学中,实例的运用是提高教学效果的保障,在教学中,我们不防在讲解本次课的内容之前,先演示本次课需要用到的实例,这样既可以调动学生学习的积极性和主动性,也激发了他们的好奇性,这样也就抓住了同学们“人在教室,心也在教室”。

夜上海论坛 总之,教学有法,教无定法,只要教学得法。程序设计教学的主要目标是为了使同学们了解编程的基本思想,培养分析问题、解决问题的基本能力。围绕着这个目标,在保证同学们学习积极性的前提下,按照他们的认知规律组织教学,一切有效的教学方法都可以在我们的教学过程中加以运用,进而使综合素质得到整体提高,这是VB程序设计课程教学的最终目标。

参考文献

夜上海论坛 [1]刘炳文、杨明福、陈定中.全国计算机二级教程VB语言程序设计[M]高等教育出版社.20__.4

第3篇

1.1工程施工放样题目模型已知某道路曲线第一切线上控制点ZD1(XZD1,YZD1)和JD1(XJD1,YJD1),该曲线设计半径R=1000m,缓和曲线长0l=100m,JD1里程为,转向角α。请按细则要求使用非程序型函数计算器计算道路曲线主点坐标ZH(XZH,YZH)、HY(XHY,YHY)、QZ(XQZ,YQZ)及第一缓和曲线和圆曲线上中桩点i1i2K、K的坐标(iX,iY),共计算5个点。然后,根据现场已知测站点O、定向点A、定向检核点B,使用全站仪进行第一缓和曲线和圆曲线上中桩点放样i1i2K、K点。控制点和待放样曲线之间关系如图1所示。上交成果:工程施工放样成果资料,其中包含曲线常数、曲线要素、主点里程及曲线中桩坐标的计算成果。

1.2工程施工放样数学模型

1.2.1曲线常数:(1)缓和曲线倾角:πβ180200=×Rl(2)圆曲线内移值:(3)切线外移量:23002240Rllm

1.2.2曲线要素:(1)切线长:(2)曲线长度:(3)外矢距:E=R+PR2()secα(4)切曲差:D=2TL

夜上海论坛 1.2.3主点里程:(1)ZH点里程:(2)HY点里程:(3)QZ点里程:(4)YH点里程:(5)HZ点里程:检核计算:

1.2.4独立坐标计算:(1)在坐标系x′o′y′中,缓和曲线ZH-HY段(i1K)独立坐标计算:(2)计算ZH-HY缓和曲线细部点:(3)计算ZH-HY缓和曲线HY点(直接将上式0lli代为0lli代为):(4)在坐标系x′o′y′中,圆曲线HY-YH段任意一点独立坐标计算:=+=+(1)siniiiiyPRCosxmRφφ1.2.5主点及若干曲线中桩点坐标:(1)(指ZH到JD的坐标方位角)(2)(右转用-,左转为+)(3)(右转用-,左转为+)(4)三个主点坐标如下:ZH点坐标:HZ点坐标:QZ点坐标:(5)曲线中桩点坐标按线路右转所得公式如下(注意若为线路左转则以下几个公式用iiy代替y):

2工程施工放样项目VisualBasic程序设计

2.1程序界面

夜上海论坛 2.1.1主程序界面。主程序界面设计如图2所示,通过主界面,可以输入所有的已知数据,并选择偏角的类型。图2主程序界面

2.1.2结果显示界面。计算结果通过一个文本框的形式,将所有需要的结果及一些关键的中间结果分栏显示,如图3所示:图3结果显示界面

2.2核心代码

夜上海论坛 2.2.1计算曲线常数和曲线要素:IfR<>0ThenJD=Ls*180/(2*R*PI)p=Ls^2/(24*R)-Ls^4/(2688*R^3)m=Ls/2-Ls^3/(240*R^2)T=(R+p)*Tan(PJ/2)+mL=PJ*R+LsE=(R+p)*1/Cos(PJ/2)-Rq=2*T-LElseMsgBox"必须输入曲线半径R!"Text12.SetFocusEndIf

2.2.2主点里程及独立坐标计算:k1=k1*1000+k11k2=k2*1000+k22k3=k3*1000+k33kZH=k1-TkkZH=kZH\1000kkkZH=kZH-kkZH*1000kkkZH=Format(kkkZH,“###.###”)Str1="ZH点里程:"&"K"&kkZH&"+"&kkkZHStr2="HY点里程:"&"K"&kkHY&"+"&kkkHYStr3="QZ点里程:"&"K"&kkQZ&"+"&kkkQZStr4="YH点里程:"&"K"&kkYH&"+"&kkkYHStr5="HZ点里程:"&"K"&kkHZ&"+"&kkkHZLi=k2-kZHLi1=k3-kZHX11=Li-(Li^5)/(40*R^2*Ls^2)Y11=(Li^3)/(6*R*Ls)X12=m+R*Sin((Li1-0.5*Ls)/R)Y12=p+R*(1-Cos((Li1-0.5*Ls)/R))Xhy1=m+R*Sin(JD*PI/180)Yhy1=p+R*(1-Cos(JD*PI/180))Ajd=((Li1-0.5*Ls)/R)*180/PI

夜上海论坛 2.2.3坐标计算:Xzh=X2+T*Cos(A)Yzh=Y2+T*Sin(A)Xhy=Xzh-Xhy1*Cos(A)+K*Yhy1*Sin(A)Yhy=Yzh-Xhy1*Sin(A)-K*Yhy1*Cos(A)Xqz=X2+E*Cos(Ajz)Yqz=Y2+E*Sin(Ajz)X111=Xzh-X11*Cos(A)+K*Y11*Sin(A)Y111=Yzh-X11*Sin(A)-K*Y11*Cos(A)X112=Xzh-X12*Cos(A)+K*Y12*Sin(A)Y112=Yzh-X12*Sin(A)-K*Y12*Cos(A)

夜上海论坛 2.2.4结果输出:OpenApp.Path&“\T1.txt”ForInputAs#2DoWhileNotEOF(2)'循环至文件尾。LineInput#2,TextLine'读入一行数据并将其赋予某变量。Form2.Text1.Text=Form2.Text1.Text&Chr(13)+Chr(10)&TextLineLoopClose#2Form2.Show

3结语

第4篇

夜上海论坛 关键词:武警院校;NCRE;计算机语言;Visual Basic;C语言;

武警院校大多为指挥院校,目标是培养“适应武警部队信息化建设和履行职能使命需要的新型高素质指挥警官”。学员既有参加高考的学生,又有从部队考上的战士。生源不同,其文化基础知识相差甚远,但都按统一的实施方案和计划模式进行组织教学,采用封闭式的全程军事化管理制度。主要学习政治理论、科学文化、军事基础、专业业务、身体心理等课程。

武警院校的学员毕业后大部分去基层部队工作,经常需要通过可视化的开发工具快速高效进行软件开发,比如建设网站或开发维护本单位的小型管理信息系统等,所以程序设计课程的科目选择不易过于专业化。选用Visual Basic(以下简称VB)等可视化易学易用的语言为宜,它不但简单易学,功能强大,而且因其先进的Windows编程思想理念,可以满足一些后续专业课程或毕业设计中对编制程序的需求。

武警院校在非计算机专业人才培养方案中明确指出:应届本科毕业学员,需要完成大学本科人才培养方案和课程标准规定的全部课程和各个教学环节规定的内容,并且要求课程学习和毕业考试、毕业论文按照学籍管理规定成绩合格,较好地掌握本专业的基础理论、专门知识和基本技能,具有初步的科学研究和岗位任职能力者,在英语通过四级,计算机通过二级时,授予学士学位。这就给武警院校非计算机专业的程序设计课程提出了更高的要求。

夜上海论坛 1NCRE与计算机语言

夜上海论坛 全国计算机等级考试(National Computer Rank Examination,简称NCRE)是经教育部批准,由教育部考试中心主办,面向社会,用于考察应试人员计算机应用知识与技能的全国性计算机水平考试体系。目前该考试共设四个等级,考核内容是根据社会不同部门应用计算机的不同程度和需要、国内计算机技术的发展情况以及中国计算机教育、教学和普及的现状而确定的;它以应用能力为主,划分等级,分别考核,为用人部门录用和考核工作人员提供一个统一、客观、公正的标准。

NCRE二级考核的主要内容是计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。考试科目有语言程序设计(C、C++、Java、VB、Delphi)、数据库程序设计(Visual FoxPro、Access)两大模块共七个科目。

如果单纯从取得计算机等级考试证书、提高考试通过率的角度出发,选择数据库程序设计模块较为理想(比如Access科目,简单易学),但从满足武警院校非计算机专业学员毕业后的任职需要来说,选择一个与教学大纲相一致的科目则更为合理,能起到“既通过课程考核又取得证书”一箭双雕的效果。

夜上海论坛 根据教育部近年来对高等学校非计算机专业计算机基础课程提出的“1+X”的教学方案,即一门基础课程(“大学计算机基础”)+若干必修/选修课程,武警院校非计算机专业的计算机课程一般分为计算机基础和计算机程序设计两个层次,其中的计算机程序设计课程正好与计算机二级考试中的语言程序设计(C、C++、Java、VB、Delphi)模块相对应。为此,武警院校非计算机专业的程序设计课程的科目选择尤为重要,选择的恰当不仅能让学员在校期间学到非常适用的编程知识、增长能力,而且能大大提高计算机等级考试通过率,更能使得课程建设与计算机等级考试二者兼顾,符合科学发展观的规律。

2更新教学观念,树立学生与教师的双主体理念

夜上海论坛 传统的教学是以教师教为主体,所以课程内容的选择往往多从教师易于教的方面考虑。对于计算机程序设计课程,因其授课教师大多是计算机或相关专业毕业的人员,对C语言比较熟悉,所以若从备课方便、讲授熟练程度来选择语言科目,教师喜欢选用C语言。因为C语言简洁、紧凑、使用灵活;同时C具有很强的流程控制结构、语言生成的代码质量高、运行速度快、可移植性较好,可以实现对程序的精确控制[1]。但是对于初学程序设计语言的非计算机专业学生来说,情况却不尽如此。

夜上海论坛 新的教学理念是发挥学生与教师的双主体教学设计,即教师是教学活动的主导,学生是教学活动的主体。这就表明在教学过程中,课程内容的选择也要充分考虑教学中学的一面,要从学生的任职需要和特点出发,进行程序设计科目的选择,要从教学的各个环节入手,提高学生学习的积极性、主动性、创造性,教学内容既要简单易学,又要满足学生毕业后的任职需要。

夜上海论坛 3以学生为本,统筹兼顾,VB是非计算机专业计算机程序设计课程的最好选择

VB是微软公司推崇的面向非计算机专业工程技术人员的首选程序设计语言,无疑也是武警院校非计算机专业程序设计的首选科目。

(1)VB是现今流行的应用程序开发工具,具有强大的生命力。

VB是基于Windows应用程序的开发工具,它为非计算机专业人员开发程序提供了强大的编程工具。“Basic”指的是BASIC (Beginners All-Purpose Symbolic Instruction Code)语言,意为“初学者最通用的语言代码”,是计算机技术发展历史上应用最为广泛的语言。“Visual”意即可视的、可见的,指的是开发像Windows操作系统的图形用户界面(Graphic User Interface,GUI)的方法,它不需要编写大量代码去描述界面元素的外观和位置,只要把预先建立好的对象拖放到屏幕上相应的位置即可。

VB功能强大,语法简单,执行代码效率高。因此,VB已成为每一个编程工作者学习时的首选语言,但其功能一点也不比VC++逊色。据统计,开发同样的应用程序,采用VB要比VC++的效率提高70%[2],所以VB具有强大的用户群和生命力。

(2)VB易学实用,许多高校把它作为大学生的入门语言。

夜上海论坛 自从1975年Basic语言问世以来,“Basic”已成为编程入门者学习语言的代名词,Basic语言以其易学易用的特点风靡全球。自从微软公司推出了划时代的VB,Basic又从一门“玩具语言”一跃而成为功能强大的应用软件开发语言。专业人员可以用Visual Basic实现其他任何Windows编程语言的功能,而初学者只要掌握几个关键词就可以建立实用的应用程序。

夜上海论坛 许多很有威望的计算机专家对VB也是情有独钟,如同济大学的龚沛曾教授对VB深有研究,清华大学的周颖老师说自己是从VB的学习而成长起来的,我们从他们编著的有关VB书籍的学习中受益非浅。现在国内许多高校都把VB作为大学生学习计算机的入门语言。

第5篇

论文摘要:本文从民办本科院校非计算机专业学生的现状和特点出发,结合本人近20年的教学经验,分析民办本科院校非计算机专业VB程序设计教学的现状,通过实例分析的方法,引出一种新的课堂教学思路和理念,旨在有效提高民办本科院校VB程序设计语言的教学水平和学生的学习效率。

VB程序设计是很多高校非计算机专业学生必修的一门计算机基础课程,我们学校也不例外。苏州大学应用技术学院是民办公有本科院校,该学院的非计算机专业理工科学生全部必修VB程序设计,并且要求学生通过江苏省计算机等级考试二级,且与学位挂钩。本人所教授班级学生每年等级考试的通过率均名列全院前茅,受到该院学生和教师的好评。今年在首次实行的由学生选择任课教师过程中,出现了“涨停版”状况,在短短的十分钟内,选我所授VB课程的学生人数爆满,导致后面很多想选修我的VB课程的学生没能选上,事后这些学生私下问我:“如果没选上我的VB课,能不能到我的课堂听课?”这件事情给我的触动很大,学生的认可是最高的奖励!通过多年的研究和探索终于摸索出一套适合民办本科院校的程序设计的教学方法。

夜上海论坛 1教师的人格魅力是吸引学生学好知识的必要条件

夜上海论坛 “师者,传道授业解惑者”,教师这个行业是一个非常神圣的职业。它不但给学生传授知识、解答疑问,更重要的是直接影响学生的思想价值观和世界观的形成。老师的一言一行都铭记在学生的心目中,潜移默化地影响着他们的成长。所以教师的责任心和职业道德是非常重要的,在某种程度甚至比他的知识水平还重要。这是我的个人看法。要想做一名好教师,首先要做一个好人:一个有爱心、肯奉献、有责任感和心胸宽阔的人。具备以上特点,再加上渊博的知识,则具备了教师的人格魅力。现在的大多数学生虽然都是独生子、娇生惯养、相对比较自私,但他们很聪明,很活跃,很有正义感,明辨是非的能力也很强。他们当中绝大部分都是积极向上的,有进取心,想很好地完成自己的学业,给家长、朋友、老师以及社会一个完美的答卷。只是自制、自理能力相对较弱,需要老师的监督和帮助。这个时候因为离父母较远,每天接触的长辈除了老师还是老师,老师的作用就体现出来。有很多学生愿意找他们喜欢的老师交流,甚至做知心朋友。学生喜欢的老师一定是有人格魅力的教师,这一点确定无疑。那么,一旦学生喜欢上这个老师,他们就愿意接受这个老师给他们传授的知识,按时完成教师布置的任务,在这种和谐的学习气氛中,学生的学习效果就不言而喻了。现在的学生和老师的关系和多年以前不同,甚至有很大变化:当学生需要老师做长辈的时候,老师就好像他们的父母,给他们关心和爱护;当学生需要老师做他们的知心朋友的时候,老师和学生应该是平等的关系,放下老师的架子,畅所欲言,各抒己见,甚至可以争论的面红耳赤。当学生需要老师做他们的严师,督促他们学习和上进的时候,老师就是一个有威严、神圣不可侵犯的人。只有这样,才能更好地引导学生成为一名会生存、会做人、会获取新知识的人,这也正是当今高等院校培养本科生的目标。

2从社会实际状况出发,让学生明确学习目标

夜上海论坛 目前我国的教育现状是:从小学甚至幼儿园开始,就强调学习、学习再学习!也就是孩子除了学习之外,不能有其他事情可做,只要学习好,什么都好。所谓的“一俊遮百丑”,却忽略了其他方面的培养和教育,虽然政府也正在努力改变现状,但因为社会竞争激烈以及人口众多,一时还难以改变。正因为如此,家长也是为了孩子今后的生存考虑,不得不督促孩子学习、学习、再学习!其他方面的教育等上了大学再说。这就给高等院校的教育带来了很大的压力,大学生存在的问题很多:首先是为什么要学习?学习目的不是很明确。其次是学生认为在大学里不用刻苦学习。因为在中学阶段学习很辛苦(这是不争的事实),学校为了升学率,学生为了考大学,甚至有中学教师给学生一种误解:上了大学就可以放松了。导致学生上大学后不爱学习,认为没必要再学习了,因为学习毕竟是一件很苦的脑力劳动。

针对当今大学生的现状,我们的高校教师一定要让学生明确自己为什么要学习?也就是学习的目的和意义是什么?结合实际状况,首先一个有价值的人一定是一个知识丰富的人,不管是民营企业家,还是公司里的老板、董事长或者CEO,其次,如果没有丰富的知识,也就谈不上更强的能力,这是一般的道理。每个人都想成为一个有价值、有作为的人,如果没有知识的的储备,没有学习新知识的能力,那他就很难达到目的。最后,学习无止境,学习的内容也是丰富多彩的,不单单是书本上的知识,还有学做人、学做事,学习别人的好经验,等等,就像北京大学学生侯东说的:“学习不单纯是学习知识,更多的是学习合理安排时间,合理调配资源,善于处理一些环境影响并最终找到自己的生活方式和目标”。

3采用适合民办本科院校大学生特点的教学方法

夜上海论坛 (1) 消除学习计算机程序设计语言的畏难情绪,给足学生一定能学好这门课的信心。

夜上海论坛 VB程序设计是一门计算机高级程序设计语言,学生在学习这门课程之前,已经掌握了计算机的基本操作和基本概念,也就是学过了“计算机应用基础”这门课,具备一定的计算机基本操作,但计算机语言和计算机的基本操作不一样,而且差别很大,基本操作是固定的动作,通过反复练习就可以熟练掌握,而且效果显著。而计算机语言要通过思考、推理和判断才能给出正确的算法,也就是解决问题的步骤,并用程序设计语言把它正确地表达出来。难度要比操作大得多。很多学生在学习VB程序设计时,最难的就是入门这一关,特别是民办大学生更是如此,他们不习惯采用计算机解题方法,甚至觉得计算机程序设计语言太难学了,简直像天书。他们更习惯于日常生活中的解决问题的思路。针对学生存在的这些问题,一般情况下我们首先要打消学生对学习程序设计语言的畏难情绪,给他们信心和希望,告诉他们计算机程序设计语言没有他们想象得那么难学,任何事情都是一样,只要努力认真用心去做了,都能做好,包括老师本身,也不是天生就会程序设计语言的,也是一点一滴学出来的。例如,在日常生活中,我想把一瓶酱油(简称a)和一瓶醋(简称b)交换一下,交换后,原来装酱油的瓶子,现在装醋;原来装醋的瓶子,现在装酱油,问:我们应该怎么操做才能实现呢?学生会认为这个问题太简单了,很快就给出答案:先拿来一个空瓶子(简称c),再把a瓶子里的酱油倒入空瓶,然后把b瓶中的醋倒入原来装酱油的a瓶中,最后把倒入空瓶中的酱油倒入原来装醋的b瓶中,就完成了酱油瓶和醋瓶互换的任务。这个问题不就是程序设计中的两个变量交换值的道理吗!一个变量a=1(酱油),另一个变量b=2(醋),现在要把a和b的值进行交换,(相当于把酱油和醋互换)则需要引用第三个变量c(相当于空瓶),先用c保留变量a的值(把酱油倒入空瓶),即c=a,再把变量b的值给a(把醋倒入酱油瓶),即a=b,最后把c的值给b(把空瓶中的酱油倒入醋瓶中),即b=c,则完成了a,b两个变量值的交换。在程序设计过程中,有很多内容是和我们现实生活中的内容相似的,很好理解和掌握,相信同学没有学不会的内容。

夜上海论坛 (2) 由浅入深,循序渐进,逐步引导学生步入正确的程序设计大门

在介绍VB内容的时候,教师不一定完全按照指定教材内容组织的顺序给学生讲解,因为教材本身就是一种参考书,教师可以根据大纲要求,把教材内容经过仔细研究、斟酌、提炼、总结和归纳成由浅入深、循序渐进、通俗易懂、简单明了的知识内容,再结合日常生活中的实例展现给学生。如VB控件部分的内容不必在开始时全部讲解,结合实际情况,用到哪些控件再详细的介绍那些控件。首先把窗体、文本框、命令按钮和标签控件介绍给同学就足够使用了,因为窗体是VB程序设计的基石和容器,所有VB的其他控件都放在窗体中;文本框可以用来作为输入和输出界面;命令按钮用来激活代码的运行;标签用来注释。至于其他控件,如图片框、列表框等等可以在后面介绍到数组的时候,作为数组输出界面时再陆续介绍。总之,介绍的内容以实际应用为主,有应用的需求就介绍,理论联系实际,效果会更佳。

在介绍VB的语句语法时,不要急于求成,遇到问题需要解决时,再介绍相关的语法规则和语句内容,以问题驱动内容的进展。如设计一个加法计算器,用来求出n个数的和。如果n的值较小,如n=2可以直接把两个数相加,但如果n=20或n=50的时候,如何实现这些数相加呢?方法很多,但最好的方法就是用循环语句来实现,引出循环的概念、语句和语法规则。

对同学们容易出现的一般性错误,尽量用通俗易懂的例子说明语句的含义。因为学生出错的原因就是没有真正理解语句的含义。例如,开始使用VB赋值语句的时候,很多同学容易出现的错误就是把赋值和被赋值对象写错位置。如把x的值赋给y,写成x=y,其错误的原因就是学生把赋值号“=”理解成数学里面的等号“=”了;同样的错误还有,把文本框1中的内容赋给变量a,表达成text1=a。针对这种错误,我们就可以通过日常生活中“借钱”这件事情来举例说明,如名字为x的人向某人y借了500元钱,前提是y一定有500元钱(y=500),我们可以用式子x

在讲解程序设计算法的时候,尽量从学生的角度去分析、理解和判断,最后推出正确的解题方法。先用自然语言分析和阐述正确的算法,然后再用VB语句描述出来,要把分析和表达的全部过程展现给学生,和学生一起分析和判断,最后再把初步写出的VB程序放在VB环境中调试和运行,验证算法是否正确。特别强调的是,有时需要故意设一些陷阱,让学生跳进去,也就是程序不要一气呵成,正确无误。故意留出一些关键性的,容易犯的错误,运行结果出来,发现错误时,学生会很惊讶,在分析的过程中,觉得应该不会出错,怎么最后结果不正确呢?这个时候教师也不要急于给出答案,让学生思考几分钟,再慢慢引动学生发现问题,进而想出解决办法,最后教师再给出正确答案。

归根结底,我们在传授知识的同时,最好能够把如何学习新知识的方法传授个学生,这才是我们的教育目的,小之以情,动之以理,由浅入深,循序渐进,慢慢的学生也就走进了VB这个新知识的大门。教师在授课的过程当中适时地出现一些幽默的句子或片断,也会让学生觉得VB程序设计的课堂不是那么枯燥乏味。把学生的情绪调动起来,学习的热情也就随之而来,效果也就可想而知了。

4结束语

夜上海论坛 民办本科院校的计算机程序设计教学方法的探索与实践是一项复杂和持久的系统工程,无论是在教学理念还是在教学方法上都需要不断的改革和创新。今后我们还要不断的研究和探索,在改进教学方法和教学手段的同时,加强学生实践能力的培养,进一步完善我们的教学机制。

参考文献

第6篇

Abstract: The course of VB Program Design is a kind of language courses of computer specialty. This course has a powerful language, the large course content, strong practicalness and other characteristics. This paper discusses the integrated teaching mode of "teaching, learning and doing" in VB curriculum reform to improve the teaching quality of the course and cultivate talents with strong practical ability for enterprises.

夜上海论坛 关键词: VB程序设计;一体化教学;教学改革

夜上海论坛 Key words: VB Programming Design;integrated teaching;reform in education

夜上海论坛 中图分类号:G652 文献标识码:A 文章编号:1006-4311(2016)30-0197-02

0 引言

夜上海论坛 随着IT行业的发展,企业对相关人才的要求越来越高,以软件开发为例,企业招聘程序设计人员的要求是不仅具有较强的合作能力,还具有丰富的开发实践经验。在这种情况下,高职计算机语言类课程的重要目标应是为计算机专业学生打好程序设计基础,不断提高学生程序设计水平。

夜上海论坛 VB是计算机专业学生必修的一门专业课程,它是一门可视化的、面向对象的程序设计语言,它具有所见即所得、结构化程序设计思想以及强大的数据库访问功能。在传统的教学模式下,VB课程授课以教师为主导,学生扮演者被动听讲的角色,该教学模式下学生需要花费大量的时间和精力学习语法等理论概念知识,没有时间和精力进行实践,导致该教学模式下培养出来的学生普遍实践能力较弱,进入社会中无法在短时间内适应企业的要求。究其原因主要是院校在教学过程中未将理论和实践结合起来,使得理论和实践脱节,这种情况严重影响了院校的教学质量,影响了院校应用型人才培养目标的实现。面对这种形势,院校应采取有效措施提高VB课程的教学质量,首要任务就是改革VB课程的教学模式,采用“教、学、做”一体化教学模式,该模式培养出来的学生都是理论和实践兼顾的应用型人才。

一体化教学是指理论与实践一体化教学,该教学方法打破了理论课和实践课的界限,将两者有机的结合起来,通过创造良好的实训环境,学生在“学中做,做中学”,更加注重学生的实践能力,突出教学内容和教学方法的科学性和实践性。

1 项目设计及教学思路

夜上海论坛 要想成为一名合格的VB程序设计员,应具备以下能力:熟练掌握 VB的基本设计、编程、调试的方法;学会用户界面设计方法;理解面向对象的程序设计思想;熟练运用VB开发环境等。基于此我们应建立相应的教学目标:熟练掌握VB的基本编程方法;掌握面向对象程序设计的特点;掌握可视化编程技巧等。在已确定的教学目标的基础上采取一体化教学模式,确定最终的教学思路为以学生为主体,以项目为载体。

在实际的教学过程中可通过设计与生活息息相关的项目来调动学习热情,即采用“大项目、小案例、任务驱动”的教学模式。 “大项目”是一个相对的概念,它可以突破教材的章节限制,将VB课程所有授课内容的知识点用一个相对较大的项目涵盖,其中各章节的知识点基本都隐含在项目的各个模块中;“小案例”同样如此,也是一个相对的概念,当完成各项目模块功能时,可通过引入学生感兴趣的、实践意义强的小案例,来导入知识点,引出项目。

为更好地完成课程教学的目的,笔者设计了一个相对完善的学生信息管理系统综合项目,如图1所示。每一个模块都包含界面设计、代码设计、调试等重要步骤,个别模块还包含数据库设计。在设计任务时尽可能循序渐进地把知识点融入到任务中,然而由于该门课程设计知识点众多,学生们要想良好地完成这个综合项目,需要预先做很多准备,掌握很多相关知识,比如各章节的知识点内容、VB程序设计的基本概念和基础知识等。需要注意的是设计项目时应循序渐进,先设计比较容易的项目,之后慢慢提高项目难度,如此不仅能够帮助学生学习和掌握相关的知识点,还能够培养学生的实践能力和团队协作能力。

夜上海论坛 2 模拟企业的课程设计和教学方法

夜上海论坛 传统的教学模式是先理论后实践,而“教、学、做”一体化教学模式的特点是理论和实践同时进行。这种新型的教学模式课程设计时围绕实践展开,项目中包含知识点,学生在实践的过程中就潜移默化的学习了相关的知识点。该教学模式要求学生积极的参与进来,教师作为整个项目的主导着,应合理安排各个环节的操作时间,适时地任务,鼓励学生解决各类问题。比如在讲授控件的使用方法时,可通过设计“图书管理系统”同步项目,把项目分成“界面设计”、 “菜单设计”、“数据库管理”、“用户权限管理”四个子任务,教师引导学生现将每个子任务都完成好,之后设置每个任务所需的控件属性,最后编程各个对象。“教、学、做”一体化教学模式的重点是教师做好自身的主导工作,给学生创造一个良好的“真实”学习环境,学生在身临其境中就能够潜移默化的掌握各个知识点。

3 灵活运用信息化教学环境

夜上海论坛 传统的教学模式是学生看教师的演示,然后依靠自身记忆模仿老师的操作进行操作,不能和老师进行同步操作。现在智能化的教学环境,教师可以采取多元化的教学手段,要求学生边看边做,实现“教、学、做”一体。

夜上海论坛 借助数字化校园建设的平台,利用现已成熟的网络技术,实现信息技术与学科课程的整合,营造一种新型的教学环境。①开发特色信息资源。对于重要的知识点开发微课资源,并将资源上传网络,学生借助学习终端可下载资源自主学习,在课堂教学中,也是“翻转”课堂的一个重要的组成部分。另外,也可以把课堂教学延伸到课堂以外。②借助网络交流平台。如今网络信息发展飞速,博客、QQ、微信已深深融入到我们的学习生活中,教师应引导学生正确地使用通讯工具及网络。师生可以通过微信等平台在课余时间进行反馈交流,帮助教师及时掌握学生学习动态,这是教学环节中必不可少的一部分。

夜上海论坛 当前在硬件配置方面,我们实现了电脑师生人手一台,多媒体教学系统设备也比较齐全,另外江苏省江阴中等专业学校学生人手一只“绿网”手机,学校也出台了一套比较健全的管理制度。在软件配置方面,安装了软件多媒体教学演示系统。且建立了专门的学生实训室。在这种教学环境下,学生们能够一边听教师讲课一边操作计算机,即在接收理论知识的同时就能够马上进行实际操作,如此不仅有利于学生掌握相关的理论知识,还能够培养学生的实践能力和团队协作能力,教学效果将事半功倍。

4 加强校企合作

职业学校最终的培养目标是让学生成为一个准员工,满足企业需求。所以高校应加强和企业的合作,在课程设计时充分考虑实际市场的影响,运用市场上常用的软件,注意不让教学内容和实际市场需求脱节。只有这样高校培养出来的才是理论知识和实践能力兼具的应用型人才,才能够满足当前社会的要求。我系与某软件公司联合办了一个校企合作班,由企业师傅与学校老师一起开发课程给学生上课。通过校企合作,为学生实训、实习提供了真实的场所。教学场地不再拘泥于课程,可在企业组织实训,由企业提供硬件设备和软件技术,学校负责管理。通过加强校企合作,能够有效提高学生的实践能力,如此不仅有效提高了学校的教学质量,也更好地满足了企业的用人需求,实现了学校和企业双赢。

5 建立新的考核评价体系

夜上海论坛 整个课程学习过程中要建立一个科学合理的教学评价体系。VB课程的目标是提高学生程序设计、代码编写和可视化界面设计的综合能力。所以我们采用的评价方式必须是多方面的,不仅要有理论知识检查,还要有实际操作能力的考核。传统的考核方式以考试为课程的最终评价依据,主要由平时成绩、期中考试和期末考试成绩总评而成。而现在我们除了通过课上提问和讨论发言来检验学生的理论掌握程度,还通过项目的阶段任务完成情况来检验学生是否掌握该课程的实践要求。对学生的考核评价以项目任务的完成情况为依据。根据企业相关职位的岗位要求来制定考核评价标准,以学生完成的项目成果作为评价的内容,从而确保学生的岗位职业能力,实现与企业岗位工作“零对接”。

6 结束语

夜上海论坛 一体化教学模式将理论学习与实际操作紧密结合,将学生从被动的学习模式中解放出来,提高了教学质量,让学生积极主动地参与到学习活动当中,自主地去构建个人知识,实现知识的迁移,使学生的实际操作能力和专业技能得到了培养。这种教学模式采用多种教学方法和教学手段,将教学的科学性和教学的艺术性相结合,始终以学生为中心,以就业为导向,以培养高技能人才为目标的职业教育办学方针。这种教学模式下学生就业后深受用人单位的欢迎,对学生就业有极大的益处。

参考文献:

夜上海论坛 [1]张海燕.在VB程序设计教学中实施项目教学法的实践与研究[D].北京:首都师范大学硕士学位论文,2007:12.

第7篇

夜上海论坛 2006年3月周以真教授在美国计算机权威期刊Communications of the CAM首次提出并定义了计算思维。计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等。它是一种本质的、所有人都必须具备的思维方式,就像阅读、写字、算术一样,成为人们最基本、最普遍、最适用和不可缺少的基本思维方式。它涵盖了计算机科学之广度的一系列思维活动,最根本的内容是抽象和自动化。

近年来,计算思维的培养已成为国内外研究的热点,计算思维能力将成为21世纪每个人的基本能力。2010年《九校联盟(C9)计算机基础教学发展战略联合声明》的核心要点也强调“需要把培养学生的‘计算思维’能力作为计算机基础教学的核心任务”。2012年李廉教授从现代科学思维体系的角度阐述了计算思维的内涵与概念、发展历史及与实证思维、逻辑思维之间的关系,提出了计算思维是构成现代科学大厦的最基本的思维模式之一,并指出了基于计算思维培养的新的教学体系建设是计算机基础课程教育今后改革的取向和挑战。

夜上海论坛 二、VB程序设计课程内容及发展现状

在VB程序设计课程教学内容上,不同学校不同专业所提出的任务和要求也不同。仅以我校自动化专业学生为研究对象,根据《VB程序设计》教学大纲的要求,主要讲授如下内容:VB集成开发环境、可视化编程基础、语言基础、三大基本控制结构、数组和自定义类型、用户界面设计(包括常用控件、菜单、通用对话框、多重窗体等)、文件及图形操作等基础知识和操作。课程的培养目标是要求学生掌握使用VB开发Windows应用程序的能力,培养学生学习程序设计的兴趣,为学生终身学习以及更好地使用计算机及相关技术解决本专业领域问题奠定基础。

夜上海论坛 近年来,随着计算机技术、网络及电子产品等的广泛普及和应用,学生计算机应用技能不断提高,VB程序设计课程的教学也出现了一些问题,如被列入非主干课程学生不重视、学生学习兴趣不高、逃课率增加、上课玩手机、上机找百度等。这些现象的出现迫使授课教师们不断地思考、分析、探讨和总结现阶段教学内容、教学模式等方面存在的缺点和不足,力图探寻一条新的课程改革方法和手段来逐渐扭转和改善现阶段存在的问题和现象。

三、基于计算思维培养的课程改革与实践

如何恰当地将计算思维融入VB程序设计课程教学过程中,以提高学生运用计算机知识抽象问题、进行问题求解和描述是程序设计课程教学改革所面临的挑战。尽管计算思维不仅仅是程序设计,但计算思维最终是需要程序设计去实现的,所以在未来VB程序设计课程中要有意识地、系统性地开展计算思维教学,从战略高度将计算思维的培养作为人的一种基本技能来培养进行教学,同时注重计算机技术与专业知识相结合,提升学生的学习兴趣,培养学生主动思考、主动学习和动手解决问题的能力。

夜上海论坛 1.在教学内容方面的改进

基于计算思维培养的课程改革的基本思想是①注重计算机程序设计文化素养的培养,构建一种计算机文化氛围,让学生理解和认识计算机的特点和用途,提高对计算机程序设计的兴趣。②课程体系与教学内容的研究把计算思维引入程序设计课程中,要把思维培养与程序设计的“思想”和“方法”相融合,以“发现问题分析问题寻求多种解决问题方案对多种方案进行比较最终实现解决方案”的问题求解驱动式程序设计训练方法。对于程序设计语言基础知识、结构化程序设计等基本知识在计算机软件基础课程已经讲解过的内容进行适当删减,避免重复知识点反复讲解降低学生的学习兴趣。从计算思维的角度出发,重组经典案例,将问题求解提升到计算思维的高度,对问题的表示、设计算法、提高计算机效率、将现实问题延伸,按照计算思维重组专业学科问题的教学案例,使学生体会出计算思维的本质和用计算机解决本专业问题的优点。密切联系后续专业课程,将编程思想与专业知识联系起来,让学生将理论知识与现实生活生产实际相结合,调动学生进行计算机程序设计的积极性。

2.在考核方式上的改进

夜上海论坛 传统的考查课考核方式为平时出勤(50%)+上机实验(50%),学生为了获得及格以上成绩,平时出勤率较好,几乎无缺席现象,但上课认真听讲、主动思考的人数不多,较大一部分学生上课或玩手机、或睡觉、或从事其他与课堂内容无关的事宜。在上机实验时,大多数学生又经常上网百度教材后面上机编程实验题的答案或照抄他人的程序代码,完成上机实验的考核。这种情况造成大多数学生成绩等级相似,学与不学分数差距不大等现象,使得学生自己思考程序算法的兴趣不高,因此改革考查课考核方式的任务迫在眉睫。调动学生主动学习的积极性,首先要打破的就是学与不学、自己做与抄袭的成绩等级相似的现象。将传统的考试制度逐步改革为平时(20%)+小作业(30%)+大作业(50%)的考核方式。平时主要考核上课出勤情况、随堂回答问题情况;小作业在课堂上进行任选完成各章节教材中的部分上机编程题目。这两部分的成绩总和只能控制在及格分数线以下,避免又造成传统考核方式下学与不学的成绩相似的现象。大作业安排在课后,让学生利用课余时间完成在课堂上答辩的方式,将专业学生(通常在60人左右)分成几个小组,每个小组10人左右,每小组中成员自行分工,共同完成一个综合性设计题目。大作业主要主要是针对现实生活中的问题进行设计或者针对本专业领域的问题进行设计。同时对在完成大作业过程中表现极为优秀的学生给予创新学分1学分的特别奖励(我校规定本科期间获得创新学分2学分以上方可获得两证)。

在2014年对我校2012级自动化专业123、124两个班级学生进行考试方法试点改革,采用新的考核制度,而121、122两个班级保持传统的考核方式。2012级自动化123、124共计55人,共分成6组,采取自由组合的形式,每小组有一个主要负责人,负责全局工作,细分设计工作,总结设计成果,参与验收答辩,认定成员间完成情况;两个协助人员,分别负责具体的界面设计部分及代码编程部分;其他成员,自行分工,1人专门撰写设计论文。大作业题目共6个,其完成情况及成绩情况见表1。

夜上海论坛 答辩在最后一堂课,每小组答辩时间15分钟,自述10分钟(其中包含功能展示3分钟),讨论5分钟;最后由学生自行评定各小组成绩等级,各小组成员成绩等级由小组负责人初评,组员讨论最终确定。因首次采取答辩形式课程环节,学生的参与积极性明显提高,课堂讨论气氛较为活跃,取得了一定的教学效果,但也存在一些问题和不足,主要表现在如下方面:①因为是非主干课,即使考核方式新颖,仍有10%的学生未能积极主动参与进来;②在答辩表述方面,因为学生年级较低,准备的不足,偶有冷场情况发生;③因时间限制,设计的程序界面功能不完善,有局限性。在下一学期将这种考核方式在整个专业进行试点,并不断跟踪及反馈学生后续专业课程的学习情况以确定改革的方向。

3.在教学模式上的改进

程序设计课程是一门集知识和技能于一体、实践性很强的课程,要求学生既要学好理论知识,又要掌握实际操作技能。在传统的理论教学中以培养学生应用计算机和计算思维解决实际问题的基本能力为核心,注重基础知识的教学,加强对问题求解、设计与实现模型的学习与训练,改变以往技能讲解学习为基础的培养方式。传统的课堂教学模式是以教师为主导,辅以师生互动的课堂教学模式。教师在授课时,基本上沿用前苏联教育家凯洛夫的组织教学导入新课、讲授新课、巩固新课、布置作业,以教师、教材、课堂为中心的“三中心”教学模式,忽视了课外实践、课堂实践。

采用项目教学法是实施探索教学模式改革的一种新方法。从学生的角度看,项目是一种学习方法,适合学习各类实践性和操作性强的知识和技能。从教师的角度,项目是一种建立在建构主义理论基础上的教学方法,适合培养学生自主学习、分析问题、解决问题的能力。在教学过程中,项目的确定、完成、对完成项目情况的评估成为教学的中心环节,教师由传统的“主角”转变为“配角”,学生由被动地接受知识转变为主动地寻求知识。这种教学模式适用于培养学生的创新能力和独立分析分析问题、解决问题的能力,便于学生循序渐进地学习信息科技的知识和技能。学生会不断地获得成就感、并更大地激发起求知欲望,从而培养出独立思考的求学精神。

第8篇

夜上海论坛 论文关键词:控件,函数,方法

 

常见的时钟均是以字符形式显示当前的时间,这种显示方式太过死板,为使时间的显示形象、生动,我利用VB设计了一个时、分、秒针动态转动的时钟的算法。VB中用来显示时间最简单的方法是利用函数取出时、分、秒以字符形式显示,要模拟真实的指针转动必须配合VB中其他控件中国知网论文数据库。

1、编程思路

利用VB中的形状控件画出时、分、秒针,为使是、分、秒针动态转动,首先可使用line方法初始化时、分、秒针一端的坐标为用户自定义坐标系统的原点,再利用时、分、秒转过的角度求出时、分、秒针另一端的坐标函数,然后利用line方法确定时、分、秒针在自定义坐标系统中另一端的位置。下面以某一时刻为例说明实现时针转动的具体算法。设当前时间为h:m:s,时针长为R1,端点坐标为(x1,y1),分针长为R2,端点坐标为(x2,y2),秒针长为R3,端点坐标为(x2,y2),为求出三个端点的坐标,只须求出他们转过的角度,利用极坐标与直角坐标的关系即可求出端点坐标。图1给出直角坐标系统中时、分、秒针的坐标与时、分、秒针转过的角度的关系(默认坐标系统的y轴正方向向上);利用时钟控件的Timer事件实现秒针每转一次加载一副背景图像,从而达到动态图像的效果。

夜上海论坛 秒针每走一秒转过的角度为6度,走过s秒,则其转过的角度为6s,若y轴正方向向上,则秒针的顶点坐标值为:

夜上海论坛 X3=sin((6*s) *∏/180) *r3

y3=cos((6*s) *∏/180) *r3

若y轴正方向向下,则顶点坐标值为:

夜上海论坛 X3=sin((180-6*s) *∏/180) *r3

y3=cos((180-6*s) *∏/180) *r3

分针每走一分转过的角度为6度,走过m分,(毫秒忽略不计)则分针转过的角度为6m函数,若y轴正方向向上,则分针的顶点坐标值为:

夜上海论坛 X2=sin((6*m) *∏/180) *r2

Y2=cos((6*m) *∏/180) *r2

夜上海论坛 若y轴正方向向下,则顶点坐标值为:

X2=sin((180-6*m)*∏/180) *r2

夜上海论坛 Y2=cos((180-6*m)*∏/180) *r2

时针每走一小时其转过的角度为30度,考虑到系统取出的小时值为整点时间,而时针有指到两个整点时刻的时候,所以时针端点坐标的计算应考虑到时针转过整点时刻的情况,把时针转过整点时刻的分钟值转化为小时值,即一分钟为1/60小时,则可求出时针转过的总小时值,即若当前时间为h小时m分钟,则时针转过的总小时值,即若当前时间为h小时m分钟,则时针转过的角度为30*(h+m/60)度,那么时针的端点坐标值为:

夜上海论坛 X1=sin((30*(h+m/60))*∏/180) *r1

Y1=cos((30* (h+m/60)) *∏/180) *r1

若自定义坐标系统的y轴正方向向下,则时针的端点坐标值为:

夜上海论坛 X1=sin((180-30*(h+m/60))*∏/180) *r1

Y1=cos((180-30* (h+m/60)) *∏/180) *r1

夜上海论坛 因为时、分、秒针转过的角度不断变化,所以时、分、秒针的端点坐标也在不断变化,从而实现了时、分、秒针动态转动的效果中国知网论文数据库。时、分、秒的时间值分别利用函数hour(time)、minute(time)、second(time)求得(time为系统时间)。

夜上海论坛 2、流程图如下

夜上海论坛 3.程序的主要源代码如下

Private Sub Timer1_Timer() ‘显示系统时间

夜上海论坛 Label1.Visible=True

夜上海论坛 Label1.Caption=Time $ ‘装入图形函数,以实现秒针每走一秒背景图标动态的效果

Static pickbmp as integer

夜上海论坛 If pickbmp then

Image1.picture=loadpicture(“e: bmoon02.ico”)

Else

Image1.picture=loadpicture(“e: bmoon08.ico”)

End if

夜上海论坛 Pickbmp=not pickbmp

Line1.visible=true:line2.visible=true:line3.visible=true

‘确定指针的初始位置

Line2.x1=0:line2.y1=0

Line1.x1=0:line1.y1=0

Line3.x1=0:line3.y1=0

‘在指定位置处打印时钟的刻度

Form1.forecolor=vbGreen

夜上海论坛 Form1.currentX=-7

夜上海论坛 Form1.currentY=68

Form1.print “6”

Form1.forecolor=vbRed

Line(-2,95)-(-2,85)

夜上海论坛 Form1.forecolor=vbGreen

Form1. .currentX=-10

Form1.currentY=-85

夜上海论坛 Form1.print “12”

夜上海论坛 Form1.forecolor=vbRed

夜上海论坛 Line(-2,-95)-(-2,-85)

Form1.forecolor=vbGreen

Form1. .currentX=70

夜上海论坛 Form1.currentY=-10

Form1.print “3”

Form1.forecolor=vbRed

夜上海论坛 Line(80,-3)-(85,-3)

夜上海论坛 Form1.forecolor=vbGreen

夜上海论坛 Form1. .currentX=-75

夜上海论坛 Form1.currentY=-10

夜上海论坛 Form1.print “9”

夜上海论坛 Form1.forecolor=vbRed

Line(-80,-3)-(-85,-3)

‘下列语句为时、分、秒针端点坐标计算,指定秒、分、时针的长度分别为65、55、40

Sx=sin((180-6*Second(time))*3.14159/180)*65

夜上海论坛 Sy=cos((180-6*Second(time))*3.14159/180)*65

Line3.x2=sx:line3.y2=sy

夜上海论坛 mx=sin((180-6*minute(time))*3.14159/180)*55

my=cos((180-6*minute(time))*3.14159/180)*55

Line2.x2=mx:line2.y2=my

夜上海论坛 hx=sin((180-(30*hour(time)+30*minute(time)/60))*3.14159/180)*40

夜上海论坛 hy=cos((180-(30*hour(time)+30*minute(time)/60))*3.14159/180)*40

Line1.x2=hx:line1.y2=hy

夜上海论坛 ‘整点响铃

If second(time)/60=0 And Minute(time)/60=0 then

Beep

End if

End sub

夜上海论坛 该程序经调试可准确运行,为便于用户使用,可将程序添加到系统的开始菜单的启动子菜单中,系统每次启动时在桌面上自动运行该程序;该程序对教学也有一定的参考价值,在讲时钟控件与图形控件时,利用此程序可调动学生对这部分内容的兴趣,也可充分发挥学生的特长,让学生完善该时钟的制作。为了能将此文件作为一个独立的程序来运行(脱离VB环境下)和能作为一个完整的软件进行拷贝,须利用VB中的package&Deployment向导制作成一套安装程序。

[参考文献]

[1]龚沛曾、陆慰民、杨志强,Visual Basic 程序设计教程[M]高等教育出版社

[2]胡喆,利用VB开发多媒体程序的一个实例[J]微型计算机应用,第19卷第1期,1998

第9篇

关键词:课题项目研发;教学模式;应用型人才

夜上海论坛 中图分类号:G642 文献标识码:B

夜上海论坛 文章编号:1672-5913(2007)10-0039-02

西北师范大学知行学院是甘肃省第一所独立院校,为了增强办学竞争力,不断地创建专业特色鲜明、应用优势突出、就业需求看好的新专业,在传承和发扬西北师范大学百年老校的崇尚学术、追求卓越、严谨治学的优良传统同时,积极研究和探索,采用新的教学模式培养人才,提高教育教学质量。

知行学院计算机与信息科学系是为适应西部大开发,加快培养信息技术人才而设置的,在坚持科学发展观的前提下,全面推进素质教育,从改革教学模式着眼,有效地培养应用型人才方面,做了许多切实的工作。

第一,从社会需要定位培养目标,制定务实的办学思路,就是“面向社会、以人为本、任务激励、实践创新、多能多证、应试应市”。面向社会就是以社会的需求,和“科教兴国”战略、“人才强国”战略的要求确定专业设置、培养目标和教学模式,为西部大开发培养信息技术人才。以人为本,就是以学生为本,教师和管理人员要为学生的成才服务。实践创新,就是要培养学生的实践能力和创新意识,使其具有新型应用型人才的重要素质。任务激励,就是以课题项目的研究、开发,充分调动学生的学习积极性。多能多证是所培养的应用型人才,不仅要拿到学校的毕业证,还要拿到国家相关的专业等级与职业资格证书。应试应市,表明素质教育不排斥考试能力,学生要能适应专升本的考试、研究生考试和国家机关凡进必考的形势,适应人才市场的需求,应聘就业。在此基础上,进一步实施的新举措是“两手抓”:一手抓学生的搞课题项目实践,一手抓考取国家的专业技术等级和职业资格证书。使学生在毕业时,每个人都搞出几个项目成果,获得几个资格证书。几年来的实践证明了整个办学思路有很强的指导性和实际意义,已在增强学生素质,提高就业率方面凸现优势。

夜上海论坛 第二,根据经济社会发展和人才市场对各专业人才的素质要求,合理地调整各专业的课程设置和教学内容,强化学生实践能力、创业能力的培养,积极推行教学改革,努力推进教学创新已势在必行。教学改革要落在实处,除了科学地制订教学计划外,在课程设置中,知行学院计算机系突出了这样几个方面:首先,瞄准技术发展应用领域的前沿,不断的选择增设实用性强的新课程,以适应计算机科学日益迅速的发展。几年来先后增设了大型数据库、ASP、EDA技术等课程;其次,着眼应用,增加实践性课程,制定了x+1学期的教学与实践计划,即专科生第六学期从事专业实习,本科生第八学期安排专业实习。为了加强毕业生专升本与就业工作,把专升本的辅导提早到第5学期,把毕业设计与毕业论文提前到第7学期,这一措施既可以保证上述工作有充分的时间来完成,更重要的是学生的毕业论文和毕业设计成果在就业应聘面试中派上用场。再次,面向社会,增设开发和研究性课题。对专职教师要求教学采用新技术、新手段,以全新的姿态走上讲台,教学效果普遍较好。

第三,为落实办学思路培养应用型人才,多年来的实践中认识到,应用型人才的最主要的特点是具有较强的实践能力和创新精神,既能创新,又能创业。能够搞项目与课题的研究和开发,所以培养学生从事课题、项目的研究和开发能力,成为培养应用型人才的关键。依据动机理论,人们愿意做出努力的事情不外乎两种:一是他们指望做后能成功的事,一是能看到成功带来收益的事。在教学过程中向学生公布一系列有实际意义的课题任务,向学生说明实际意义,完成这些任务能学到什么技能,然后让他们报名选做,老师进行个别指导,引导学生自己进行社会调查、搜集资料、进行实践和创造性的学习。通过任务激励,极大的调动了学生的学习积极性和主动性。

第四,采用课题、项目研究与开发教学模式,培养应用型人才。为了使学生有较多的项目开发的体验与实践,在一部分应用性强的专业技术课程的教学中,改变传统的教学方法,采用新的教学模式,就是把教学的目标、教学的过程、教学结果考核均与课题项目的研发相连接的教学模式。这样就改变了只靠毕业设计集中搞项目的办法,而让每一门专业课为新型人才培养做出贡献。笔者有幸承担了“Visual Basic程序设计”课程的教学任务,率先进行“课题、项目研究与开发教学模式”的教学。第一步,改编写了教材,将VB课程学习中要做的课题一一列出。VB这门课程是计算机专业和电子信息工程专业学习的核心必修课,实践性很强的课程,对培养学生的实践能力和创新能力能发挥重要作用,在学生整个知识体系中,占有重要地位。第二步,设计一个全面全新的教学模式:“一个飞跃达标、两个阶段教学、三个层次要求、四个方面考核”。一个飞跃达标,就是实现从案例教学入门到项目开发的飞跃。由于教学目标定位于培养应用型人才,其最重要的特征就是能搞课题项目研发,具有较强的实践能力和创新能力。把课题、项目研发的任务分解到相关课程教学中进行。这样,毕业时每个学生可以搞出三、四项成果,提高了就业竞争能力;两个阶段教学,就是把一个学期分成两个阶段,进行阶段教学。第一阶段,进行案例教学,以课题为主线,学习基本概念、基本理论和基本设计方法,做到由基本概念与案例入门。第二个阶段,进行项目研发。综合运用所学知识和方法,分析和解决实际问题,不仅能做小项目,也能做功能相对完整的中等程度项目。实现由“案例”到“项目”的飞跃;整个阶段都是讲练结合,加强实际动手能力的培养。具体做法是:每个课题单元分两个阶段,教师讲解、演示为一个阶段(2学时),学生实训练习为一个阶段(4学时)。教师讲解、演示课题项目时,给出课题项目名称,说明课题目的、课题意义,讲解演示设计过程,(包括界面设计、属性设置、代码编写、运行调试、整理保存和注释详解)让学生知其然而且知其所以然。通过实训练习,使学生亲手完成一些案例和项目任务,获得成就感,从而引起继续学习的兴趣。提高学习的积极性,达到“任务激励”和“实践创新”的目的;因材施教,分层次教学。实训练习课题难度分一般、较难和难三个层次。一般的课题任务要求全体同学完成,较难的课题任务要求二分之一的学生完成,难的课题任务供少数优秀同学选做。考核成绩考虑到四个方面:学习态度、出勤情况、创新精神和成果业绩。期末考试,让学生分组选题,采用论文答辩的方式进行。看创新精神,看成果业绩。第三步,根据改革了的教学模式,进一步设计了改革要求,即为授课编写独具特色的讲稿,打印成册;采用多媒体手段进行教学,做出教学课件;汇编学生完成的课题成果,刻录成光盘并保存。按照上述的教学模式以及改革要求进行的教学,从教得方面来看,因为“Visual Basic程序设计”是一门实践性很强的课程,为避免单调的理论讲解,笔者从多本辅导教材中精心挑选了多个有代表性的实例汇总为16个课题(如窗体程序设计、复选框程序设计、查询密码程序设计、菜单程序设计、多重文档程序设计、访问数据库技术、宾馆管理系统等)作为主导教材详细讲解,制作了多媒体教学课件。并在多媒体教学环境中进行实际演示,配合理论知识的强调,教学效果良好,学生比较感兴趣,学习的主动性和积极性较强,在期末课题设计时也充分发挥了创造性思维。从学的方面来看,学生对这门课程的教学比较感兴趣,因为这门课程实用性较强,但难度不算很大。学生们为了能学好VB这门课,借阅了多本相关资料,花费了大量业余时间来上机实践,进一步强化他们对一些VB实用例子的理解和掌握。因此,学习的效果也比较好。“Visual Basic程序设计”这门课程实用性较强,符合专业课学习的改革要求。达到了培养学生从事课题、项目的研究和开发能力,促进他们成为应用型人才的目的。2006年VB程序设计课题项目研发教学的成果比较显著,下半年期末考试中列出26个课题,学生分组进行研发,同学们设计出了“学籍管理系统”、“电子教务系统”、“评语管理系统”、“企业人事管理系统”、“小区物业管理系统”、“快捷Windows桌面操作系统”、“AMT模拟系统”、“黄河风采抽奖系统”、“多媒体播放器”等课题项目,一些同学的程序设计很具特色和创造性。

第五,知行学院计算机系又将“课题项目研发的教学模式”推广到EDA技术、数字图像处理、C程序设计、CAXA、多媒体技术、JAVA等课程,都收到了良好的效果。数字图像处理期末列出了27个课题,同学们完成的“建立五官数据库为特征人物画像”、“运动员号码识别处理系统”独具特色。EDA出了20个课题,“三层电梯控制设计器”、“乒乓球游戏设计”、“智能函数发生器设计”、“数字钟”等课题学生们在创建过程中充分发挥了创造性,使同学们都很有成就感。2003年以来学生完成各类课题150多项,学生的专业技能显著提高。因此在一部分专业课程中改革教学内容和教学模式,对学生的实践能力、创新能力,培养应用型人才很有实际意义。

夜上海论坛 收稿时间:2007-2-3

第10篇

关键词:VBA;AUTOCAD;二次开发;抗滑桩

1 引言

在我国,抗滑桩作为治理滑坡的一种主要工程措施被公路、铁路、水利、国土等部门广泛采用,并在桩型和应用范围方面得到较大的发展。与其他抗滑工程相比,抗滑桩具有如下优点:设桩位置灵活,除成排设在滑坡前缘外,也可根据具体情况,设在滑体的其他部位,并可与其他防治措施联合使用;开挖土石方量小,施工中对滑坡体的稳定状态影响小;挖孔桩桩孔可揭示滑坡的工程地质情况,检验和修改原设计,使之更完善更符合实际情况;施工方便,设备简单。由于抗滑桩在治理滑坡中的突出优点,使抗滑桩广泛应用于滑坡治理工程。目前抗滑桩结构设计一般采用理正软件计算抗滑桩内力,再由结构设计人员按照规范要求进行配筋设计,最后根据配筋计算结果在AUTOCAD手动绘制抗滑桩结构图,效率较低,出图慢。使抗滑桩结构图绘制自动化,将大大提高工程设计人员的效率。

抗滑桩结构图绘制通常使用CAD软件平台,利用其提供的二次开发工具VBA (Visual Basic For Application)可以很简便并迅速地开发出多功能的应用程序。VBA 组件基于可视化、面向对象开发工具VB,其开发环境与VB 集成开发环境相近,但较Auto Lisp 、VisualLisp、ADS等开发工具,更能快捷、方便地实现友好的人机交互,功能强大,扩展灵活且开发简单,易于实现。利用它进行CAD的二次开发,进行抗滑桩结构图自动绘制,能大大提高工作效率,使结构设计人员能有大量时间进行结构计算调整,便于优化设计。

夜上海论坛 2 程序设计基本思路

一般而言,一个完整的CAD 系统,包括前处理部分、核心计算部分、后处理部分等三大部分组成。前处理部分主要是收集各种计算参数及相关数据,核心计算部分一般是计算分析子程序,后处理部分就是将计算结果自动成图,以减轻设计者的负担。本文开发的抗滑桩结构图自动生成系统首先通过对话框输入抗滑桩尺寸参数、钢筋布置参数、成图要求参数,然后通过菜单触发的方式,产生消息映射,进行钢筋配置计算及工程量计算,最后将计算结果可视化,点击成图命令按钮绘制抗滑桩立面图、截面图及工程量表。程序设计流程如图1所示。

3 程序设计过程及程序实现

(1)启动时载入VBA 工程

当AutoCAD 启动时, 在其目录中寻找名为KHZ.dvb的工程。这一文件将被自动载入并作为缺省的工程,同时触发文档级事件ACADStartup,在此事件中载入AutoCAD 二次开发的DVB 文件。实现该功能程序代码如下。

Call AcadApplication. LoadDVB (“C:\Program Files\AutoCAD 2006\Support\KHZ .dvb”)

(2)软件在AutoCAD平台上,开发了自定义的菜单

夜上海论坛 使用VBA/ActiveX 可以编辑、增加已有的菜单结构,也可以完全替代当前菜单结构,本程序增加菜单如图2所示。考虑到工程制图的需要,软件是在AutoCAD界面上添加抗滑桩结构图绘制所需的菜单。通过TheMacro与菜单相连,激活VBA文件中相应模块的宏,执行用户的指令。相关代码如下。

夜上海论坛 Dim currMenuGroup As AcadMenuGroup

夜上海论坛 Set currMenuGroup=Application.MenuGroups.I_tem(0)

夜上海论坛 Set NewMenu = currMenuGroup.Menus.Add("抗滑桩")

TheMacro = Chr(3) & Chr(3) & Chr(95) & "-vbarun ""KHZ.dvb!DZPM.KHZ""" & Chr(32)

Set NewMenuItem = NewMenu.AddMenuItem(NewMenu.Count+1, "抗滑桩结构图", TheMacro)

夜上海论坛 Set NewMenuItem = NewMenu.AddMenuItem(NewMenu.Count+2, "护壁结构图", TheMacro)

(3)可视化界面设计

在本程序中,设计了抗滑桩参数输入及钢筋参数输入两个窗体。

抗滑桩参数输入窗体(如图3所示):该界面要求输入抗滑桩尺寸参数、钢筋布置参数、成图要求参数,程序调用这些参数通过内置计算程序生成抗滑桩立面图、截面图等。

钢筋参数输入窗体(如图4所示):该界面要求输入本桩型涉及的钢筋种类、钢筋直径、钢筋长度等参数,程序调用这些参数通过内置计算程序生成工作量表。

(4)计算及成图程序设计

夜上海论坛 在通过可视化界面获取参数后,编制绘图程序绘制抗滑桩立面图、截面图及工程量表。部分程序源代码如下。

(5)程序实现

根据可视化界面输入参数后,点击绘图命令按钮,程序自动生成抗滑桩立面图、截面图及工程量表。部分成图效果如图5所示。

4 结语

夜上海论坛 本文利用基于VBA的AUTOCAD二次开发技术,实现了AUTOCAD抗滑桩结构图的参数化绘制,符合工程实际要求,操作方便、简洁,大大提高工作效率。实践证明,VBA 二次开发技术将VBA 的快速编程优势与AutoCAD的图形功能完美结合,是一种行之有效、方便实用的设计方法。

参考文献:

[1] 卢松,舒成彬,刘松林. 抗滑桩的计算机辅助设计[J] . 四川建筑,2012,32(1):95-96.

[2] 陶丽娜,唐胜传,杨建国,陈赞.边坡支护方案优化设计系统中的抗滑桩设计子系统[J].公路交通技术,2005,12(6):9-12.

第11篇

但是由于计算机公共基础课是针对低年级学生的,比如在清华主要是针对大一的学生。这些学生刚刚进入大学,对自己的本专业还没有一个清晰地认识,更不知道学习计算机课程是为了什么,加之中学时应试教育的后遗症,学生中普遍存在“死读书”的现象。就是说不知道也不关心为什么学习计算机技术,没有动机,缺乏学习主动性,更谈不上创造性思维。

针对上述情况,我在计算机公共基础课中,一开学就启发学生自己进行调查研究、查阅资料,撰写小论文阐述计算机技术在各自专业中的应用,论文成绩作为期末成绩的加分。学生对于这种方式非常欢迎,纷纷到图书馆查阅资料,走访本系学长、教授,有的班还为此举行班级研讨会,请本系教授作报告。

这里,摘录来自清华大学不同院系学生的小论文,以展示在大学一年级学生眼中计算机技术与各专业的关系。

周丹彤:

夜上海论坛 计算机技术在土木工程领域有着十分广泛的应用,在对图形的处理方面发挥了传统人工绘图无法比拟的优越性。计算机辅助设计(Computer Aided Design,CAD)是随着计算机技术和计算机设备的飞速发展而产生的一门新兴学科,是建立在近代计算机软、硬件技术和工程技术基础之上的交叉学科。

计算机程序设计技术在CAD技术的应用与开发方面均有着不可替代的作用。

ADS(AutoCAD Development System)系统能利用C语言的结构化编程手段,使应用程序以外部可执行文件的方式在AutoCAD环境中运行。ADS实际是一组可以用C语言来编写AutoCAD应用程序的头文件和目标文件。ADS应用程序级可以充分利用AutoCAD本身具有的强大功能,同时有拥有C语言运行函数库的全部功能。而从AutoCADR13.0版开始,AutoCAD提供了更为高级的开发工具ARX(AutoCAD Runtime Extension),它以C++为基本开发语言,充分发挥了面向对象变成的诸多优势,使得应用程序运行速度更快,访问和操作图形数据库更为方便。正如C++语言可以兼容C语言一样,在ADS和ARX之间,AutoCAD提供了成为ADSRX的编程手段和程序库,实现了对ARX和ADS程序的兼容。

夜上海论坛 而最新出现的ObjectARX在建筑结构等各种交互计算与绘图的应用领域发挥着重要的作用。在AutoCADR14.0以后的版本,用户可以利用ObjectARX编程环境,采用面向对象的C++语言来开发ObjectARX应用程序。

使用ObjectARX对AutoCAD进行二次开发,要求开发者必须具备一些基本编程知识,其中包括C或C++知识、面向对象编程概念、Microsoft Visual C++的使用,以及AutoCAD的基本操作方法等。

陈颖:

夜上海论坛 C语言比其它的程序设计语言应用范围更广。具体到本专业的应用,在单片机中应用最广,其他还用在DSP程序的开发,以及Matlab程序编写上。

在目前以及可预见的未来,单片机发展的主流在于:单片机的真正单片化、低功耗、电源电压允许宽范围波动。单片机的单片化,使得电路设计越来越简单,同时必然使得单片机型号明显增多,对开发应用人员来说,便会针对不同情况选择不同型号的单片机,C语言则使此项工作简单易行。

聂慧饶:

传统的机械制造周期长,精度低,大批量生产,很显然已经不适合21世纪的需求。传统的生产方式已经制约了机械制造技术的发展。而不幸的是,在我国,大部分地区的制造行业仍然使用的是传统的生产模式,这不仅给我国带来了极其严重的环境污染,还造成了大量的资源浪费,与我国的“可持续发展”战略背道而驰。而作为机械人,我们必须担起祖国的大任。

在21世纪,生产必然要求产品开发周期短,产品的精度高,能够满足各种用户的不同要求(即不需要大批量生产)。这其中的每个过程都与软件技术密不可分。计算机辅助设计在产品的设计与开发中有极大的作用。数值模拟在生产过程中的应用也相当广泛。传统的手工生产也正在被后起之秀“机器人”逐步取代,使用机器人可以有效地解决生产过程中的精度问题。

在这里,我的意思并不是每个机械人都必须同时掌握软件开发技术。毕竟,作为机械人,我们只需要在机械制造领域有所作为就够了。但我们还是要学习计算机语言掌握住适当的编程技术,为以后同软件专业的人才共同开发出自己的软件打好基础。虽然当前机械制造领域内已有许多现成的软件,但它们也并非都相当成熟,而且绝大多数不出自我国之手。市场上,何曾见过完全由我国自主开发的大型软件?所以,发展的空间还是很大的。

21世纪有太多的软件技术等我们去开发,有太多的机械制造技术等我们发展。

侯鉴玻:

我是一名来自精仪系的学生,初步了解,程序设计技术在我们系也应用得非常广泛,根本缺不了。因此,下面我简单介绍一下程序设计技术在我们专业的一些应用。

夜上海论坛 ActiveX控件在程控仪器控制程序设计中的应用。

......

夜上海论坛 程序设计在机械设计计算中的应用。

......

夜上海论坛 程序设计在画法几何中的应用。

......

程序设计在水泵轴类零件强度校核的应用。

......

夜上海论坛 程序设计在机床PLC故障显示的应用。

......

其实,程序设计技术在我们专业的应用还有很多,也正是它的应用使得我们专业很多领域发展的越来越快。通过这次搜集资料,我学到了好多东西,也进一步认识到了程序设计的重要性。程序设计基础这门课非常必要,学好了它,以后我们才能进一步学习程序设计,才能在专业上有所发展和突破。

潘宁:

夜上海论坛 汽车被称为“轮子上的计算机”,对一辆汽车的先进程度的评价标准,已经逐渐从看其发电机的功率有多大,转变为主要看其芯片的计算能力有多强、汽车软件的功能有多强。现代汽车是以计算机为中心的高度自动化、集成化的控制系统,该系统随着汽车功能的不断增多而日见完善和复杂。

国外有人预计,将来汽车中90%的创新有赖于电子技术,而创新中的大部分将依靠软件来实现。

陈颖:

夜上海论坛 程序设计在任何一个工科领域都有广泛的应用,而对于强调信息快速传递处理的工业工程专业更是如此。比如在供应链管理方面,工业工程的专业人员需要做到信息共享,这样能将整个供应链,从供应商、生产商到零售商――整合到一起,更快地响应客户需求,降低库存,提高供应链绩效。为了达到这一目标,就要依赖各种高级管理软件。要想更进一步优化这一信息管理系统,取得效率的最大化,就需要设计新的算法做出新的软件。这是一个没有最好只有更好的方向,更是程序设计在工业工程专业的应用中最具有挑战性的方向。

具体说来,程序设计在工业工程专业中的应用可以分为以下几个方面。

1、生产方向

夜上海论坛 建模与仿真(Modeling and Simulation)

开发语言:C/C++

应用软件:Flexsim,Promodel, Anylogic, MATLAB

夜上海论坛 其中Flexsim是一个基于C语言程序设计的软件,工业工程系学生一般在大三上学期会学到

应用举例:奥运园区垃圾回收系统仿真,大型超市排队系统仿真

*制造系统实体建模

应用软件:ProE, AutoCAD

*管理信息系统(MIS)和物流信息系统

MS 的access和borland 公司推出的delphi是数据库管理软件,应用于管理信息系统就是MIS.

夜上海论坛 应用数据库软件:SQL-server,DB2,MSAccess, Oracle

用户界面开发语言:VB,JAVA

应用举例:企业MRP, ERP系统开发与维护

2、物流方向

*物流网络规划

应用软件:使用LINGO,LINDO, MATLAB等解线性规划问题

夜上海论坛 应用MATLAB, C/C++, JAVA等实现优化算法:如VRP(车辆路径规划问题),TSP(旅行商问题)等优化的开发

夜上海论坛 3、人因方向

*实验设计

统计软件:SPSS

夜上海论坛 实验界面设计:基于VB, JAVA

*虚拟现实

*用户可用性(usability)

从研究内容上看,工业工程关注工程运作的效率、成本、质量等方面问题。

夜上海论坛 在考虑效率问题时,工业工程涉及到优化,其中包括线性规划、动态规划等等,一般会在运筹学中学到。这些问题如果是小规模的则可以通过手动解决,但大规模的就只能通过算法解决,而算法都是通过程序(一般是通过C++程序设计)实现的。

举个例子:工业工程的经典问题――选址问题,一般都是先建立模型,然后列出模型的约束条件,再就是解这个模型,实际问题一般规模比较大,都是通过设计算法来解决这个问题,而算法设计要通过程序来实现。

第12篇

关键词:高等教育;计算机教学;项目教学

夜上海论坛 项目编号:该论文由科技厅指导性软课题资助

近年来,计算机领域在全球呈现出快速发展的态势,尤其是软件业,其发展速度已经远远超越其他的科技领域,在某种程度上已经开始引领着全球在经济、贸易、产业、人力等方面一系列的变革。所以,就目前的情况看,计算机相关技术的掌握及操作能力的高低是企业挑选人才的一个很重要的衡量标准,当前我国高校在计算机教学方面应该紧紧跟住当前的形势,不断优化计算机软件教学内容,提高计算机教学质量。

《Visual Basic程序设计》课程是计算机类各专业的一门核心基础课,目的在于培养计算机软件程序员、信息系统设计师、网站设计、数据库设计师、网络管理等专业方向学生基本的程序设计能力。VB语言难以理解、比较枯燥,学生在没有相应的知识背景下,对课程缺乏兴趣,甚至有恐惧心理。这就要求教师在教学中分析、摸索出一些行之有效的教学方法,才有可能激发学生对程序设计的兴趣,培养学生的程序设计能力。

夜上海论坛 高等院校计算机科学与技术专业开设3-5门程序设计类课程可以有效地提高学生的岗位适应能力,因为学生通过学习经典架构的程序设计语言及现在流行的面向对象设计语言,可以掌握在不同开发环境中进行软件开发的技能,还可以在遇到新的相同架构的程序设计语言时触类旁通,快速地入手。

一、当前程序设计类课程教学的现状与问题

目前我国IT行业发展迅速,机遇与挑战并存,企业需要大批的软件程序设计类人才,但是很多计算机专业的学生在就业时往往出现技术能力不足、项目开发经验欠缺等问题,严重影响了应届生的就业选择。究其原因,主要是这些同学在校学习时只是大量学习基础知识,并没有达到精通的程度,而且缺乏实战经验,很难适应高效快速的工作环境。那么又是什么原因造成这种现象的呢?究其原因主要有如下几个方面:

1.教学目标不明确

目前我国高校计算机专业人才培养机制普遍采用“3+1”的方式,学生在校学习3年基础知识,程序设计类课程一般会在第一年的下半学期开始,每学期开设1门,学时在70-90左右。3年下来学生至少掌握4-5门程序设计语言,但是由于这些课程的教育方法都是大体上雷同的,一般是教师课上讲语法,演示代码编写,课下组织实验课或者简单的课程设计。学生虽然能掌握简单的程序语言编程模式但是脱离课堂之外的内容通常一无所知,这就往往造成“高分低能”的现象,学生学习程序设计类课程的目的在于掌握编程能力,可以在日后的工作中把程序设计语言作为工具一样进行项目开发,而不是把程序设计语言作为一门原理课程学习它的原理。而且程序设计语言种类繁多,各有特点,教师应当根据学生的特点有针对性地选择适合学生的内容进行授课,多为学生毕业后的择业考虑。

夜上海论坛 2.教学模式和内容相对落后

夜上海论坛 目前高校计算机专业程序设计类课程的教学模式多数都是传统的教学模式,一般都是“课上代码分析+课后练习”形式。课上讲的内容多年来没有什么变化,学生听得不是很明白,课下仅仅进行简单的习题练习和课程设计显然无法让学生完全掌握程序设计语言的精髓,至于自主学习和实践性探索的精神更是无法体现,综合运用能力难以提高。这就造成了在校能通过课程考试,但是离开学校就难以应对工作岗位要求。

二、VB课程的教学现状分析

程序设计课程是一门理论性和实践性都很强的课程。在传统的教学模式中,《Visual Basic程序设计》课程采用理论教学和实践教学相结合的方式,课时比例大致安排为1:1。理论教学过程中,教师大多数是按教材的章节前后编排顺序,循序渐进进行VB程序设计思想和语言规则讲解。即使采用了多媒体教学手段,也是按照教材上的章节内容安排做成PPT课件,把书本上的案例和习题进行演示分析。在讲述理论的同时,也尽可能引导学生思考,通过例题、案例的分析,培养学生自己分析问题的能力。但是,这样的课堂教学往往是很抽象、枯燥的。

实践教学是课堂教学不可缺少的环节,实践教学质量的好坏直接影响到课程的整体效果和质量。因此,在教学过程中一般会安排学生上机实操,进行实际的编程训练,然后运行调试,改错。目前实践教学一般是在教师的指导下,由学生完成章节性的习题,布置的实训项目一般是教材上的例题或者是课后练习题。如此实践教学只能称之为验证性实验,缺乏创造性。

夜上海论坛 在传统的教学模式下,教师始终处于主导地位,由教师向学生介绍程序设计的思想,介绍语言规则和使用方法,学生处于被动学习状态,始终跟着老师的思路,没有学习主动性。在教学过程中,笔者也发现,学生学习理论知识好像并不十分困难,听老师讲解例题、习题也能够明白。但真正让学生动手操作解决实际问题时,却无从下手。因此,教师受传统教学模式的影响,在教学中重理论、轻实践,课堂讲授只注重教材中基本语法和语句的讲解,不注重学生实际编程和程序设计能力的培养,授课形式以教师讲学生听为主,没有学生自主思考、设计、实现的过程,学生被动接受教师所授内容,产生枯燥厌学的情绪,从而导致学生学习积极性不高,动手能力差,课程结束后还不能用所学知识解决实际问题。

三、改革VB课程教学的方法探讨

1.教学方法要有多样性

夜上海论坛 在讲解的过程中,力求采用最简单、最容易的方法完成每一个实例,尽量采用常规化的语句,避开一些不容易理解的概念。为大力倡导教学改革,提高国内程序设计课程的教学质量,项目教学法作为一种高效的教学手段,有必要在该课程的教学中的得到使用。

第13篇

关键词:Visual Basic;Excel;VBA

中图分类号:TP31 文献标识码:A 文章编号:1009-3044(2007)05-11303-03

1 引言

为了在程序中输出符合用户需要的报表,可以采用“水晶报表”(Crystal Report)或其他第三方报表输出控件来编程。本文要讨论的是在Visual Basic程序中使用微软电子表格软件(MS Excel)强大的报表输出功能来输出报表。

我们知道,MS Office的每一组件都具有VBA(Visual Basic for Application)功能,可以在组件中利用内嵌的Visual Basic拓展该应用程序的功能,以适应用户更复杂、更特殊的需求。微软电子表格软件(Excel)除具有强大的计算功能外,还具有灵活的报表打印输出功能,我们可以在应用程序中调用Excel对象,利用此对象内嵌的VBA对输出报表进行控制。在计算机中安装有Excel的前提下,此方法可以满足大多数情况下的需要,具有一定的灵活性,在打印输出时也较为方便。本文将介绍如何用Visual Basic来对电子表格的输出进行控制,并给出一实例及其部份VB代码。

2 在VB中调用Excel对象

在VB中创建Excel对象的语句为:

Dim ExcelApp As Object

夜上海论坛 Set ExcelApp = CreateObject("Excel.Application")

对象创建后,打开工作薄进行设置,可用如下的语句:

With ExcelApp

'打开工作薄

夜上海论坛 .Workbooks.Add

'工作薄设置为可见

.Visible = True

夜上海论坛 '设置工作表的名称

.Worksheets(1).Name = "成绩表"

夜上海论坛 .Worksheets(2).Name = "论文表"

.Worksheets(3).Name = "课程表"

'选中第二个工作表

.Worksheets(2).Select

End With

这样,程序就开始打开Excel,三个工作表的名称分别为:“成绩表”、 “论文表”、 “课程表”,并且令当前工作表为“论文表”。需要插入一个新的工作表时,可以使用下面的语句:

ExcelApp.Workbooks.Add

3VB中Excel单元格的表达

夜上海论坛 ExcelApp.Range("A1") = "姓名"

夜上海论坛 这个语句设置单元格A1的内容为字符串"姓名",依此类推,只要知道了单元格的标号,就可以

夜上海论坛 往这个单元格中写入内容了。例:

夜上海论坛 Dim Txt as String

夜上海论坛 Txt = "A2"

ExcelApp.Range(Txt) = "职务"

此外,还有一种方法来表示单元格:

ExcelApp.Cells(5, 1)=100

夜上海论坛 这个语句表示位于第5行第1列的单元格的值是100。

还可以对固定范围内的单元格进行函数运算。例如:

夜上海论坛 '对B10之上的第一到第四个单元格求和,即对B6:B9求和

ExcelApp.Cells(10, 2)="=SUM(R[-4]C:R[-1]C)"

'对B10之上的第一到第四个单元格求平均值,即对B6:B9求平均值

夜上海论坛 ExcelApp.Cells(10, 2)="=AVERAGE(R[-4]C:R[-1]C)"

4VB中Excel单元格属性的表达

单元格的属性主要是指单元格内文字的字体类型,字体的大小,单元格高度和宽度,单元格的对齐属性等等。例如:

With ExcelApp

'设置字体名称

.Range("A1").Font.Name = "黑体"

'设置字体大小

.Range("A1").Font.Size = 14

'设置是否为粗体

.Range("A1").Font.Bold = True

'设置单元格高度

.Range("A1").RowHeight = 24.75

'单元格水平对齐方式,3表示水平居中对齐

.Range("A1").HorizontalAlignment = 3

夜上海论坛 '单元格垂直对齐方式,2表示垂直居中对齐

夜上海论坛 .Range("A1").VerticalAlignment = 2

夜上海论坛 '设置单元格内文字是否自动换行

.Range("A1").WrapText = True

'设置单元格边框类型,1为实线

.Range("A1").Borders.LineStyle = 1

'选中A2到A5范围内的单元格

夜上海论坛 .Range("A2:A5").Select

'合并选中的单元格

.Selection.merge

End With

5VB中Excel页面属性的设置

在使用Excel时,为确保打印的结果符合要求,我们通常会进行页面属性的设置,在VB中可以使用如下的语句来设置Excel页面:

夜上海论坛 With ExcelApp.ActiveSheet.PageSetup

'设置页边距(括号中的数字为距离),分别是左、右、上、下边距

.LeftMargin = ExcelApp.InchesToPoints(0.3)

.RightMargin = ExcelApp.InchesToPoints(0.3)

.TopMargin = ExcelApp.InchesToPoints(0.3)

.BottomMargin = ExcelApp.InchesToPoints(0.3)

'打印页面是否水平居中

.CenterHorizontally = True

'是否垂直居中

.CenterVertically = False

'设置打印方向:1为纵向打印,2为横向打印

夜上海论坛 .Orientation =1

'设置打印纸的类型,例如A3为8,A4为9

.PaperSize = 9

夜上海论坛 '设置页面缩放的百分比

.Zoom = 100

End With

6生成学生成绩单的部份VB代码

假设一数据库(chenjidan.mdb)中的学生成绩表(chenji)由以下8个字段构成,分别是:学号、姓名、班级、数学、外语、哲学、物理、语文字段,以下的代码可以从该数据表中读取数据,在Excel中生成图1样式的成绩单,并自动计算平均分。

图1

Private Sub ChenJiDan()

Dim Db As Database

Dim rsChenji as Recordset

Dim DbPath as String

DbPath = App.Path + "\chenjidan.mdb"

夜上海论坛 '打开数据库和有成绩数据的表

夜上海论坛 Set Db = OpenDatabase(DbPath, True, False, Pass)

Set rsChenji = Db.OpenRecordset("chenji", dbOpenDynaset)

'计算学生的数量,用变量I表示

夜上海论坛 Dim I as Integer

rsChenji.MoveFirst

I=0

夜上海论坛 If rsChenji.EOF Then Exit Sub

While Not rsChenji.EOF

I=I+1

夜上海论坛 rsChenji.MoveNext

Wend

夜上海论坛 '打开Excel,在电子表格中导入数据

Dim ExcelApp As Object

Set ExcelApp = CreateObject("Excel.Application")

With ExcelApp

夜上海论坛 .Workbooks.Add

.Visible = True

.Worksheets(1).Name = "成绩表"

.Worksheets(1).Select

'表的第一行是标题

.Range("A1") = "2005级期末考试成绩表"

夜上海论坛 .Range("A1").Font.Size = 14

夜上海论坛 .Range("A1").Font.Name = "黑体"

夜上海论坛 .Range("A1").Font.Bold = True

夜上海论坛 .Range("A1").RowHeight = 24.75

夜上海论坛 .Range("A1:H1").Merge

夜上海论坛 .Range("A1:A8").HorizontalAlignment = 3

.Range("A1:A8").VerticalAlignment = 2

夜上海论坛 '第二行是字段名称

夜上海论坛 .Range("A2") = "学号"

.Range("B2") = "姓名"

.Range("C2") = "班级"

夜上海论坛 .Range("D2") = "数学"

夜上海论坛 .Range("E2") = "外语"

.Range("F2") = "哲学"

.Range("G2") = "物理"

.Range("H2") = "语文"

夜上海论坛 rsChenji.MoveFirst

'RowNow是当前数据要写入的行标,从第三行开始写入数据

Dim RowNow as Integer

RowNow = 3

'开始写入数据

While Not rsChenji.EOF

夜上海论坛 .Cells(RowNow, 1) = rsChenji!学号

夜上海论坛 .Cells(RowNow, 2) = rsChenji!姓名

.cells(RowNow, 3) = rsChenji!班级

.Cells(RowNow, 4) = rsChenji!数学

夜上海论坛 .Cells(RowNow, 5) = rsChenji!外语

.Cells(RowNow, 6) = rsChenji!哲学

.Cells(RowNow, 7) = rsChenji!物理

.Cells(RowNow, 8) = rsChenji!语文

'行标加1,以便数据写入下一行

RowNow = RowNow + 1

rsChenji.MoveNext

Wend

夜上海论坛 .Cells(RowNow, 1) = "平均分"

'计算每一科的平均分,从第四列开始,到第八列结束

夜上海论坛 For x = 4 To 8

.Cells(RowNow, x) = "= AVERAGE(R[-" + Trim(Str(I)) + "]C:R[-1]C)"

Next

'为表格画边框,P表示范围,起始为A2,终止单元格由RowNow决定行,所在列为H

夜上海论坛 Dim P as String

P="A2"+":H"+Trim(Str(RowNow))

.Range(P).Borders.LineStyle = 1

'设置表格的属性

.Range(P).Font.Size = 12

.Range(P).Font.Name = "宋体"

夜上海论坛 .Range(P).HorizontalAlignment = 3

夜上海论坛 .Range(P).VerticalAlignment = 2

.Range(P).WrapText = True

.Range(P).RowHeight = 25

End With

'进行打印前的页面设置

夜上海论坛 With ExcelApp.ActiveSheet.PageSetup

.LeftMargin = ExcelApp.InchesToPoints(0)

夜上海论坛 .RightMargin = ExcelApp.InchesToPoints(0)

夜上海论坛 .TopMargin = ExcelApp.InchesToPoints(0.3)

.BottomMargin = ExcelApp.InchesToPoints(0.3)

夜上海论坛 .PrintHeadings = False

.PrintGridlines = False

夜上海论坛 .CenterHorizontally = True

夜上海论坛 .CenterVertically = False

夜上海论坛 .Orientation = 2

夜上海论坛 .Draft = False

夜上海论坛 .PaperSize = 9

.Order = 1

夜上海论坛 .BlackAndWhite = False

.Zoom = 100

End With

rsChenji.Close

Db.Close

End Sub

程序运行后,即在Excel中生成如图一样式的表格,并自动计算各科的平均分,选择Excel中的“打印”菜单即可打印。上述程序只是起到一个抛砖引玉的作用,如果要让Excel生成其他符合用户需求的表格,只要修改程序代码即可。

7结束语

夜上海论坛 本文介绍了VB调用 Excel对象的基本方法,通过VBA的编程,可以轻松地将数据写入电子表

夜上海论坛 格中,不仅可以将数据以格式化方式保存成文件,也使得打印输出更加得心应手。VBA中的属性及方法众多,有的不方便记忆,我们可以通过调用VBA宏的方法来查看。具体方法是:在Excel中录制一段宏,这段宏是与所编程序的操作有关系的,然后可以编辑此宏,就得到Visual Basic代码,再查找相对应的属性或方法,复制下来粘贴到VB程序中去。利用此法是学习VBA的一个捷径,可以起到事半功倍的效果。我们可以举一反三,利用上述录制宏的方法,学习到更多Office组件的VBA编程,例如Word,Access,PowerPoint等,有了这些VBA代码,就可以在VB程序中操作相应的Office对象了,从而使我们的程序如虎添翼。

参考文献:

[1][美]Evangelos Petroutsos,邱仲潘等译.Visual Basic 5从入门到精通[M].北京:电子工业出版社,1997.

[2]许舜渊编著,周晓津改编,Visual Basic数据库程序设计――提高篇[M]. 北京:人民邮电出版社,1997

[3]赵栋伟,松蕊等,Excel2000中文版速成[M].北京:机械工业出版社,1999

第14篇

关键词:计算机程序设计;数学建模;数据;效率;VBA

中图分类号:G712 文献标识码:A 文章编号:1007-9599 (2012) 19-0000-02

随着计算机技术的迅速发展,数学的应用不仅在工程技术、自然科学等领域发挥着越来越重要的作用,而且以空前的广度和深度向经济、金融、生物、医药等新的领域渗透。不论是用数学方法在科技和生产领域解决哪类实际问题,还是与其它学科相结合形成交叉学科,首要的和关键的一步是建立研究对象的数学模型,并加以计算求解。数学建模和计算机技术在知识经济时代的作用可谓是如虎添翼。[1]

计算机技术发展到今天,已经在各个领域产生了许多非常优秀的专业软件,在数学建模竞赛中一定要使用计算机及相应的软件,如Excel,Spss,Lingo,Mapple,Mathematica,Matlab甚至排版软件等。数学建模初期,数据质量通常较差,可以利用计算机进行规范化和目的化处理,这需要较强的计算机程序设计能力,如熟练使用EXCEL中的VBA(Visual Basic Application)。

1 计算机程序设计能力培养意义重大

夜上海论坛 早在1994年,原国家教委高教司司长周远清同志就提出了层次教育的做法,并且将计算机教育的三个层次依次定为“计算机文化基础”、“计算机技术基础”和“计算机应用基础”,现已将“计算机文化基础”更名为“大学计算机基础”,“计算机技术基础”更为“计算机程序设计基础”,并在2006年后出现“计算思维”的新思想。

我校作为药学类专业重点高等院校,在计算机程序设计方面主要培养学生使用Visual Basic进行程序设计的能力,该语言被微软公司的OFFICE软件等内置,称为VBA(VB应用),也称为宏。

夜上海论坛 计算机程序设计最基本的应用应该在于数据处理和分析,简化人工操作,提高效率,提升数据的质量和精度,为项目开展争取宝贵的时间。在建模和科研工作过程中,原始实验数据量大、格式不统一、质量不高,甚至无法直接导入计算机专业软件,也就无法进行进一步的处理和分析,所以计算机程序设计的工作是非常重要的。因此,对于认为计算机程序设计就是搞软件开发,药学相关专业的学生不需要太重视这方面知识学习的人来说,是片面甚至错误的。非计算机专业的计算机教育是让学生通过学习掌握计算机相关应用技术,并能利用这些技术为本专业服务的。

以2012年高教社杯全国大学生数学建模比赛中的本科组题目“太阳能小屋”为例,对于基础数据的处理,包括24种光伏电池组件、一年365天的辐射强度(分高于和低于70W、高于和低于200W四种情况)的计算、发电量、价格等,如果没有较好的计算机程序设计能力,在这项工作上将花费1-2天的时间(比赛时间共为3天),而在计算机程序设计VBA的帮助下,只需要在1小时内完成上述工作,只要方法正确,数据的准确度完全可以保障,大大改善了数学建模的工作进程,节省出的大量时间就可以用于问题的进一步分析和求解,得出好的结论。

夜上海论坛 2 微软公司VBA基本操作

通常情况下,数学建模竞赛的数据都会被存储在EXCEL电子表格中,如何对EXCEL中的数据进行有针对性的处理是常见工作,同样也是科研项目中经常遇到的问题。对于有VB语言基础的人来说,只需要学会如何在EXCEL中操作VBA就可以对这些复杂繁琐的问题快速处理完毕。对于参加数学建模竞赛的学生而言,掌握VBA的使用就应该像会打字一样有必要。

2.1 启动VBA

夜上海论坛 打开EXCEL数据文件,执行菜单命令“视图-工具栏-Visual Basic”,打开Visual Basic对话框,点击按钮 进入“设计模式”,点击按钮 打开工具栏,添加“按钮”控件到表格上,双击按钮进入代码窗口,编写Click事件过程及相关过程代码。

夜上海论坛 2.2 对于表格数据操作的基本语句

夜上海论坛 左侧资源管理器中可以查看当前表格的名称,如果想将Sheet1表格中的第一行第一列的数据复制到Sheet2表格的第一行第一列,可以使用语句如下:

夜上海论坛 Sheet2.Cells(1,1).Value=Sheet1.Cells(1,1).Value

选定区域单元格的语句如下:

Sheet1.Range("A1:A100").Select

夜上海论坛 应用函数Sum求和,将A列1~10行的数据求累加和放到第11行,语句如下(中括号中的数据表示相对偏移行或列数,R表示Row,C表示Column):

夜上海论坛 Sheet1.Cells(11,1).FormulaR1C1="=Sum(R[-10]C:R[-1]C)"

夜上海论坛 2.3 学会使用录制宏来学习和应用VBA

对于不熟悉的VBA操作,可以通过录制宏的形式来学习,执行菜单命令“工具-宏-录制新宏”,接下来所有在EXCEL中的操作将被自动录制成VBA代码,结束录制后,执行菜单“工具-宏-宏”,选择录制好的宏名,点击“编辑”按钮即可以查看VBA代码。

3 计算机程序设计能力培养的期望

夜上海论坛 对于教学科研型院校,培养学生的科研能力需全面,学习计算机程序设计应该就像要求学生必须具有打字和论文排版的基本能力一样得到普及和重视,这样才能在科研工作中,提升数据处理和分析的本领,科研工作因得到计算机程序设计的辅助进一步得到改善。

在实际教学过程中,我校对于“大学计算机基础”和“计算机程序设计基础”的课程安排比较合理,但是相对缺少“第三学期”的“计算机应用技术”相关计算机程序设计能力的实践学期,会造成学生学习了知识,但是往往不能很好地应用到数学建模和科研工作中。希望学校能够向其他医药院校一样,考虑增加第三学期计算机技术相关实践课程,这一做法一定对我校数学建模工作,甚至全校科研水平提升和改善有着重要意义。

参考文献:

第15篇

夜上海论坛 【关键词】计算思维 Visual Basic 能力培养 教学研究

0 绪论

在信息时代的今天,掌握和应用好计算机知识无疑是当代大学生都必须具备的基本条件。因此,教育部要求所有文科专业学生也都要开设计算机基础课程,目的就在于要培养学生的计算思维能力。如今,很多高校把Visual Basic程序设计语言当作非计算机专业的首选编程语言,Visual Basic程序设计语言具有易学易用,可视化编程,面向对象编程思想等特点,特别适合非计算机专业学生作为入门编程语言学习。很多非计算机专业学生认为:Visual Basic程序设计语言不是自己的专业课,和自己专业又没有很大关系,因此,出现了厌学或者不学的态度。甚至有少数教师都没有给予计算机程序设计课程足够的重视,认为只要把专业课学好就可以了。老师和学生的这种态度极大的影响了Visual Basic的教学效果。计算思维概念的引入能够让人们更好地认识到非计算机专业学生学习计算机程序设计的重要性。

1 计算思维

夜上海论坛 计算思维是运用计算机科学的基础概念进行问题求解、系统设计,以及人类行为理解的涵盖计算机科学之广度的一系列思维活动。计算思维的本质是抽象和自动化。如同所有人都具备“读、写、算”(简称3R)能力一样,计算思维是必须具备的思维能力。为便于理解,在给出计算思维清晰定义的同时,周以真教授还对计算思维进行了更细致的阐述:计算思维是通过约简、嵌入、转化和仿真等方法,把一个困难的问题阐释为如何求解它的思维方法。

计算思维是一种根本技能,是每一个人为了在现代社会中发挥职能所必须掌握的。计算思维是人类求解问题的一条途径,但决非要使人类像计算机那样地思考。计算机枯燥且沉闷,人类聪颖且富有想象力。是人类赋予计算机激情,反过来,是计算机给了人类强大的计算能力,人类应该好好利用这种力量去解决各种需要大量计算的问题。计算思维是思想,不是人造品。计算机科学不只是将软硬件等人造物呈现给我们的生活,更重要的是计算的概念,它被人们用来求解问题、管理日常生活以及与他人进行交流和互动。计算机科学在本质上源自数学思维,它的形式化基础建筑于数学之上。计算机科学又从本质上源自工程思维,因为我们建造的是能够与现实世界互动的系统。

夜上海论坛 中国科学院计算技术研究所研究员徐志伟总工认为:计算思维是一种本质的、所有人都必须具备的思维方式,就像识字、做算术一样;在2050 年以前,让地球上每一个公民都应具备计算思维的能力。

2 计算思维教学现状

教育部高等学校计算机基础课程教学指导委员会颁布的《关于进一步加强高等学校计算机基础教学的意见》、《计算机基础课程教学基本要求》等有关文件虽然没有明确提出计算思维,但是贯穿了计算思维思想。《关于进一步加强高等学校计算机基础教学的意见》提出:计算机基础教学的目标是培养学生掌握一定的计算机基础知识、技术与方法,以及利用计算机解决本专业领域中问题的能力。大学计算机基础的课程目标是“使他们在各自的专业中能够有意识地借鉴、引入计算机科学中的一些理念、技术和方法利用计算机、认识并处理计算机应用中可能出现的问题”。简单地说,是使用计算机科学技术和方法处理问题,这是计算思维的目标。

“Visual Basic程序设计”是一门关于计算思维方法的课程,是典型的计算思维课程。它涉及大量的算法,像枚举、递归、回溯等都是毫无争议的典型的计算思维典型案例;面向过程和面向对象程序设计也都是计算思维。目前Visual Basic程序设计中关于计算思维培养的教学存在以下几个问题:

(1)基本上都是潜意识的培养,没有明确提出或者重视计算思维的培养;

夜上海论坛 (2)对计算思维的概念还没有彻底理解,计算思维的培养的重视程度不够;

(3)教学中注重技能和知识的培养,缺乏对编程思想的培养。

3 Visual Basic教学中计算思维的培养方法及实施

夜上海论坛 VB程序设计教学过程中要求学生结合经典算法、图形技术、生活趣味问题或专业问题设计应用程序。目标都是引导学生探究问题求解的思路和方法,提高计算机素质。VB程序设计基本包括语言基础、代码编写和算法设计,其中算法设计是计算思维培养的重点部分,但是由于这部分教学课时比较少,老师上课讲授完毕,学生只是理解了某种算法,而没能认真思考这个算法中的思想和方法论,没能上升到思想层面上。

(1)理论课程改革

夜上海论坛 理论课程讲授中,教师要有意识的,讲完某种算法的理论之后,要能够结合学生能够理解的案例,将算法与实际解决问题的方法和思想相结合。要注重体现计算思维和一般思维解决同一个问题的不同和优点。例如:在讲解某一个算法时,要注意算法的优化,以达到锻炼计算思维的目的。

(2)实验课改革

夜上海论坛 实验课程中要尊重每一位学生不同的认知方式,鼓励学生设计不同的算法去解决同一个问题。实验内容要把设计性实验的比重提升,并且尽量选取与本专业或生活贴近的问题作为实验内容,这样学生可以发挥主动性和积极性,有意识的锻炼了自己的思维能力。

(3)课程考核方式改革

夜上海论坛 改变以往的笔试考试方式,选用更加灵活多样的考核方式。比如:课程设计、综合实验+笔试、课程总结论文等多种考核方式。可以选取一个或几个与授课对象联系紧密的实际问题作为课程设计题目,在学期中间就布置下去,让学生们自由结组进行课程设计的制作,最后让学生们进行课程设计作品上交并且答辩,这样避免了以往学生只是在期末进行死记硬背,应付考试,而真正让学生能够有时间去总结本学期本门课到底学了什么,怎么用,能够真正的对学生以后的生活和工作有帮助,学有所用。

精品推荐