长江大学VB上机实习报告汇编

合集下载

长江大学工程技术学院计算机上机实习报告

长江大学工程技术学院计算机上机实习报告

长江大学工程技术学院计算机上机实习报告个人通讯录管理系统的设计学生姓名:钟智豪学号:XXXXX 序号:XX专业班级:资工61202班指导老师:方静报告日期:2013-6-26第一部分课程设计的题目与要求1、问题的提出这次课程设计的内容是个人通讯录管理管理系统,对于这个题目,要将一个比较复杂的问题分解成若干相对容易的小问题去做。

通过书写代码,实现对一些数据的简单处理。

例如,数据的修改、数据的添加、删除等等。

2、功能要求1)、实现添加功能:能通过相应控件和操作录入新数据。

当要录入新数据的时候,首先判断该姓名是否存在,如果不存在,则提示可进行数据录入并可依次输入地址、邮编等信息。

2)、实现修改功能:选中某个人的姓名时,可以对此人的相应数据进行修改并保存。

3)、实现删除功能:选中某个人的姓名时,可将此人的相应数据进行删除并保存。

4)、实现查询显示:①按姓名查询②显示全部信息。

通过组合框选择查询内容,将满足查询条件的通讯记录显示在文本框上。

5)、实现拨号功能:能显示通讯录中所有人的姓名和此人对应的电话,当选中某个人的姓名和电话号码时,屏幕上可以模拟打字机的效果,依次显示出电话号码中的各个数字。

第二部分课程设计题目功能1、系统功能模块框图设计2、数据结构说明内容:包括数据类型的定义,程序中使用的各变量的类型及应用。

首先说明结构体,对结构体进行说明在其中直接定义了整体变量address_book, address_book变量里面由6个成员构成其中有为字符串数组成员的分别有name(姓名)、 address(地址)、 youbian(邮编)、ema(Email)、qq(QQ)、mobile(手机号码)这6个数组构成。

利用变量存储将文件“ZG61202.dat”里面的东西读到其中或输出,为后面使用数据提供了方便。

Public()通用过程,在模块中输入,可以在整个程序设计中使用。

Sub()进行过程的书写,为以后的调用做准备工作。

vb实训报告心得体会(18篇)

vb实训报告心得体会(18篇)

vb实训报告心得体会(18篇)vb实训报告心得体会(通用18篇)vb实训报告心得体会篇1今年的4月份学校根据我们所学专业EDA技术的需求与我们另一门课电子产品装接相结合进行了FPGA实训板的组装,实训地点选在S12-201,主要实训流程有两大部分,一部分是SMT表面贴装元件的装配,一部分是THT元件的焊接,在整个实训过程中我学习到许多以前不了解的经验,也更加的了解书上的一些难以理解的知识点。

刚开始老师先把THT元件发个了我们,要求我们先自己检查元件是否存在问题,刚开始的时候我没有掌握检测元件的要点,拿万用表一顿乱测,根本就测不出到底有没有问题,但是后来通过请教同学以及老师的指点,我总算学会了基本的元件检测,检测完元件为接下来的焊接省了不少时间和心力,我们就可以避免出现因为元件本身的问题而从新焊接。

检测完元件,老师说为了让我们更加了解流水线作业,SMT元件的贴装就采用流水线作业,我负责的就是贴片的11工位,本来我以为会很容易,也没太在意,真正到流水作业到我这里的时候,我那镊子夹住电阻却手抖个不停,但是后来我记起老师说的要要点,沉着下来,经过几次贴装下来就慢慢熟习了,也就不再紧张了,整个工序下来虽然大家都很认真却还是出现许多问题,但是经过后来的补焊,基本上还是算成功了,这一部分完成后,后面的基本就是自己小组成员自己进行组装,我和胡静分别焊了一部分,经过几个小时的努力,我们的板子终于成功的组装好了。

经过这几周的不懈努力,终于的完成了这次的实训任务,看着手边的板子,我感触很多,记得一开始的完全茫然,到后面慢慢的得心应手,我学到很多,在检测中我学会了怎样去熟练的检测基本元件,在THT贴装中我学到了团队意识,在焊接中我学会了细心更重要的是,在组装FPGA板的过程中,我熟悉了板子的原理图,相信在学习EDA技术中会起到很大的作用,与此同时,我也了解到我还有许多东西需要去学习,需要更严格的要求自己对专业知识的学习。

vb实验心得体会

vb实验心得体会

vb实验心得体会VB实习心得体会论文(急..)“三分理论,七分实践”,这次上机实习,让我认识到了学习VB 的重要性,同时也对VB程序有了更加深入的理解。

在这个过程中我对VB的各种控件的属性和功能有了进一步的掌握,让我又熟悉了一门计算机语言。

这次实习让我对VB中的循环结构有了更深的认识,以前只是知道循环结构大概的框架,并不知道它是如何运行的,而这次我知道它的循环基理,而且还学会了在定义时候的一些小窍门,例如在多个Form 中都要用到的变量就可以将它定义为一个全局变量,放在一个标准模块里等等。

以前认为VB是一门比较简单的语言,现在我才明白他其实也并没有想象中的那么简单,而且比我们想象的还要复杂。

有些功能并不只是对控件的设置就能实现的,而必须要在代码中编写。

老师常说“编程就是一个不断发现错误的过程”,通过这次实习我也充分的认识到了这个事实。

不停的改错,不停的产生新的代码,不停的产生新的界面,不停的有了新的收获。

利用本次的实习我还对VB的知识又进行了一次复习,而且我还学到了不少新的知识,尤其是控件组的应用,着实给我的编程中带来了不少方便,例如编写代码的过程中,我们利用一个for循环就可以实现一个控件组的初始化,可以说是简单快捷。

但是万事总是利弊相随,在给我带来方便的同时当然也带来了一点麻烦,就是在对控件组中的控件进行属性的必要修改时,必须反复与窗体与代码之间,看好多遍才可以把它准确的改变。

不过只要你的控件组不是很大的话就不会带来多 -烦的,如果控件很多的话最好还是不要用,因为用了反而会增加很大的工作量。

还有就是我在程序设计过程中遇到了列表的问题,这一个问题真的把我难住了。

不过经过了与同学的交流与学习,最后我还是把它解决了,而且还学到了好多方法,例如用List的sorted属性就可以完成对成绩大小的排序,真的为我省了不少力。

在实习中我体会到了集体的智慧,让我从中学到了很多东西。

仅仅两周的时间,让我对VB甚至计算机语言产生了浓厚的兴趣,每次遇到问题,分析问题,到最后把问题彻底解决,每次都会学到很多课本上学不到的新知识与新的技能。

我的vb上机实验报告

我的vb上机实验报告

计算机上机实习(vb)大致思路:1.首先建一个文本文件“学生成绩”放在一个新建文件夹中,然后在此文件夹中输入二十个人的成绩及相关信息,包括学号,姓名,五门课程的名称。

2.再建一个文件夹叫做“课程学分”,在里面输入每个课程的编号,学时和名称并保存。

3.编写程序调用刚才保存的两个文件算出每个学生n门课的加权平均分然后排名,再把这班级成绩表保存在新建的文本文件“班级成绩表”中。

4.分别统计全班每门课的平均分,并计算每门课在60分以下,60~69,70~79,80~89,90分以上的人数,用vb创建一个叫“各分数段人数”的文本文件装此数据。

5.编程找出每门课中不及格的人,并在窗体上显示名单。

6.编程找出符合优等条件的人并在窗体上显示名单。

具体的流程:1.先编写如下程序使学生的每个信息的到保存,在自定义数组stu中有学生的姓名,学号,各科成绩。

再命名两个数组name和xf,让文本文件里的每一个信息调用起来方便简单。

2.求加权平均分,让每个学生的各科成绩分别乘以各成绩的学分,在除以总学分即为加权平均分。

有两个循环分别是20 个学生的循环和五门课的循环。

3.排名次,由于当两个人的成绩相等时要求名次一样,所以用书上常用的冒泡法和选择排序法是有些麻烦的,从而我用了把分数和每一位同学的分数比较来累计排名。

此时要在stu类型中加一个rank的分量。

从而有了下面的代码:4.统计分数段时,要求是统计每科的分数段人数,所以我先写了一个课程的分段程序,再把它复制四遍做适当的调整就得到了五门课的分段的程序:Private Sub mnuyw_Click()Picture1.ClsPicture1.Picture = LoadPicture("D:\要用的图片\16.jpg")Picture1.FontSize = 20Picture1.ForeColor = RGB(156, 134, 2)Picture1.Print Tab(20); "语文"Picture1.PrintPicture1.Print Tab(15); "范围"; Tab(30); "人数"Dim i%, b(1 To 5)For i = 1 To 5b(i) = 0Next iFor i = 1 To 20If stu(i).cj(1) <= 60 Then b(1) = b(1) + 1If stu(i).cj(1) < 69 And stu(i).cj(1) > 60 Then b(2) = b(2) + 1If stu(i).cj(1) < 79 And stu(i).cj(1) >= 70 Then b(3) = b(3) + 1If stu(i).cj(1) < 89 And stu(i).cj(1) >= 80 Then b(4) = b(4) + 1If 90 <= stu(i).cj(1) Then b(5) = b(5) + 1Next iPicture1.Print Tab(15); "=<60"; Tab(30); b(1)Picture1.Print Tab(15); "60-69"; Tab(30); b(2)Picture1.Print Tab(15); "70-79"; Tab(30); b(3)Picture1.Print Tab(15); "80-89"; Tab(30); b(4)Picture1.Print Tab(15); ">90"; Tab(30); b(5)5.打印学生的成绩单相当于把之前刚存好的班级成绩表再打印一次,所以代码用只读打开文本文件。

