无论是身处学校还是步入社会,大家都尝试过写作吧,借助写作也可以提高我们的语言组织能力。大家想知道怎么样才能写一篇比较优质的范文吗?下面我给大家整理了一些优秀范文,希望能够帮助到大家,我们一起来看一看吧。
vb程序设计心得篇一
;摘 要:vb由于具有强大的界面生成能力及灵活的数据库操作功能,是上位软件的主要编程工具之一,在很多场合领域得到了应用。然而,直接采用vb编程的主要问题是可靠性较差,特别是在与其它低层设备,如plc通讯时。本文提出一种采用内存共享技术的程序之间数据交换方法,将vb的通讯子程序和主程序分离,以解决通讯子程序死锁等故障对主程序的影响。本方法用在汽车安全气囊装配生产线的软件设计中,取得了良好的效果。
关键词:vb;内存映射;共享内存;串行通讯;plc
huang di, liu huajie, li yanning
(school of precision instruments and optoelectronics engineering, tianjin university, tianjin 300072, china)
0 引 言
汽车安全气囊作为汽车行驶过程的第一很总要安全部件,对其生产过程的可靠性以及质量控制研究即已成为近年来的研讨热点。通常,一条汽车安全气囊装配线多会由若干个装配或检测工位计算机,以及一台数据库服务器工位计算机组合设计而成[1]。其中,每个工位计算机可能和本工位的条码扫描器、plc、电动螺栓拧紧机和专用电气检测仪表等多种串行设备进行广泛互连,可实现部件品种纠错及工序间顺序控制等功能;进一步地,还可记录操作人员信息、机械或电气等检测参数信息,并存入sql数据库实现产品追溯功能。但是,如果计算机上的监控软件均采用组态软件时,由于站点数量较多,而使得成本颇高,同时组态软件还存在着对数据库支持功能不足等缺陷。基于此种情况,经过分析可知,应用vb等高级语言设计程序仍然是比较常用的方法之一。但是由于设计者技术等方面的原因,该类应用程序普遍存在可靠性差,后续维护困难等问题,特别是在与其它底层设备,如plc通讯时,常会由于通讯错误而引发系统死机或操作反映延迟等现象。本文即针对这一状况,提出了一种采用内存共享技术的解决方案[2],并以上位计算机与s7-200 plc进行串行通讯为例进行了仿真验证,而且取得了良好的应用效果。
1采用内存共享技术的通讯原理
多数情况下,普通用户会将通讯子程序嵌入到主程序中,这样当通讯发生错误,或通讯返回数据需要时间较长时,系统将会发生死锁或停顿现象,严重时还会影响操作界面程序的正常运行。为此,本文采取了一种利用公共数据区交换数据的方法,将通讯程序和主程序分成两个独立的可执行文件,并且通讯程序位于后台工作,而主程序则位于前台。采用这种方法的优点在于通讯程序和人机界面及其它控制程序、也就是主程序是完全分离的,即使通讯程序出现暂时的死锁现象,也不致影响主程序的正常运行,从而提高了软件的可靠性和可操作性。同时,由于win32是一个基于页式虚拟内存的操作系统,每个进程只能访问自己的虚拟内存页面空间,若要实现这种公共数据区的预设功能,就要利用内存映射文件的概念。
内存映射文件技术是windows内存管理的一个重要组成部分。当一个应用程序启动时,文件,确定该应用程序的代码和数据规模,系统也随之保留一个地址空间的区域,文件本身,这一过程可称为内存文件映射,文件,并将其映射到进程地址空间的过程。如果使两个或多个进程映射同一文件映射对象的视图,那么就将共享磁盘上同一文件或者物理磁盘的同一页面,这样当一个进程将数据写入另一个共享文件映射对象的视图时,其他进程可以立即在其对应视图中查看数据的变化,从而实现了进程间内存级的高速数据传输[3],这一过程如图1所示。
图1 采用内存映射文件的公共数据交换过程示意图
需要指出的是,共享文件可以是一个磁盘文件,也可以是一个物理内存区域,或一个虚拟磁盘区域。为了实现高速交互,一般只使用物理内存或虚拟磁盘文件。另外,对每一个通讯程序,根据数据类型和应用要求,可以设置多个共享文件映射对象。
2 内存映射文件的使用步骤
long mappinghandle= createfilemapping(&hffffffff,0,page_readwrite,0,256, “map”)
即表示创建了一个可读写的、256字节、且名字为“map” 的内存映射文件。同时,为了实现快速数据传输,设置第一个参数为&hffffffff,即表示在物理内存上创建对象。通过调用本函数就可获得文件映射内存对象句柄。
long mapingaddress = mapviewoffile(mappinghandle, file_map_write, 0, 0, 0)
long mappinghandle = openfilemapping(file_map_write, false, "map")
(4) 如果通讯程序成功获得了共享内存对象的句柄,也需要执行(2)的操作来获取映射对象视图指针。
(5) 主程序或通讯后台程序利用(2)返回的映射对象视图指针mapingaddress,采用copymemory()函数实现即可实现对该空间的访问,具体可参见实例代码部分。
(1) 调用unmapviewoffile()从进程地址空间中撤销文件映射内核对象的映像。
(2) 调用closehandle()关闭文件映射内核对象。
3 pc与plc的串行通讯技术
vb中通常采用了mscomm控件以实现工位pc与plc等底层设备的交互通讯。mscomm控件的实用性强、功能完善,同时更为应用程序提供了通过串行接口收发数据的简便方法[4]。
mscomm控件提供了两种处理通信的方式。一种是事件驱动方式,当有字符到达或发生变化时,mscomm控件都将触发oncomm事件。事件驱动方式的优点就是程序响应及时,但由于接收一个完整信息却需多次中断,如此则不仅降低了程序的执行效率,而且也增加了出错的可能性;另外一种即是查询方式,通过定时或延时查询mscomm控件的某些属性(比如commevent和inbuffercount属性)值是否发生变化,以此来选择并确定相应的处理程序。这种方式的优点就在于可以由用户控制通讯过程,尤其当程序空闲较多时多采用这种方式。
本文将每个通讯过程设计成独立的通讯程序,每一通讯程序将采用查询方法来实现和底层设备的通讯过程,再通过各自定义的公共数据区而与主程序实现数据交换。下面即可、以与西门子的s7-200plc的modbus通讯方式为例,介绍通讯程序的设计,plc侧的modbus通讯程序利用西门子公司所提供的库函数[5]。
具体地,通讯程序的一次通讯流程则如图2所示,实际程序中,每次通讯过程均由定时器定时触发。
由图2可知,通讯程序设置定时器定时向通讯对象(如plc)发出读信息命令,并置循环计数器n=0、再休眠(延时)一定时间间隔后,即进入读取接收信息死循环。程序首先读取缓冲区接收字符长度(inbuffercount)信息,若该值不为零,说明数据已经收到,接收后分解数据,同时根据接收到的功能号或校验结果,判断接收是否正确。若正确,置为1,,并调用writetosharedmemory()存入公共数据区(详情参见程序代码);若不正确则丢弃。若inbuffercount值为零,说明没有接收到数据,空循环,再次读取inbuffercount信息,并使空循环计数器n加1,当n超过设定次数(如10次)时,即预定为接收失败,将跳出接收死循环。
采用如上方法可以人工控制程序流程,避免出现死循环现象,而且需要根据读信息命令的内容,调节延时间隔,即可以实现正确的接收过程。
而对于通信主程序来说,也是由相同定时间隔的定时器触发定时读取公共区的数据,来判断是否进行更新显示或控制等操作,由此可见数据更新标志在主程序和通讯子程序之间起到一个同步作用,详细流程则如图3所示。此外,对于向plc下发控制命令,则采取相反的流程。
4 部分程序代码
在此,给出内存映射文件的部分实例代码,具体则如下所示。
type stshrplc "定义plc数据结构
bfalg as boolean " plc数据更新标志
nddata as integer " plc数据
end type
public hmh_shrplc as long "内存映射句柄
public hma_shrplc as long "映射视图指针
public sub form_load() "窗口加载函数
hmh_shrplc =createfilemapping(&hffffffff,0, page_readwrite,0, len(g_shrplc), str_shrplc)
"创建内存映射文件
closehandle (hmh_shrplc) "关闭映射文件
end
end if
if hma_shrplc = 0 then
closehandle(hmh_shrplc) "退出前关闭
end
end if
end sub
if hma_shrplc 0 then
call copymemory(byval hma_shrplc, byval g_shrplc, len(g_shrplc))
end if
end sub
if hma_shrplc 0 then
call copymemory(byval g_shrplc, byval hma_shrplc, len(g_shrplc))
end if
end sub
5 结束语
将主程序与plc等通讯程序分离,同时利用共享内存技术实现程序间数据的快速交换,并且充分利用windows系统自身的多任务调度机制,得到的监控程序具有通讯可靠、界面操作流畅等优点。应用时由主程序调用sell()启动其它通讯程序,并设其为后台运行方式。本方法可用于研制的汽车安全气囊装配生产线上,而且通过在企业的实际应用,系统已完全达到了设计目标,获得了良好的应用效果。
参考文献:
相关热词搜索:;vb程序设计心得篇二
曲江职校
杨远峰
实践总学时: 128
面向专业和年级:计算机专业一年级
时间段:一学年
一、实践课程教学的教学目标
通过实验达到教学大纲要求的教学目的,通过实验的上机练习,达到熟练掌握 vb编程技巧,养成规范、标准的思维和方法,具体实验的要求按每一个实验的要求去练习、上机、总结。
二、实践课程的性质、目的与任务
本课程是计算机基础课程。本课程的任务是向学生介绍计算机程序设计的基本知识,使学生掌握 vb语言的基本内容及程序设计的基本方法与编程技巧,了解面向对象程序设计的一般思路,培养学生应用计算机解决和处理实际问题的思维方法与基本能力,为进一步学习和应用计算机打下基础。
三、实践课程教学的基本要求
本实验大纲的核心内容是 10个主题实验,每个实验都针对某个具体应用精心设计,并以该应用为主题展开,通过这些实验的实施,学生应该认识visual basic6.0的编程环境、面向对象的概念、可视化编程的优势;会使用visual basic6.0编写简单的程序、使用其中的控件建立友好的程序界面、使用各个基本事件;掌握各控件的基本属性、事件、方法,掌握面向对象编程及可视化编程的一些技巧,掌握基本的程序设计流程。
四、实践内容
实验一 visual basic6.0 的安装与使用
实践地点:实验室
时间安排: 2学时
实践形式及方法:演示及动手操作
[实验类型] :验证性试验
[目的要求]
1、安装visual basic6.0
2、编写显示“欢迎使用visual basic6.0”的窗体程序
[内容提要] :熟悉 visual basic的编程环境,掌握安装过程以及基本的设置。
[主要仪器设备] :微机
实验二 拼图游戏界面设计
实践地点:实验室
时间安排: 4学时
实践形式及方法:动手操作
[实验类型] :验证性试验
[目的要求]
1、建立一个拼图游戏的窗体程序
了解各控件之间的相互协作,合理安排程序界面,通过相应的事件,编写合适的代码,完成要求的内容。
[主要仪器设备] :微机
实验三 随机排列拼图游戏的图块位置
实践地点:实验室
时间安排: 10学时
实践形式及方法:动手操作
[实验类型] :综合性试验
[目的要求]
1、随机排列拼图游戏中几个图块的排列顺序
2、每次随机排列时,图块的位置都会发生改变
[主要仪器设备] :微机
实验四 拼图游戏中图块选中状态的设计
实践地点:实验室
时间安排: 10学时
实践形式及方法:动手操作
[实验类型] :验证性试验
[目的要求]
1、使用鼠标事件可以选中图块
2、选中图块有亮度框
实验五 拼图游戏中使用指定键移动图块
实践地点:实验室
时间安排: 12学时
实践形式及方法:动手操作
[实验类型] :验证性试验
[目的要求]
1、使用键盘上的2468键移动选中图块
2、使用键盘上的上下左右键移动选中图块
3、使用鼠标键移动选中图块
几个常用鼠标事件,规则的设定
[主要仪器设备] :微机
实验六 拼图结果正确性的判定
实践地点:实验室
时间安排: 10学时
实践形式及方法:动手操作
[实验类型] :综合性试验
[目的要求]
2、计时器判定
3、按钮单击事件判定 [内容提要]
计时器事件的应用,条件语句的应用 [主要仪器设备] :微机
实验七 拼图游戏过关时间的记录
实践地点:实验室
时间安排: 4学时
实践形式及方法:动手操作
[实验类型] :验证性试验 [目的要求]
1.应用计时器事件记录游戏过关玩家的时间
2、将游戏过关玩家的时刻记录到指定文件中 [内容提要]
计时器事件的应用 [主要仪器设备] :微机
实验八 拼图游戏移图方式设计
实践地点:实验室
时间安排: 8学时
实践形式及方法:动手操作
[实验类型] :验证性试验
[目的要求]
1、逐格移动方式中,选中图块只能是相临之间可以移动
2、跨越移动方式中,选中图块可以跨越移动
[内容提要]
实验九拼图游戏级别关卡设计
实践地点:实验室
时间安排: 8学时
实践形式及方法:规定内容
[实验类型] :设计性试验
[目的要求]
1、可以选择初级、中级、高级
2、建立一个多重窗体应用程序设计
3、用户名的相互传递
[内容提要]
多重窗体应用程序设计、公共变量的定义和使用
[主要仪器设备] :微机
实验十拼图游戏难易程度选项设计
实践地点:实验室
时间安排: 8学时
实践形式及方法:自行设计
[实验类型] :设计性试验 [目的要求]
1、通过改变临时放图区的多少来控制拼图游戏的难易度
标签的大小、位置、临时放图区的状态设计 [主要仪器设备] :微机
实验十一拼图游戏操作说明设计
实践地点:实验室
时间安排: 2学时
实践形式及方法:自行设计
[实验类型] :设计性试验
[目的要求]
1、设计一个图体,一个标签,在标签内放置游戏相关的操作说明
2、窗体只有关闭按钮 [内容提要]
实验十二拼图游戏背景颜色设计
实践地点:实验室
时间安排: 6学时
实践形式及方法:自行设计
[实验类型] :设计性试验
[目的要求]
[主要仪器设备] :微机
实验十三拼图游戏前景颜色设计
实践地点:实验室
时间安排: 6学时
实践形式及方法:自行设计 [实验类型] :设计性试验
[目的要求]
1、应用通用对话框改变图体上对象的前景颜色
2、按钮、标签的文字颜色 [内容提要]
通用对话框的应用 [主要仪器设备] :微机
实验十四拼图游戏积各级别历史成绩查看
实践地点:实验室
时间安排: 10学时
实践形式及方法:自行设计
[实验类型] :设计性试验
[目的要求]
1、读出相应级别记录文件中存放的数据
2、随机文件中记录文件的读写操作 [内容提要]
随机文件的相关操作 [主要仪器设备] :微机
实验十五拼图游戏积各级别历史最好成绩查看
实践地点:实验室
时间安排: 10学时
实践形式及方法:自行设计
[实验类型] :设计性试验
[目的要求]
1、读出相应级别最好记录文件中存放的数据
2、随机文件中记录文件的读写操作 [内容提要]
随机文件的相关操作 [主要仪器设备] :微机
实验十六拼图游戏进行中时,单击右键会弹出最好成绩
实践地点:实验室
时间安排: 6学时
实践形式及方法:自行设计
[实验类型] :设计性试验 [目的要求]
1、读出相应级别最好记录文件中存放的数据
2、随机文件中记录文件的读写操作 [内容提要]
随机文件的相关操作 [主要仪器设备] :微机
实验十七拼图游戏中删除指定级别的玩家成绩记录文件
实践地点:实验室
时间安排: 4学时
实践形式及方法:自行设计
[实验类型] :设计性试验
[目的要求]
1、删除文件操作
2、msgbox操作提示语句 [内容提要]
kill语句和msgbox 语句 [主要仪器设备] :微机
实验十八拼图游戏中成绩排序及字段显示
实践地点:实验室
时间安排: 8学时
实践形式及方法:自行设计
[实验类型] :设计性试验
[目的要求]
1、可以对各级别用户成绩、用户最好成绩、按不同方式不同字段进行排序
2、可以按要示显示指定字段 [内容提要]
五、考核方法
评定标准:依照实验的要求,比较学生所做程序的结构是否合理、功能是否完善、代码编写是否正确。
vb程序设计心得篇三
数据库课程设计大赛的尘嚣渐渐远去,怀着对这次大赛的些许不舍,怀着对当初课程设计开始时候的豪情万丈的决心的留恋,怀着通过这次课程设计积累的信心与斗志,我开始写这篇文章,为自己的足迹留下哪怕是微不足道但是对自己弥足珍贵的痕迹并期望与大家共勉。
首先,让我的记忆追溯到大二暑假,在老大的指引下 ,我接触到microsoft 产品。那个时候我已经学过vc和asp,因为windows程序设计实验的课的关系,接触过vb,但是没有专门去学他,因为习惯了c++里面的class,int,觉得vb的sub,var 看着就不是很顺心。我是一个好奇心很强的人,突然看到了一个号称“.网络是用于创建下一代应用程序的理想而又现实的开发工具”,而且主推c#语言,由于对c语言的一贯好感,我几乎是立刻对他产生了兴趣。我就开始了对c#的学习,任何语言都不是孤立存在的,所以数据交互是很重要的,暑假的时候我把我们这学期的课本数据库系统概论看了一遍。我记得以前用c语言编程的时候,数据是在内存中申请空间,譬如使用数组等等。很耗费内存空间。这个时候就是数据库站出来的时候啦,于是我又装上了sql server__,以前学asp的时候用的是access,那个时候只是照着人家做,理论是什么也不是很清楚。
通过一个暑假的学习,基本搞清楚了理论方面的东西,具体怎么用也不是很清楚。但是这为这学期的课程设计打下了铺垫。
来到学校后,随着这学期的数据库课程大赛开始了,我有一个看法就是我自己应该具备的能力不是我会多少,而是我应该具备快速学会东西的能力。遇到什么就学什么。我们有时候很容易被一些专业名词说吓着,包括什么建模,软件工程,数据分析,数据挖掘等等。我身边就有很多同学被这些纸老虎所唬住,而没有勇气去接触他们,总是说这个太难了之类的退堂鼓的话,他们低估了自己的潜力同时也压抑住了他们自己的好奇心。其实都是纸老虎,又不是什么国家科研难题,只是去用一些工具,发明工具是很难,但是用一个工具就容易多了,just do it!我记得我做这个数据库之前,我们老师说要做好前期分析,我就在网上搜索用什么分析工具好。最后我选择了roseuml建模工具。在此之前,我脑袋里面没有软件建模的思想,什么uml建模对我而言就是一张空白的纸。但是真正接触后并没有想象的那么难,有什么不懂的上网去搜索,这是一个信息横流的世界,有google,baidu就没有不能解决的知识难题。以及后来的数据库分析的时候用到的powerdesigner也是一样。
开发的时候我想过用什么架构,c/s模式?模式有很多,怎么选择?我就上网搜索现在最流行的架构是什么。结果搜到了mvc架构,就是你啦。我决定用这个架构,不会,没关系,咱学。just do it!前期工作准备好后,那么我就得把我暑假学的.网络加以实践。这个时候我更加深入的了解了利用操纵数据库的知识。并且对数据库里面的存储过程有了比较深入的了解。经过大概2个多星期的奋斗,我完成了我的数据库课程设计--基于.网络数据集的图书馆管理系统。并最后非常荣幸的获得了大赛的一等奖以及以及新技术应用奖。
与其临渊羡鱼,不如退而结网。这次数据库课程设计给我的最大的印象就是如果自己有了兴趣,就动手去做,困难在你的勇气和毅力下是抬不了头的。从做这个数据库开始无论遇到什么困难,我都没有一丝的放弃的念头。出于对知识的渴望,出于对新技术的好奇,出于对一切未知的求知。我完成了这次数据库课程设计,不过这只是我学习路上的驿站,的核心技术就是_ml[至少微软是这么宣传的],我会继续学习它,包括jave公司的j2ee我也很想试试,语言本来就是相通的,just do it!语言并不重要毕竟它仅仅是工具,用好一个工具并不是一件值得为外人道的事情,主要是了解学习思想。古语说的好:学无止境啊!
我很庆幸我参加了这次数据库大赛,让我确实打开了眼界。
(最后,很感激学校给了我们这次动手实践的机会,让我们学生有了一个共同学习,增长见识,开拓视野的机会。也感谢老师们对我们无私忘我的指导,我会以这次课程设计大赛作为对自己的激励,继续学习。毕竟学习就是一个just do it的过程!)我直接从报告上面复制过来的.....所以这段也不删去了.............呵呵。
vb程序设计心得篇四
论述了面向对象程序设计和组建编程的机理,涉及到控制台界面程序、windows窗体程序、图形界面编程、数据库、网络应用系统等多方面的内容。内容量大,程序设计复杂、程序调试是在环境下进行,在编程过程中环境会自动为用户生成一些必要代码,以降低编程难度,降低学生的编程负担,但这也带来了一些问题,如:的程序结构把握和了解不全面,对编程机理了解不透彻,学生容易盲目照搬书上代码,不求甚解,似是而非。为了解决这个问题,我们采取了课程设计的方法来加深学生对知识的理解,将书本知识迁移到新的问题解决中,提高学生分析问题和解决问题的能力。
要求学生在学习该课程中,应用每个相对独立的、完整的单元知识解决一个实际项目,设计编写一个小作品;学完整个课程后,完成一个综合性比较强的编程项目,使学生对整个课程内容进行全面的总结、梳理,以项目完成为手段,全面锻炼学生分析问题和解决问题的能力。
一.目的
编程、面向对象程序设计思想和组建编程的知识实际技能,知识,上机练习,做作业外,还应该对学生作较全面的编程技能和分析问题解决问题的能力训练,即作课程设计,以达到如下目的:具体应用和巩固本课程及有关先修课的基础理论和专业知识,了解面向对象程序设计思想,编程和组建编程程序设计方法,培养学生初步的项目设计能力。
2.独立地根据一定的项目要求,查阅资料,写出项目开发目标,分析开发过程中所用到的课程知识,提出解决方案,编码并上机调试完成系统,培养学生分析问题和解决问题的能力。课程设计是教学过程中的一个重要环节,必须认真对待。
二.要求
1.在某个教学单元结束后,完成一个教师布置的、或学生自己拟定的、知识覆盖整个章节的,有一定综合性和难度的项目,要求学生描述出要达到的目标、围绕目标,收集资料和素材,复习所需的课程知识,描述问题解决方案、编写程序上机调试,直到项目的完成。最后的成果要有完成的作品和相应的文档。
2.在课程结束后,完成一个大的编程项目,其要求与课程单元的项目差不多,只是综合性更强、难度更大、知识覆盖面更广,工作量更大,以全面促进学生复习和梳理学科教学内容,提升学生分析问题、解决问题和文档的书写和编制。
三、采取的措施
为了保证课程设计能够按照预定的目标和计划进行,我们还采取了以下措施来加强对学生监督和管理。
4.将课程设计作为学期成绩的一部分记载,大约占10%,必须完成课程设计后才能参加考试,课程设计不过关,即使考得再好,也不能过。
四、取得的效果
通过以上措施,学生全部都完成了自己的项目、将所有的作品通过超链接网页的方式集成在一个作品集中,所有的学生都完成了4~6个小作品,每个作品都反映了学生应用课程的某部分知识解决某个问题的结果,通过完成这些作品,学生巩固、加深了对相关知识的理解,加强了知识之间的联系,促进了知识的迁移和应用。同时学生看到凝聚着自己的心血、汗水、思维和创新的作品,就像一个母亲看到自己呱呱坠地孩子那样充满了喜悦,激发了学生的创造欲望。通过同学之间作品的对比,提供了一个相互学习交流的平台,激发了学生的竞争意识。总之通过课程设计受到了良好的多方面的效果,从考试成绩来看,20__级本科全部都及格了。
vb程序设计心得篇五
我学习c语言时,真是用千言万语呀!记得刚开始学的时候,我的c语言学的并不是很好,学期都过了快一半了,对c语言还是一知半解的,我是第四小组的组长,组长的职位给我了很大的压力,我一直认为做学问都要做到这一点,要么做到最好,要么就不去做它,本着这样一个心太,我下了一个决心就是要学好c语言,开始我用了最笨的方法,就是一个厚厚的本子,一支笔,一本c语言书,天天有事没事抄程序,不管什么程序,我都不放过,一个一个的抄,抄了有好几个本,回到宿舍就在机子上调程序,一个月过去了,老师让做c语言项目,是一个学生成绩管理系统,在当时这样一个项目对我们来说真是难度不小,可是我本着一个试一试的心太去做了,一个打死我都不敢相信的奇迹出现了,这个程序我写出来了,而且几乎是一气合成,而且只用了一个晚上的时间,写了足足有六页的代码,看着写在本子上的代码我有点不相信,这怎么可能呢,当晚我没有睡着觉,高兴啊,谁能睡的着。做这个项目让我明白了一些道理,再大的程序也是有不同的小程序组成的,因为我天天抄程序,抄的全是小程序,做这个大点的程序的时候我发现全是一个一个的小程序,抄了一个月的程序,当然能很顺利的就写出来了。
后来我明白了,抄程序是最笨的方法但我认为它是进步最快的方法,抄程序是积累经验的时候,而做项目才是真正把所学为所用的时候,可以说只有你做一个大点的项目出来才能真正是说明你学到了东西,你会用所学的东西,要不然就算你学的再多,不会用也没用啊,我还发现有很多同学,在学飞c语言的时候比我学的要好,可是他们却做不出来项目,就是说学会了但是不会用,那我说还不如不学呢。有点浪费时间。做学问特别是计算机一定要做的精准,比如说一个语句一个关键字,你一定要把它几乎所有的用方法都能清楚明白,比如说print语句,对于它你一定要明白什么时候用“‘,这些你都要非常的清楚明白,要不然说不定那一天你用会碰上麻烦事,一句话要学精了,语法掌握住了,接下来就是写程序了,其实抄程序并不是说一直没有目的去抄,你会发现当你抄一段时间以后就不用再抄了,因为大部分都是一样的你一看就知道怎么写了,当你一看到程序就知道它什么功能,那里有错的时候,那你的成绩可是进步不小啊,这并不需要太多的时间,只要你用心一个月足够了。
跟大家说几点经验1.在学习的时候一定要注意这几点,不会的一定要问明白,不管谁能让他教会你知识就是你的了,要学会让知识为我所用。在看书的时候一定要做好标记,特别是不懂的地方一定要标明是什么意思。
2.在学习语言的时候一定要记住动手,不要只说不做,这样会行成眼高手低,不管什么样的程序都要亲手做过才能说会了,不要整天说我不会学不会,其实是你不想学,只是你下决心抄一个月程序,我保证我能有大的进步,其实当你抄到一周到两周的时候你就会特想抄,因为你会发现程序你能看懂了,能帮别人调程序了,有一种成就感呀!它会让你更加努力的去学习。
4.提醒大家学习要讲效率,我发现有很多同学天天学习,每天最早到教室,走的又最晚,别人玩他在学,别人学他也学,可是别的一天30%的学习时间却比他们一天50%以上的学习时间的效率要高上不仅仅是几倍的问题,所以我要说的是不要对别人说你天天在学习,要说你天天在进步,学习不是要你学习了多久是,是要你学了多少东西的,你学一小时还没有别人学一分钟的效率高,难道自己不是浪费时间吗?不想学的时候就不要学,出去玩一会儿再来学说不定会有更好的效果。希望这些经验能跟大家分享一下,最后还是要跟大家强调一点,抄程序是学好c语言的最好最快的方法。

一键复制