计算机VB上机实习报告

计算机VB上机实习报告

长江大学工程技术学院计算机上机实习报告个人通讯录管理系统的设计学生姓名:邓明曦ﻩ学号:201061627ﻩ序号:40 专业班级: 油工61006指导老师:刘妮妮老师报告日期:2012年4月7日第一部分个人通讯录管理系统的设计1、问题的提出:用户登录后能系统的管理自己的好友的信息,如姓名、地址邮编等等,对好友的信息进行修改、删除等操作。

2、功能要求:(1)添加通讯录:能通过相应空件和操作录入新数据。

当要录入新数据的时候,首先判断改姓名是否存在,如果不存在,则提示可进行数据录入并可依次输入地址、邮编等信息。

(2)查询显示:错误!按姓名查询错误!显示全部信息。

通过组合框选择查询内容,将满足条件的通讯录显示在文本框上。

(3)修改通讯录:选中某人的姓名时,可对此人的相应数据进行修改并保存。

(4)删除通讯记录:选中某人的姓名时,可对此人的相应数据进行修改并保存。

(5)拨号:可显示被叫人的姓名和电话号码。

第二部分个人通讯录管理系统功能1、系统功能模块设计ﻬ2、数据结构说明:在模块中定义:Publics As StringType contractname As String * 10addessAs String* 10yb As String *10Email As String*10QQ AsString* 10telAs String * 10EndTypePublic recTotal As IntegerPublic r As contractPublicAs String3、详细设计:(1)在模块中:S用于存放新建的文件的名称Contract:自定义类型。

Name: 用于存放姓名。

Addess:用于存放地址。

By: 用于存放邮编。

Email: 用于存放电子邮箱地址。

QQ:用于存存放QQ号。

Tel: 用于存放电话号码。

recTotal: 用于记录写入数据的条数。

r:用于存放每条数据:文件的名称(2)在系统窗体中:FreeFile:用于返回或设置被选定文件的文件名,设计时不可用。

大学vb程序实习报告【精选5篇】

大学vb程序实习报告【精选5篇】

大学vb程序实习报告【精选5篇】大学vb程序实习报告【篇1】一、学习VB程序设计的方法(1)保持良好的学习心态1、要有自信,自强,积极主动学习。

2、克服畏难情绪,树立学好程序设计的信心(2)要有良好的学____惯1、课前预习,认真听课并适当做些笔记,课后要认真复习消化所学内容,完成作业。

2、VB程序设计的入门学习并不难,但却是一个十分重要的过程,因为程序设计思想就在这时形成的,良好的程序设计习惯也在这个阶段养成。

(3)学习程序设计要注重理解一些重要的概念。

VB程序设计本身并不复杂,翻开一本程序设计学习的书籍,看到的无非就是变量,函数,条件语句,循环语句等概念。

但要真正能进行程序设计,需要深入理解这些概念。

因此,在程序入门阶段还是应该重视概念的学习。

(4)自己动手编写程序程序设计入门阶段要经常自己动手抄写或编写一些小程序,亲自动手进行程序设计是创造性思维应用的体现,是培养逻辑思维的好方法。

因此一定要多动手编写程序,而且要从小程序开发开始,逐渐提高写程序的能力。

(5)阅读,借签别人设计的好程序多看别人设计好的程序代码,包括教材上的例题程序。

在读懂别人程序后,要想他为什么这么设计能不能将程序修改完成更多的功能则可以学到别人优秀的东西,帮助自己提高自身水__。

(6)VB程序设计学习的重点1、程序设计课是高强度的脑力劳动,不是听会的,也不是看会的,而是练会的。

2、只有自己动手,编写一些程序,才会有成就感,进而对课程产生兴趣,学起来才比较从容。

等你在编写大量程序之后,我想过二级肯定没问题,不过能不能做到真知灼见,运用自如我就不敢说了。

3、动手能力的培养是这门课和以往课程最大的不同之处。

重点放在思路,算法,编程构思和程序实现上。

语句只是表达工具,要求堂上积极思考,尽量当堂学懂,并做到灵活应用。

)上机调试程序应注意的几点:1、上机前应认真把实验题在用纸上做一做(包括窗体界面设计,事件代码的编写等)2、每次上机后应总结,把没有搞清楚的问题记录下来,请教老师或同学。

vb上机实习报告

vb上机实习报告

专业班级:化工11001学生学号:201003069班内序号:6指导老师:张老师吴老师完成日期:2011/12/23目录一:设计题目二:设计思路三:设计目标四:设计思路五:数据处理六:程序代码七:小结一:设计题目学生成绩管理二:设计思路利用CommonDialog从文本中读取文件,再通过split函数分割数据并赋值给相应项目,再通过vb提供的各种变量、函数、过程及自定义变量、函数过程等等来完成所需的操作。

三:设计目标从文本中读取数据,赋值数据,运算数据来实现对学生加权平均分、平均分、每门课的平均分、每门课的分数段、不及格学生名单、优秀学生名单、成绩查询、每门课的成绩分布图的输出,并写入文件。

四:设计思路五:数据处理原始成绩课程学分学生成绩课程学分加权平均分每门课的平均分每门课的分数段不及格学生名单及成绩优秀学生成绩查询化工导论成绩分布图Vb成绩分布图线代成绩分布图概率成绩分布图物理成绩分布图六:程序代码模块:Type studentnumber As String * 3name As String * 3score(1 To 5) As Integeraver As Singleaverage As Singlerank As Integercount1 As Integercount2 As IntegerEnd TypeType classnum As Stringnam As String * 4scor As SingleEnd TypePublic stu() As student, stu1 As student, cla() As class Public Function deletespace(str As String) As StringDim i%i = InStr(str, " ")Do While i <> ostr = Replace(str, " ", " ")i = InStr(str, " ")LoopOption Base 1Dim n As Integer, str1 As String, str As String, a() As String, i%, j%, m%, k%, s%(5, 5) 读学生成绩Private Sub studentscore_Click()ClsCommonDialog1.Filter = "文本文件|*.txt"CommonDialog1.ShowOpenOpen CommonDialog1.FileName For Input As #1Line Input #1, str1Print str1Do While Not EOF(1)Line Input #1, strstr = deletespace(Trim(str))a = Split(str, " ")n = n + 1ReDim Preserve stu(n)stu(n).number = a(0)stu(n).name = a(1)For i = 1 To 5stu(n).score(i) = a(i + 1)Next iLoopFor i = 1 To nPrint stu(i).number; Tab(6); stu(i).name; Tab(15);For j = 1 To 5Print stu(i).score(j); Spc(5);Next jPrintNext iClose #1End Sub读课程学分Private Sub kechengxuefen_Click()jisuan.Enabled = Truegekechengjiguanli.Enabled = Truechengjichaxun.Enabled = Truechengjifenbutu.Enabled = TrueClsDim k%CommonDialog1.Filter = "文本文件|*.txt"CommonDialog1.ShowOpenOpen CommonDialog1.FileName For Input As #2Line Input #2, str1Do While Not EOF(2)Line Input #2, strstr = deletespace(Trim(str))a = Split(str, " ")m = m + 1ReDim Preserve cla(m)cla(m).num = a(0)cla(m).nam = a(1)cla(m).scor = a(2)LoopFor i = 1 To mPrint cla(i).num; Tab(12); cla(i).nam; Tab(30); cla(i).scorPrintNext iClose #2End Sub加权平均分Private Sub aver_Click()ClsPrintPrint "姓名"; Spc(4); "学号"; Spc(4); "化工导论"; Spc(5); "vb"; Spc(8); "线代"; Spc(7); "概率"; Spc(7); "物理"; Spc(6); "加权平均分"; Spc(5)count2 = 0count1 = 0For j = 1 To 20For i = 1 To 5count1 = cla(i).scor + count1count2 = stu(j).score(i) * cla(i).scor + count2Next istu(j).aver = count2 / count1 '加权平均分Next jFor i = 1 To 20Print stu(i).name; Tab(10); stu(i).number; Tab(18);For j = 1 To 5Print stu(i).score(j); Spc(7);Next jPrint Format(stu(i).aver, "00.00")Next iEnd Sub按加权平均分排名Private Sub anpingjunfenpaiming_Click()Dim k%ClsPrint "姓名"; Spc(4); "学号"; Tab(16); "化工导论"; Tab(31); "vb"; Tab(42); "线代"; Tab(54); "概率"; Tab(66); "物理"; Tab(77); "加权平均分"; Tab(89); "名次"For i = 1 To 20stu(i).rank = 1For j = 1 To 20If stu(i).aver < stu(j).aver Thenstu(i).rank = stu(i).rank + 1 '排名End IfNext jNext iFor i = 1 To 20Print stu(i).name; Tab(10); stu(i).number; Tab(18);For j = 1 To 5Print stu(i).score(j); Spc(8);Next jPrint Format(stu(i).aver, "00.00"); Spc(7); stu(i).rank '输出Next iEnd Sub每门课的平均分Private Sub meimenkedepingjunfen_Click() '每门课的平均分ClsForm1.FontSize = 18Print "每门课的平均分如下:"Print "化工导论"; Spc(6); "vb"; Spc(10); "线代"; Spc(7); "概率"; Spc(8); "物理"For i = 1 To 5Sum = 0For j = 1 To 20Sum = Sum + stu(j).score(i) '求每门课的总分Next jstu(i).average = Sum / 20 '求每门课的平均分Next iFor j = 1 To 5Print Spc(2); stu(j).average; Spc(3); '输出Next jEnd Sub每门课的分数段Private Sub fenshuduan_Click()ClsDim g%For i = 1 To 5For j = 1 To 20g = stu(j).score(i)Select Case gCase 0 To 59s(1, i) = s(1, i) + 1Case 60 To 69s(2, i) = s(2, i) + 1Case 70 To 79s(3, i) = s(3, i) + 1Case 80 To 89s(4, i) = s(4, i) + 1Case 90 To 99s(5, i) = s(5, i) + 1End SelectNext jNext iDim b$(5)b(1) = "0---59"b(2) = "60--69"b(3) = "70--79"b(4) = "80--89"b(5) = "90--99"Form1.FontSize = 18Print " 范围化工导论vb 线代概率物理" For i = 1 To 5Print b(i); Tab(13);For j = 1 To 5Print s(i, j); Spc(5);Next jPrintNext iEnd Sub不及格学生名单Private Sub bujigexuesheng_Click() '不及格学生ClsForm1.FontSize = 13Dim i%, j%Form1.ForeColor = vbRedForm1.FontSize = 20Print "不及格学生及其成绩如下;"; Chr(13) + Chr(10)Form1.ForeColor = vbBlackForm1.FontSize = 12Print "学号"; Spc(5); "姓名"For i = 1 To UBound(stu())For j = 1 To 5If stu(i).score(j) < 60 ThenPrint stu(i).number; Spc(4); stu(i).name;PrintPrint "不及格课程:"; cla(j).nam; Tab(25); "(该课程学分为:"; cla(j).scor; ")"; _Tab(45); "该科分数:"; stu(i).score(j);PrintEnd IfNext jNext iForm1.FontSize = 12End Sub优秀学生名单Private Sub youxiuxueshneg_Click() '优秀学生ClsDim flag As BooleanPrint "优秀学生名单如下:"PrintPrint "姓名"; Tab(10); "学号"; Tab(18); "化工导论"; Tab(31); "vb"; Tab(40); _"线代"; Tab(50); "概率"; Tab(60); "物理"; Tab(70); "平均分"; Tab(79); _"名次"For i = 1 To 20flag = FalseFor j = 1 To 5If stu(i).score(j) >= 90 Thenn = n + 1End IfNext jIf stu(i).aver >= 95 Or stu(i).rank <= 3 Thenflag = TrueElseIf stu(i).aver >= 85 And n >= 2 Thenflag = TrueEnd IfIf flag = True ThenPrint stu(i).name; Tab(10); stu(i).number; _Tab(20); stu(i).score(1); Tab(30); stu(i).score(2); Tab(40); _stu(i).score(3); Tab(50); stu(i).score(4); Tab(60); stu(i).score(5); _Tab(70); Format(stu(i).aver, "00.00"); Tab(80); stu(i).rank;PrintEnd IfNext iEnd Sub成绩查询Private Sub chaxun_Click() '成绩查询ClsPrint "姓名学号化工导论vb 线代概率物理平均分排名"i = InputBox("请输入1~20以内的学号")If i >= 21 Thenn = MsgBox("您输入的学号有误,请重新输入", vbAbortRetryIgnore = 5) End IfIf i > 0 And i <= 20 ThenPrint stu(i).name; Tab(12); stu(i).number; Tab(20);For j = 1 To 5Print stu(i).score(j); Spc(6);Next jPrint Format(stu(i).aver, "00.00"); Tab(82); stu(i).rankElseIf i > 20 ThenExit SubElseIf i < 1 ThenExit SubEnd IfEnd Sub化工导论成绩分布图Private Sub huagongdaolun_Click() '化工导论成绩分布图ClsForm1.FontSize = 8Scale (-20, 100)-(100, -20) '建立坐标系Line (0, 0)-(99, 0) '画线Line (0, 0)-(0, 99)DrawWidth = 8PSet (0, 0)CurrentX = -2CurrentY = -1Print 0CurrentX = 98.6CurrentY = 1Print ">" '打x轴箭头CurrentX = -0.45CurrentY = 99.45Print "∧" '打y轴箭头DrawWidth = 2For n = 9 To 90 Step 9Line (0, n)-(1, n)CurrentX = -2CurrentY = n + 1Print n / 9Next nDim k$(81)k(9) = "0--59"k(27) = "60-69"k(45) = "70-79"k(63) = "80-89"k(81) = "90-99"For n = 9 To 81 Step 18CurrentX = n + 2CurrentY = -2Print k(n);Next nLine (9, 36)-(18, 0), vbGreen, BF '画矩形图Line (27, 18)-(36, 0), vbGreen, BFLine (45, 27)-(54, 0), vbGreen, BFLine (63, 36)-(72, 0), vbGreen, BFLine (81, 63)-(90, 0), vbGreen, BFCurrentX = 27CurrentY = 90Form1.FontSize = 25Form1.ForeColor = vbRedPrint "化工导论成绩分布图"Form1.FontSize = 8Form1.ForeColor = vbBlackCurrentX = 95CurrentY = -2Print "分数段"End SubVb成绩分布图Private Sub VB_Click() 'vb成绩分布图ClsForm1.FontSize = 8Scale (-20, 100)-(100, -20)Line (0, 0)-(99, 0) '画X轴CurrentX = 98.7CurrentY = 0.95Print ">"Line (0, 0)-(0, 99) '画Y轴CurrentX = -0.5CurrentY = 99.25Print "∧"Form1.ForeColor = vbBlack '打原点DrawWidth = 8PSet (0, 0)CurrentX = -1CurrentY = -1Print 0DrawWidth = 2 '打Y轴刻度For i = 9 To 90 Step 9Line (0, i)-(0.5, i)CurrentX = -2CurrentY = i + 1Print i / 9Next iDim k$(81)k(9) = "0--59"k(27) = "60-69"k(45) = "70-79"k(63) = "80-89"k(81) = "90-99"For i = 9 To 81 Step 18CurrentX = i + 2CurrentY = -2Print k(i);Next iLine (9, 27)-(18, 0), vbBlue, BFLine (27, 27)-(36, 0), vbBlue, BFLine (45, 9)-(54, 0), vbBlue, BFLine (63, 36)-(72, 0), vbBlue, BFLine (81, 81)-(90, 0), vbBlue, BFCurrentX = 40CurrentY = 90FontSize = 25ForeColor = vbRedPrint "vb成绩分布图"ForeColor = vbBlackFontSize = 8CurrentX = 95CurrentY = -2Print "分数段"End Sub概率成绩分布图ClsForm1.FontSize = 8Scale (-20, 100)-(100, -20) '建立坐标系Line (0, 0)-(99, 0) '画线Line (0, 0)-(0, 99)DrawWidth = 8PSet (0, 0)CurrentX = -2CurrentY = -1Print 0CurrentX = 98.6CurrentY = 1Print ">" '打x轴箭头CurrentX = -0.5CurrentY = 99.45Print "∧" '打y轴箭头DrawWidth = 2For i = 9 To 90 Step 9Line (0, i)-(0.8, i)CurrentX = -2CurrentY = i + 1Print i / 9Next iDim k$(81)k(9) = "0--59"k(27) = "60-69"k(45) = "70-79"k(63) = "80-89"k(81) = "90-99"For i = 9 To 81 Step 18CurrentX = i + 2CurrentY = -2Print k(i);Next iLine (9, 9)-(18, 0), vbGreen, BFLine (27, 27)-(36, 0), vbGreen, BFLine (45, 18)-(54, 0), vbGreen, BFLine (63, 63)-(72, 0), vbGreen, BFLine (81, 63)-(90, 0), vbGreen, BFCurrentX = 40CurrentY = 90Form1.FontSize = 25Form1.ForeColor = vbRedPrint "概率成绩分布图"Form1.FontSize = 8Form1.ForeColor = vbBlackCurrentX = 95CurrentY = -2Print "分数段"End Sub线代成绩分布图Private Sub xiandai_Click() '线代成绩分布图ClsFontSize = 8ForeColor = vbBlackScale (-20, 100)-(100, -20) '建系Line (0, 0)-(99, 0)CurrentX = 98.75CurrentY = 0.95Print ">" '画X轴Line (0, 0)-(0, 99)CurrentX = -0.525CurrentY = 99.25Print "∧" ' 画Y轴CurrentX = -1CurrentY = -0.5Print 0DrawWidth = 6PSet (0, 0)DrawWidth = 2 '打原点For i = 9 To 90 Step 9 '打Y轴刻度Line (0, i)-(1, i)CurrentX = -2CurrentY = i + 1Print i / 9Next iDim k$(81)k(9) = "0--59"k(27) = "60-69"k(45) = "70-79"k(63) = "80-89"k(81) = "90-99"For i = 9 To 81 Step 18CurrentX = i + 2CurrentY = -2Print k(i);Next iLine (9, 27)-(18, 0), vbYellow, BFLine (27, 18)-(36, 0), vbYellow, BFLine (45, 18)-(54, 0), vbYellow, BFLine (63, 63)-(72, 0), vbYellow, BFLine (81, 54)-(90, 0), vbYellow, BF CurrentX = 40CurrentY = 80ForeColor = vbRedFontSize = 25Print "线代成绩分布图"FontSize = 8ForeColor = vbBlackCurrentX = 95CurrentY = -2Print "分数段"End Sub物理成绩分布图Private Sub wuli_Click() '物理成绩分布图ClsForm1.FontSize = 8Scale (-20, 100)-(100, -20) '建立坐标系Line (0, 0)-(99, 0) '画线Line (0, 0)-(0, 99)DrawWidth = 8PSet (0, 0)CurrentX = -2CurrentY = -1Print 0CurrentX = 98.6CurrentY = 1#Print ">" '打x轴箭头CurrentX = -0.45CurrentY = 99.45Print "∧" '打y轴箭头DrawWidth = 2For i = 9 To 90 Step 9Line (0, i)-(1, i)CurrentX = -2CurrentY = i + 1Print i / 9Next iDim k$(81)k(9) = "0--59"k(27) = "60-69"k(45) = "70-79"k(63) = "80-89"k(81) = "90-99"For i = 9 To 81 Step 18CurrentX = i + 2CurrentY = -2Print k(i);Next iLine (9, 9)-(18, 0), vbYellow, BFLine (27, 9)-(36, 0), vbYellow, BFLine (45, 27)-(54, 0), vbYellow, BFLine (63, 36)-(72, 0), vbYellow, BFLine (81, 90)-(90, 0), vbYellow, BFFontSize = 25ForeColor = vbRedCurrentX = 40CurrentY = 90Print "物理成绩分布图"FontSize = 8ForeColor = vbBlackCurrentX = 95CurrentY = -2Print "分数段"End Sub七.小结第一天去,完全什么也不知道,坐在那儿,翻书,对着电脑翻书,很是失望;下课后回去看翻书,再看别人的代码,经过老师指导才慢慢入门,后来发现还是很有趣的!通过两个星期的实习我逐渐了解程序在VB 6.0中调试并运行的方法,在其过程中,遇到了很多问题和困难,发现在之前的学习中很多知识似懂非懂,所学的东西不能完全掌握,很多甚至只是抄的笔记。

2023年2023年vb程序设计实训报告心得体会,vb课程设计报告(实用十一篇)【优秀范文】

2023年2023年vb程序设计实训报告心得体会,vb课程设计报告(实用十一篇)【优秀范文】

2023年2023年vb程序设计实训报告心得体会,vb课程设计报告(实用十一篇)【优秀范文】2023年2023年vb程序设计实训报告心得体会,vb课程设计报告(实用十一篇)【优秀范文】体会是指将学习的东西运用到实践中去,通过实践反思学习内容并记录下来的文字,近似于经验总结。

好的心得体会对于我们的帮助很大,所以我们要好好写一篇心得体会接下来我就给大家介绍一下如何才能写好一篇心得体会吧,我们一起来看一看吧。

vb程序设计实训报告心得体会vb课程设计报告篇一这是我第一次系统与完整的接触软件设计。

我们组的题目是关于“俄罗斯方块游戏”的设计。

我在组内主要负责(1)游戏界面的设计(2)俄罗斯方块的造型(3)游戏级别的自由选择(4)游戏速度的自由选择(5)游戏的背景音乐。

在这次课程设计中,我的能力得到了锻炼,自己也有许多体会。

这次的课程设计是自己第一次全面接触软件的制作过程。

以前仅仅是对软件的开发有一个大体的印象,通过这次的课程设计,我对软件的开发有了切身的体会。

软件并不像我原来所想的那样十分神秘,而是有着一个相对固定的模式和流程。

我们只要按照这个模式和流程,就能够比较规范的完成一个软件的制作。

软件的制作是一个系统的工程,需要我们掌握多方面的知识。

在这次课程设计中,我觉得自己的知识面依然有所欠缺。

因此我需要在以后的学习中加以注意,要不断的提高自己的知识面与知识层次。

我在这次课程设计中主要负责(1)游戏界面的设计(2)俄罗斯方块的造型(3)游戏级别的自由选择(4)游戏速度的自由选择(5)游戏的背景音乐。

在这次课程设计之前,我对vb的编程不是特别的熟悉,这次的课程设计,我是一边学习,一边总结,一边进步。

在编程的过程中,我体会到其实各种计算机语言是有相通之处的。

在以前的学习中,我只接触过c语言,这次在vb课程设计中,我发现c语言中的许多知识可以应用到vb中,两者具有相通的数据结构。

所以我认为现在对计算机语言的学习,不要贪多,而应耐心的学好一门主要的计算机语言,在这个基础上,去学习其他的语言,这样会使学习效率大大提高。

vb实验总结通用模板(热门9篇)

vb实验总结通用模板(热门9篇)

vb实验总结通用模板第1篇一个月的时间非常快就过去了,这一个月我不敢说自己有多大的进步,获得了多少知识,但起码是了解了项目开发的部分过程。

虽说上过数据库相关的课程,但是没有亲身经历过相关的设计工作细节。

这次课程设计给我提供了一个很好的机会。

通过这次课程设计发现这其中需要的很多知识我们没有接触过,上网查找资料的时候发现我们以前所学到的仅仅是皮毛,还有很多需要我们掌握的东西我们根本不知道。

同时也发现有很多已经学过的东西我们没有理解到位,不能灵活运用于实际,不能很好的用来解决问题,这就需要自己不断的大量的实践,通过不断的自学,不断地发现问题,思考问题,进而解决问题。

在这个过程中我们将深刻理解所学知识,同时也可以学到不少很实用的东西。

这次的数据库课程设计,我们组负责的企业信息文档管理系统的设计。

这课题是自拟的。

我们组实行的分工合作。

我主要是负责数据库功能模块设计这部分。

从各种文档的阅读到需求分析、概要设计、数据库总体设计、代码编写与调试,我们都准备了好长时间。

组内分工合作的整个过程,我亲身体验了一回系统的设计开发过程,分工合作的好处。

很多东西书上写的很清楚,貌似看着也很简单,思路非常清晰。

但真正需要自己想办法去设计一个系统的时候才发现其中的难度。

经常做到后面突然就发现自己一开始的设计有问题,然后又回去翻工,在各种反复中不断完善自己的想法我想有这样的问题不止我一个,事后想想是一开始着手做的时候下手过于轻快,或者说是根本不了解自己要做的这个系统是给谁用的。

因为没有事先做过仔细的用户调查,不知道整个业务的流程,也不知道用户需要什么功能就忙着开发,这是作为设计开发人员需要特别警惕避免的,不然会给后来的工作带来很大的麻烦,甚至可能会需要全盘推倒重来。

所以以后的课程设计要特别注意这一块的设计。

经过组内讨论,我们确定的课题是企业信息文档管理系统。

说实话,我对这个系统不是很了解。

通过上网查找资料、相关文献的阅读,我对该系统有了大体的了解。

vb程序设计报告样本

vb程序设计报告样本

长江大学工程技术学院VB语言程序设计课程设计报告(2010-2011学年第二学期)系 (部) 机械系专业班级机电60902班学生姓名周中华学号/序号200962252 / 29指导教师/助教完成时间第19周一、功能描述这是一个简单的打字小游戏。

适用于刚开始接触打字的初学者,我们的游戏实现的是单个的字母练习这就降低了难度,我们设有不通的速度等级,当你击中的字母达到规定值时速度就会增加。

随之增加难度.但是字母的个数不会改变,还是原来的6个字母下落,同时打字窗口还设有返回上一级菜单的按钮,练习者可以随时停止游戏返回上一级。

在打字的过程中如果字母没有被击中就会落下,落下一个字母剩余能量就会减一(我们舍得剩余能量为15.)当剩余能量减到小于零的时候游戏就会结束,打对一个字母旁边的分数栏就会曾加1,我们设定的时间是2分钟,当你进入游戏的同时倒计时也就开始了,如果在规定的2分钟结束时你的剩余能量大于零,你就胜利了。

同时会弹出一个窗体显示你的速度等级和得分。

胜利后你也可以选择再来一次。

重新开始。

二、概要设计图1:打字游戏流程图三、详细设计1、利用一个数组控和一个随机函数来实现字母的随机赋值Randomize /保证字母是随机抽取的For i = 0 To 5 /利用循环给数组控件赋值Label1(i).Caption = Chr$(Rnd * 26 + 97)Next i2、在文本框的单击事件里用for循环实现了打中后字母的重新赋值和重新下落、以及得分的增加等功能代码如下所示For i = 0 To 5 'If Right(Text1.Text, 1) = Label1(i).Caption Thendefen = defen + 1 /当打对后得分就加一Label2.Caption = defen /定义label2的值表示得分Label1(i).Caption = Chr$((Rnd * 26) + 97) /当打对后字母有重新更换Label1(i).Top = 400 /打对后字母从top为400的地方开始掉下Text1.Text = "" /text进行清空End IfNext i3、在该游戏中有速度快慢的控制。

长江大学VB上机实习报告

长江大学VB上机实习报告

长江大学 VB 上机实习报告实习背景本次实习是长江大学计算机科学专业的一项实践课程,旨在通过实践的方式,让学生更深入地了解 VB 编程语言,并培养学生的编程技能和团队协作能力。

本次实习由长江大学计算机科学与技术学院主办,共有约 100 名学生参加。

实习过程本次实习共分为两个阶段,第一阶段为理论学习,第二阶段为实践操作。

阶段一:理论学习在第一阶段,我们主要学习了 VB 编程语言的基础知识,包括变量、运算符、流程控制语句、数组等基本语法。

此外,我们还学习了 VB 窗体应用程序的开发,包括通过控件实现输入输出、编写事件处理程序、使用 MsgBox 和 InputBox 等常用方法。

在此基础上,我们还学习了VB 数据库编程的基础知识,包括连接数据库、创建表格、插入数据、查询数据等。

阶段二:实践操作在第二阶段,我们进行了实际的 VB 编程实践,主要的任务是开发一个学生成绩管理系统。

我们需要完成以下功能:1.实现学生信息的添加、编辑和删除;2.实现成绩信息的添加、编辑和删除;3.实现学生信息与成绩信息的查询和统计;4.实现数据的备份和还原。

为了最大程度地模拟实际的开发流程,我们在实践操作中分为多个小组,每个小组拥有独立的任务和需求分析。

实习收获通过本次实习,我对 VB 编程语言有了更深入的了解,并掌握了 VB 窗体应用程序的开发和数据库编程的基础知识。

同时,我还体会到了团队协作的重要性,学会了与他人合作,共同解决问题。

实习反思通过本次实习的学习和实践,我认识到自己对 VB 编程语言和数据库编程还有待提升,需要继续努力学习和实践。

同时,我还发现了一些自己的不足之处,比如组织能力和沟通能力需要进一步提高。

我会在以后的学习和实践中认真这些经验教训,不断提升自己的能力和素质。

本次实习是我在长江大学计算机科学专业中的一次重要的实践活动,让我对VB 编程语言和数据库编程有了更深入的了解,也让我意识到了团队合作和不断学习的重要性。

VB实习报告

VB实习报告

目录第一部分实习目标和要求 (2)一实习目标 (2)二实习要求 (2)三、时间安排 (2)第二部分程序编写 (3)实习 1 (3)实习2……………………………………………………… ..3实习3 (4)实习4……………………………………………………… .5实习5……………………………………………………… .5实习6 (6)实习7 (7)实习8 (8)实习9………………………………………………………..9.实习10……………………………………………………….9.实习11 (10)实习12 (11)实习13 (12)实习14 (13)实习15............................................................ (14)实习16 (16)实习17 (20)第三部分总结 (22)一、实习心得 (22)第一部分实习目标和要求一、实习目标通过该课程设计的操作与实践,使学生在了解使用VB程序设计方法、掌握面向对象程序设计的相关理论知识和设计技巧的基础上,能够将理论教学中涉及到的知识点贯穿起来,通过对各个实习任务的练习,应用VB实现测量数据的程序处理;从而提高面向对象程序设计的综合设计能力、应用VB来解决测量中的数据处理等问题的实践能力二、实习要求1.认真努力作业。

巩固所学VB语言基本知识。

2.鼓励多种形式的学习活动。

如与同学展开讨论,请教老师,查阅图书资料,上网搜索信息等。

3.程序的功能要求。

按个人能力可做适当的增减。

有能力的,应实现更多的功能。

4.按时提交作业。

课程设计作业包括全部VB软件工程文件和课程设计报告。

5.珍惜上机机会。

上机期间不做与课程设计无关的事。

6.按照计划进行设计。

三、时间安排第二部分程序编写1、判断闰年:年号(intyear)能被4整除,但不能被100整除;或能被400整除程序代码:'函数"rn"的功能是判断年号intyear是否为闰年,rn—闰年Function rn(intyear As Integer)If intyear Mod 4 = 0 And intyear Mod 100 <> 0 Thenrn = "闰年"ElseIf intyear Mod 400 = 0 Thenrn = "闰年"Elsern = ""End IfEnd Function运行情况如图1:图1 函数rn()的运行界面2.一元二次议程ax2+bx+c=0存在实根的条件:a不等于0,且b2-4ac大于等于0。

长江大学vb上机实习报告

长江大学vb上机实习报告

长江大学计算机上机实习(vb)学号:油工21302姓名:***院系:石油工程学院班级:油工*****序号:**指导老师:张老师日期:2015年1月10日目录摘要 ....................................................................................................................................................一、题目 (1)二、实习目的 (1)二、实习要求 (1)二、系统详细设计(模块功能描述) (2)三、系统应用说明(运行成果展示) (6)实习心得 (6)附录 (7)一、题目班级学生成绩管理系统设计二、实习目的1、熟练掌握VisuaBasic语言的语法规则,VisualBasic程序调试一般方法和技巧,并能利用VisuaBasic语言实现简单程序的设计。

2、掌握基本的模块设计与实现数据文件读写、人机界面设计等;3、熟练运用测量平差及程序设计知识,编写测量程序;4、进一步巩固《VB程序设计》课程中所学到的知识,熟练掌握并综合运用所学的编程技巧。

三、实习要求准备工作1.用记事本新建一个文本文件,将本班的M名学生的有关信息及本学期的N门考试课的成绩(分数可以参照实际情况模拟,要求将自己的分数放在第一列)输入到这个文件中,建议按如下形式存放(注:20≤M≤50、5≤N≤8,下文以M=10,N=5为例):序号姓名幸运日出生日期英语VB 数学体育专业课7 作者自已8 1992.12.19 99 100 98 98 100 10 张某 6 1993.08.06 77 76 80 89 855 李某 1 1994.11.16 89 88 99 97 953 王某 6 1993.06.04 56 76 43 54 772 赵某 5 1992.01.05 82 87 85 79 891 刘某 3 1994.01.12 65 68 67 69 704 孙某 2 1994.01.05 45 56 66 65 686 陈某7 1992.10.07 77 76 88 90 879 周某 5 1993.01.20 66 56 57 58 598 钱某 3 1993.07.19 87 59 89 99 100 2.将本学期的N门课程及其学分(16学时为1个学分)输入到另一个文本文件中,建议如下列形式存放:编号课程名称课程学分1 英语 5.02 VB 4.03 数学 4.54 体育 3.05 专业课10.0编程:编写一个简单的班级学生成绩信息管理程序,功能如下:1)找出“出生日”与“幸运日”相同的人,并打印出其信息(每行输出一个人的信息)2)统计出分别拥有幸运数字1,2,3,4,5,6,7,8,9,0的人数3)能查询出任何一个你感兴趣的人的信息4)可新添加一个人的信息5)可以删除某个人的信息6)可以对某人的幸运数字进行修改,只修改器幸运数字,其它信息不变7)根据以上两文件内容分别计算每个学生N门课的加权平均分(保留2位小数,4舍5入),按平均分排列名次,平均分相同则名次并列,如第1、2、2、4、5、5、7…名。

VB实训个人总结

VB实训个人总结

VB实训个人总结VB实训个人总结VB实训个人总结在这一周的实习中,使我学到了好多书本上没有的知识,更让我对VB有了更深一步的掌握,同时也发现了许多自己在学习方面的不足,取长补短,互相学习,共同进步,我们不但学习了知识,更好的证明了实践是检验真理的唯一标准。

培养和提高我们的实际操作和应用能力,在学习VB后,具体的是使我们熟悉并使用各种类和各种VB控件的应用,在编写程序的过程中我们还专门编写了注释以便于修改程序!这些内容使我们更加熟练的应用这门语言,给自己以后能够走上工作岗位打下良好的基础!实训的第一天接到任务时我们都觉得有点难度,很有挑战性,毕竟学籍信息管理系统是一个比较系统、完善、功能相对较齐全的管理系统,即使是用户模块也可以完成各种操作,如对用户的查询、添加.删除以及修改等。

因此程序编写也十分复杂,工作量较大,编写一定要认真。

一个小小的失误都可能使程序出现大的漏洞。

而我们只是学了点简单的vb程序编写,没有尝试过这种相对来说比较系统完善的系统。

所以在做项目的时候我们倍感压力、更加的团结协作,可即使如此我们还是出现了错误,我们的程序在编写上存在一些漏洞,导致调试时不能正常运行,后经过老师的指导、我们的调整,终于可以完美的运行,我做的是学籍信息管理系统,但是在编写程序的时候也遇到了很多难懂的问题,有的是实践能力差,有的是对书本上的内容太过于模糊,有的是什么也不知道,当中有说不出口的味道。

有悔恨,后悔,自责,都是平时学的不扎实,不过通过这次的实训使我的VB应用能力得到大幅度提高,从以前的不懂到懂,从模糊到运用自如,从不知道到知道等等,一切都变的清楚简单。

善于学习和总结,勤于思考,做之前多想想,多向有经验的请教,能帮你降低风险、减少投入、少走弯路,做的时候心里也才有底;做好之后再来想想就是总结,就是经验和教训。

有些事只有亲自动手体会了才知道其中的道理,不是口里什么知道一到实际中却又茫然。

无论什么都有其自己的规律。

vb实习报告

vb实习报告

计算机上机实习(vb)专业班级:油工10901学生学号:200906829学生姓名:方飞飞班级序号: 4指导老师:冯翠丽完成日期:2010-12-17一.设计题目学生成绩管理系统二.设计思路从文本中读取文件数据,利用split函数对读取的数据进行分割并赋值,利用VB的顺序结构,选择结构,循环结构编写程序代码,最终将各代码写入界面设计中的各菜单下。

三.程序实现的目标本程序将实现从文本中读取数据,赋值数据,运算数据,实现对学生的加权平均值,名次,全班每门课的分数段,不及格同学名单,优等生名单等运算,并写入文件。

四.程序设计框图五.数据处理原始成绩课程学分成绩学分加权平均分排名不及格学生名单优等生名单各分数人数六.源程序模块:Type studentsno As String * 6sname As String * 3a(1 To 5) As Integeraver As Singlemc As Integerfei As IntegerEnd TypeType kechenbh As Stringkcm As Stringxf As Singlef(1 To 5) As IntegerEnd Type窗体代码:Dim kc() As kechenDim m As IntegerDim stud() As studentDim st As StringDim n As IntegerDim st2 As StringDim zxf As IntegerPrivate Sub Average_Click()Picture1.ClsFor j = 1 To nstud(j).aver = 0For i = 1 To 5stud(j).aver = stud(j).aver + Val(stud(j).a(i)) * Val(kc(i).xf) Next istud(j).aver = stud(j).aver / zxfNext jPicture1.Print st; Space(4); "平均分"For i = 1 To nPicture1.Print stud(i).sno; Space(5); stud(i).sname; Space(2); For j = 1 To mPicture1.Print stud(i).a(j); Space(3);Next jPicture1.Print Format(stud(i).aver, "0.00")Next iEnd SubPrivate Sub Form_Load()Dim ch As String, c() As String, i%, d() As Stringn = 0: k = 0Open App.Path + "\成绩.txt" For Input As #1Line Input #1, stPrint stDo While Not EOF(1)Line Input #1, chch = Trim(ch)ch = delspace(ch)c = Split(ch, " ")n = n + 1ReDim Preserve stud(n)stud(n).sno = c(0)stud(n).sname = c(1)stud(n).a(1) = c(2)stud(n).a(2) = c(3)stud(n).a(3) = c(4)stud(n).a(4) = c(5)stud(n).a(5) = c(6)LoopClose #1Open App.Path + "\学分.txt" For Input As #1 Line Input #1, st2Do While Not EOF(1)Line Input #1, chch = Trim(ch)ch = delspace(ch)d = Split(ch, " ")m = m + 1ReDim Preserve kc(1 To m)kc(m).bh = d(0)kc(m).kcm = d(1)kc(m).xf = d(2)zxf = zxf + kc(m).xfLoopClose #1End SubPublic Function delspace(s As String) As String k = InStr(s, " ")Do While k > 0s = Replace(s, " ", " ")k = InStr(s, " ")Loopdelspace = sEnd FunctionPrivate Sub fsd_Click()Picture1.ClsDim fw(1 To 5) As StringPicture1.Clsfw(1) = "> =90"fw(2) = "80-89"fw(3) = "70-79"fw(4) = "60-69"fw(5) = " < 60"Open App.Path + "\各分数段人数.txt" For Output As #1For i = 1 To nFor j = 1 To mIf stud(i).a(j) >= 90 Thenkc(j).f(1) = kc(j).f(1) + 1ElseIf stud(i).a(j) >= 80 Thenkc(j).f(2) = kc(j).f(2) + 1ElseIf stud(i).a(j) >= 70 Thenkc(j).f(3) = kc(j).f(3) + 1ElseIf stud(i).a(j) >= 60 Thenkc(j).f(4) = kc(j).f(4) + 1Elsekc(j).f(5) = kc(j).f(5) + 1End IfNext jNext iPicture1.Print "范围英语制图数学物理化学" Print #1, "范围英语制图数学物理化学"For j = 1 To 5Print #1, fw(j); Space(4);Picture1.Print fw(j); Space(4);For i = 1 To mPrint #1, kc(i).f(j); Space(3);Picture1.Print kc(i).f(j); Space(4);Next iPicture1.PrintPrint #1,Next jClose #1End SubPrivate Sub minci_Click()Picture1.ClsFor i = 1 To nstud(i).mc = 1For j = 1 To nIf stud(i).aver < stud(j).aver Thenstud(i).mc = stud(i).mc + 1End IfNext jNext iPicture1.Print "学号", "姓名", "名次"For i = 1 To nPicture1.Print stud(i).sno, stud(i).sname, stud(i).mcNext iEnd SubPrivate Sub Print59_Click()Picture1.ClsOpen App.Path + "\不及格学生名单.txt" For Output As #1 Picture1.Print "学号姓名不及格课程名成绩学分"Print #1, "学号姓名不及格课程名成绩学分"For i = 1 To nFor j = 1 To mIf stud(i).a(j) < 60 ThenPrint #1, stud(i).sno; Space(4); stud(i).sname; ; Space(5); kc(j).kcm; Space(9); stud(i).a(j); Space(4); kc(j).xfPicture1.Print stud(i).sno; Space(4); stud(i).sname; ; Space(5); kc(j).kcm, Space(7); stud(i).a(j); Space(4); kc(j).xfEnd IfNext jNext iClose #1End SubPrivate Sub PrintCJD_Click()Picture1.ClsOpen App.Path + "\成绩单.txt" For Output As #1Print #1, st, "平均分", "名次"Picture1.Print st, "平均分", "名次"For i = 1 To nPrint #1, stud(i).sno; Space(5); stud(i).sname; Space(2);Picture1.Print stud(i).sno; Space(5); stud(i).sname; Space(2);For j = 1 To mPrint #1, stud(i).a(j); Space(3);Picture1.Print stud(i).a(j); Space(3); ;Next jPrint #1, Space(4); Format(stud(i).aver, "0.00"); Space(9); stud(i).mcPicture1.Print Space(4); Format(stud(i).aver, "0.00"); Space(9); stud(i).mcNext iClose #1End SubPrivate Sub PrintGood_Click()Picture1.ClsOpen App.Path + "\优等生名单.txt" For Output As #1Dim ss As IntegerFor i = 1 To nss = 0: stud(i).fei = 0For j = 1 To mIf stud(i).a(j) >= 95 Thenss = ss + 1End IfNext jIf ss >= 2 ThenIf stud(i).aver >= 85 Thenstud(i).fei = 1End IfEnd IfNext iPrint #1, st; Space(3); "平均分"; Space(3); "名次"Picture1.Print st; Space(3); "平均分"; Space(3); "名次"For i = 1 To nIf stud(i).mc < 4 Or stud(i).aver >= 90 Or stud(i).fei = 1 Then Print #1, stud(i).sno; Space(5); stud(i).sname; Space(2);Picture1.Print stud(i).sno; Space(5); stud(i).sname; Space(2); For j = 1 To mPrint #1, stud(i).a(j); Space(3);Picture1.Print stud(i).a(j); Space(3);Next jPrint #1, Format(stud(i).aver, "0.00"); Space(4); stud(i).mc Picture1.Print Format(stud(i).aver, "0.00"); Space(4); stud(i).mc End IfNext iClose #1End SubPrivate Sub yaunkc_Click()Picture1.ClsPicture1.Print "编号课程名称课程学分"For i = 1 To mPicture1.Print kc(i).bh, kc(i).kcm, kc(i).xfNext iEnd SubPrivate Sub yuancj_Click()Picture1.ClsPicture1.Print stFor i = 1 To nPicture1.Print stud(i).sno; Space(5); stud(i).sname; Space(2);For j = 1 To mPicture1.Print stud(i).a(j); Space(3);Next jPicture1.PrintNext iEnd Sub七.小结在这次VB程序设计实习中,我逐渐了解了程序在VB 6.0中调试并运行的方法,在其过程中,遇到了很多问题和困难,发现在之前的学习中,所学的东西不能完全掌握。

实习报告:VB实习体会

实习报告:VB实习体会

VB实习体会我对于visualbasic的学习,是从初中开始的。

当时____(省、市、区、县)的中考政策有考级加分制度,考出全国二级能加10分。

在此诱惑下报名参加培训班,考了两次,第一次笔试未通过,第二次才全通过。

虽然考了两次,但是那时候已经能够编出几个没有什么逻辑性可言的小小游戏了。

所以这次认识实习,对我来说难度并不大。

然而由于选课上面的原因,认识实习和电子实习冲突,导致我没有上过一节认识实习课。

所以我的vb水平基本没有什么进步,这个五子棋,也是建立在初中的经验上的。

vb本身也不是很难。

尤其在gui编程上能够体现出来。

我接触过几种gui的编程,桌面应用里面有swing、qt库的编程,另外还有android和j2me的编程。

这些程序在gui开发上面虽然不能说难,但代码量也是很大的(qt和android有可视化辅助设计,稍微好一点)。

而微软确实对程序员比较照顾,出了很多的编程方式都比较简易,比如windowsform式的编程,这在vb和c#上体现的非常到位,大大降低了程序员的门槛。

值得一提的是,我初中的学校,超过三分之一的人通过了全国计算机等级考试二级vb,可见vb的简单程度。

虽然vb很简单,但说实话我不太喜欢vb。

一方面是长期接触类c语法,让我对于类c语法的语言比较偏爱(java、c++、php等)。

另一方面是vb是一种windowsonly的语言,可移植性比较差。

而从业界发展的视角来看,随着苹果焕发第二春以及google的崛起,微软的势力开始萎缩。

在终端方面,高端智能手机以及平板电脑正悄悄取代个人pc机的地位。

而云计算的概念更加使得这些终端设备能够替代传统pc。

而微软在这方面几乎可以被称作是惨败的。

所以,开发windows桌面应用渐渐显得不入时,况且是用可移植性非常差的vb6来开发。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机上机实习报告学院:石油工程学院班级:储运11204姓名:魏亚荣学号:XXXXXXX班内序号:XX指导教师:XXX目录一.系统名称-----------------------------------------------------------3二. 实习目的-----------------------------------------------------------3三. 系统功能概要-----------------------------------------------------3四. 系统设计分析-----------------------------------------------------3 五.窗体设计与程序代码-------------------------------------------5 六.心得体会----------------------------------------------------------16一、系统名称----班级学生成绩管理系统二、实习目的:综合应用所学理论知识,联系实际开发一个具备简易功能的班级学生成绩管理系统。

熟悉程序编写与调试,熟悉数据文件的创建、打开、读写、关闭等相关操作,同时让我们熟悉VB 6.0的开发环境,掌握基本的编程方法,熟悉用VB语言完成一个应用程序的设计过程,掌握有关编辑和调试程序的方法和技巧。

三、系统功能概要1、用记事本新建一个文本文件,将本班的M名学生的有关信息及本学期的N 门考试课的成绩(要求用假想分数,并要求将自己的每门课的放在第一列)输入到这个文件中,建议按如下形式存放(注:20≤M≤50、5≤N≤8,下文以M=10,N=5为例):序号姓名幸运日出生日期英语VB 数学体育专业课7 作者自己8 1992.12.19 99 100 98 98 10010 张某 6 1993.08.06 77 76 80 89 855 李某 1 1994.11.16 89 88 99 97 953 王某 6 1993.06.04 56 76 43 54 772 刘某3 1994.01.05 82 87 85 79 891 孙某2 1994.01.15 45 56 66 65 684 赵某5 1992.01.05 82 96 56 85 556 陈某 3 1993.12.25 86 86 66 86 879 周某 5 1666.12.23 56 96 65 56 568 钱某 6 1994.03.03 56 65 56 56 562、将本学期的N门课程及其学分(16学时为1个学分)输入到另一个数据文件(文件类型同上题)中,建议如下列形式存放:编号课程名称课程学分1 英语 5.02 vb程序设计 43 数学 4.54 体育 3.05 专业课10.01)找出“出生日”与幸运日相同的人,并打印出其信息(每行输出一个人信息)2)统计出分别拥有幸运数字1,2,3,4,5,6,7,8,9,0的人数3)能查出任何一个你感兴趣的人的信息4)可新添加一个人的信息5)和删除一个人的信息6)可以对某个人的幸运数字进行修改,只改变其幸运数字,其他信息不变7)根据以上两文件内容分别计算每个学生N门课的加权平均分(保留2位小数,4舍5入),按平均分排列名次,平均分相同则名次并列,如第1、2、2、4、5、5、7…名。

用VB创建一个数据文件,存放班级的成绩表,建议按以下形式存放。

学号姓名英语vb程序设计数学平均成绩名次1 张某76 89 89 80.5 22 李某91 96 67 78.2 33 王某75 58 56 88.8 14 赵某58 67 77 68.5 48)分别统计全班每门课的平均分,并计算各分数段(60分以下;60~69;70~79;80~89;90分以上)的学生人数。

用VB创建一个新的数据文件,在该文件中存放数据的格式如下:范围. 英语VB .>=90 3 5 .80-89 10 12 .... ... ... ... ... ... ... ... ... ...9)打印每名学生成绩条(并将结果存放到用VB创建的一个新的数据文件中)。

10)打印所有存在不及格课程学生的名单(含学号、不及格课程名称、课程的学分及成绩)。

11)打印优等生名单(学号、N门课成绩、平均分名次)优等生条件:a)平均分≥ 90分b)名次在本班位于前三名c)平均分≥85分,并且有二门课的成绩都≥ 95分选做内容:打印每门课成绩分布图说明:所有输出结果应写入用VB创建的文件中,格式要整齐,并有适当的文字说明。

实习报告要求:应包括分析设计与说明、部分过程(函数)的源程序清单、程序调试过程中遇到的问题及解决方法,有待改善或改进的意见,对本次实习的意见与建议、收获等。

其中原始数据及程序运行的结果应作为附录附于实习报告之后。

四、系统设计分析:1、该成绩管理系统中要同时表示学生的学号、姓名、成绩等一些信息,及课程、课程学分等一些信息,由于每项信息的意义不同,数据类型也不同,但还要同时作为一个整体来描叙和处理,因此需要通过用户自定义来解决。

所以在编程之前新建一个标准模块用来定义自定义类型。

2、为了便于后面执行求加权平均分、排名等命令,在Form1发生Load事件时应将学生信息和课程信息读取并放到两个数组中,由于这两个数组在该管理系统的全程序都要用到,因此应定义为全局类型。

如是在标准模块中定义两个数组。

3、由于原始数据文件中相邻的两列之间空格的长短不一,因此在调用Split函数之前应窗体通用模块中自定义一个space1函数将原始数据文件中相邻的两列之间空格数变为相同。

4、在编写程序时,由于该系统的程序代码较多,因此在编写时要合理。

5、在打印成绩条、不及格名单、优等生等信息时,应边用write语句分别将数据存入一个新的文件中。

6、实习必须按着老师的严格要求完成所有的实习任务,并整理成文件打印。

五.窗体设计与程序代码1.此次窗体设计使用了11个命令按钮分别对应不同的系统功能要求,具体界面如下2.程序代码⑴统计“出生日”与幸运日相同的人Dim stu() As student, n%, kc() As kecheng, x%Private Sub Command1_Click()ClsFor i = 1 To UBound(stu())If Right(stu(i).birthday, 2) = stu(i).luckyday ThenPrint stu(i).num; stu(i).name; stu(i).luckyday; stu(i).birthday;For j = 1 To 5Print stu(i).score(j);Next jPrintEnd IfNext iEnd Sub⑵统计不及格学生的名单Private Sub Command10_Click()ClsPrint "序号"; Spc(3); "姓名"; Spc(3); "成绩"; Spc(3); "学分"; Spc(3); "课程";For i = 1 To UBound(stu())For j = 1 To 5If stu(i).score(j) < 60 ThenPrint Tab(0); stu(i).num; Spc(3); stu(i).name; Spc(2); stu(i).score(j); Spc(3); kc(j).xf; Spc(3); kc(j).km;End IfNext jNext iEnd Sub⑶打印优等生名单Private Sub Command11_Click()ClsPrint "学号""英语"; Space(3); "VB"; Space(3); "数学"; Space(3); "体育"; Space(3); "专业课"; Space(3); "排名"Dim zxf%, i%, j%, k%For i = 1 To UBound(kc())zxf = zxf + kc(i).xfNext iFor j = 1 To UBound(stu())For k = 1 To 5stu(j).average = stu(j).average + stu(j).score(k) * kc(k).xf / zxfstu(j).average = Format(stu(j).average, "0.00")Next kNext jFor m = 1 To UBound(stu())stu(m).rank = 1For n = 1 To UBound(stu())If stu(m).average < stu(n).average Thenstu(m).rank = stu(m).rank + 1End IfNext nNext mFor i = 1 To UBound(stu())k = 0For j = 1 To 5If stu(i).score(j) >= 95 Thenk = k + 1End IfNext jIf stu(i).average >= 90 Or stu(i).rank <= 3 Or (stu(i).average >= 85 And k >= 2) ThenPrint stu(i).num; Space(3); stu(i).name;For m = 1 To 5Print stu(i).score(m); Spc(4);Next mPrint stu(i).rankEnd IfNext iEnd Sub⑷统计各幸运数字的人数Private Sub Command2_Click()ClsFor i = 0 To 9Dim luckypeople%For j = 1 To UBound(stu())If Val(stu(j).luckyday) = i Thenluckypeople = luckypeople + 1End IfNext jPrint "幸运数字为" & i; "的人数为:" & luckypeople luckypeople = 0Next iEnd Sub⑸查询信息Private Sub Command3_Click()ClsDim rm As String, i%, j%rm = InputBox("请输入你想要查询的同学的姓名")For i = 1 To UBound(stu())If Trim(stu(i).name) = rm ThenPrint stu(i).num; stu(i).name; stu(i).luckyday; stu(i).birthday;For j = 1 To 5Print stu(i).score(j);Next jEnd IfNext iEnd Sub⑹添加信息Private Sub Command4_Click()ClsDim xinxuesheng As Stringxinxuesheng = InputBox("请依次按照序号,姓名,幸运日,出生日期,英语,vb,数学,体育,专业课的顺序输入新同学的信息,中间用空格隔开")Open "e:\vb作业1.txt" For Append As #1Print #1, xinxueshengPrintClose #1Do While InStr(Trim(xinxuesheng), " ") <> 0xinxuesheng = Replace(Trim(xinxuesheng), " ", " ")Loopa = Split(xinxuesheng, " ")n = n + 1ReDim Preserve stu(n)stu(n).num = a(0)stu(n).name = a(1)stu(n).luckyday = a(2)stu(n).birthday = a(3)For i = 1 To 5stu(n).score(i) = a(3 + i)Next iFor i = 1 To UBound(stu())Print stu(i).num; stu(i).name; stu(i).luckyday; stu(i).birthday;For j = 1 To 5Print stu(i).score(j);Next jPrintNext iEnd Sub⑺删除信息Private Sub Command5_Click()ClsDim rm As Stringrm = InputBox("请输入你要删除的同学的姓名")For i = 1 To nIf Trim(stu(i).name) = rm ThenExit ForEnd IfNext iFor j = i To n - 1stu(j) = stu(j + 1)Next jReDim Preserve stu(n - 1)For i = 1 To UBound(stu())Print stu(i).num; stu(i).name; stu(i).luckyday; stu(i).birthday;For j = 1 To 5Print stu(i).score(j);Next jPrintNext iEnd Sub⑻修改幸运数字Private Sub Command6_Click()ClsDim rm As String, shuzi As String, i%, j%rm = InputBox("请输入你要修改的同学的姓名")shuzi = InputBox("请输入你要修改后的幸运数字")For i = 1 To UBound(stu())If Trim(stu(i).name) = rm Thenstu(i).luckyday = shuziPrint stu(i).num; stu(i).name; stu(i).luckyday; stu(i).birthday;For j = 1 To 5Print stu(i).score(j);Next jEnd IfNext iEnd Sub⑼计算每个学生的平均分Private Sub Command7_Click()ClsDim zxf%, i%, j%, k%For i = 1 To UBound(kc())zxf = zxf + kc(i).xfNext iFor j = 1 To UBound(stu())For k = 1 To 5stu(j).average = stu(j).average + stu(j).score(k) * kc(k).xf / zxfstu(j).average = Format(stu(j).average, "0.00")Next kNext jFor m = 1 To UBound(stu())stu(m).rank = 1For n = 1 To UBound(stu())If stu(m).average < stu(n).average Thenstu(m).rank = stu(m).rank + 1End IfNext nNext mOpen "e:\成绩单.txt" For Append As #3Print #3, "序号"; Space(3); "姓名"; Space(3); "幸运日"; Space(3); "出生日期"; Space(4); "数学"; Space(4); "英语"; Space(4); "vb"; Space(4); "物理"; Space(3); "专业课"; Space(3); "平均分"; Space(3); "排名"For i = 1 To UBound(stu())Print #3,Print #3, stu(i).num; Space(3); stu(i).name; Space(3); stu(i).luckyday; Space(3); stu(i).birthday; Space(3);For j = 1 To 5Print #3, stu(i).score(j); Space(3);Next jPrint #3, stu(i).average; Space(3); stu(i).rank;Next iClose #3End Sub⑽统计成绩分布Private Sub Command8_Click()ClsDim i%, j%, bsix%, ss%, se%, en%, anine%, a(1 To 25) As Integer, b(1 To 5) As Integer, c(1 To 5) As Integer, d(1 To 5) As Integer, e(1 To 5) As Integer, o(1 To 5) As Integer, p(1 To 5) As Integer, q(1 To 5) As Integer, r(1 To 5) As Integer, s(1 To 5) As IntegerFor i = 1 To 5kc(i).zf = 0For j = 1 To UBound(stu())kc(i).zf = kc(i).zf + stu(j).score(i)Next jkc(i).average = kc(i).zf / UBound(stu())kc(i).average = Format(kc(i).average, "0.00")Print kc(i).averageNext iOpen "e:\成绩分布.txt" For Append As #4Print #4, "范围"; Space(8); "数学"; Space(3); "英语"; Space(3); "vb"; Space(3); "物理"; Space(3); "专业课"For i = 1 To 5For j = 1 To UBound(stu())If stu(j).score(i) >= 90 Theno(i) = o(i) + 1ElseIf stu(j).score(i) >= 80 Thenp(i) = p(i) + 1ElseIf stu(j).score(i) >= 70 Thenq(i) = q(i) + 1ElseIf stu(j).score(i) >= 60 Thenr(i) = r(i) + 1Elses(i) = s(i) + 1End IfNext jNext iPrint #4, ">=90"; Spc(8);For i = 1 To 5Print #4, o(i); Spc(4);Next iPrint #4,Print #4, ">=80"; Spc(8);For i = 1 To 5Print #4, p(i); Spc(4);Next iPrint #4,Print #4, ">=70"; Spc(8);For i = 1 To 5Print #4, q(i); Spc(4);Next iPrint #4,Print #4, ">=60"; Spc(8);For i = 1 To 5Print #4, r(i); Spc(4);Next iPrint #4,Print #4, "其他"; Spc(8);For i = 1 To 5Print #4, s(i); Spc(4);Next iPrint #4,Close #4End Sub⑾打印学生成绩条Private Sub Command9_Click()Dim stu(1 To 20) As StringOpen "e:\成绩单.txt" For Input As #5For i = 1 To 20Line Input #5, stu(i): Print stu(i)Next iClose #5End Sub⑿文本信息的输入Private Sub Form_Load()Dim str1 As String, a() As String, i%, str2 As String, b() As String Open "e:\学生信息.txt" For Input As #1Line Input #1, str1Print str1Do While Not EOF(1)Line Input #1, str1Do While InStr(Trim(str1), " ") <> 0str1 = Replace(Trim(str1), " ", " ")Loopa = Split(str1, " ")n = n + 1ReDim Preserve stu(n)stu(n).num = a(0)stu(n).name = a(1)stu(n).luckyday = a(2)stu(n).birthday = a(3)For i = 1 To 5stu(n).score(i) = a(3 + i)Next iClsLoopClose #1Open "e:\学分.txt" For Input As #2Line Input #2, str2Print str2Do While Not EOF(2)Line Input #2, str2Do While InStr(Trim(str2), " ") <> 0str2 = Replace(Trim(str2), " ", " ")Loopb = Split(str2, " ")x = x + 1ReDim Preserve kc(x)kc(x).bh = Val(b(0))kc(x).km = b(1)kc(x).xf = b(2)LoopClose #2ClsEnd Sub六.心得体会1. 通过这次上机实习,我受益匪浅,不仅更加熟悉VB的操作和运行环境,同时将课堂上所学的知识进行了系统化的整理与疏导;2. 在此次上机实习中,我切身体会到了编程对我们现代生活的重要性,编程能大大地方便我们日常的生活,使我们上网,工作更快捷,一个人就能干许多人的事情,大大地节约了人力,这将使计算机的应用更加普遍和普及,使社会的生产效率越来越高。

相关文档
最新文档