欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    VB实习报告.doc

    • 资源ID:2389331       资源大小:1.73MB        全文页数:24页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    VB实习报告.doc

    目 录第一部分 实习目标和要求 .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.实 习 1110实 习 1211实 习 1312实 习 1413实 习 15 14实 习 16.16实 习 17.20第三部分 总 结.22一、 实习心得.22第一部分 实习目标和要求一、 实习目标通过该课程设计的操作与实践,使学生在了解使用VB程序设计方法、掌握面向对象程序设计的相关理论知识和设计技巧的基础上,能够将理论教学中涉及到的知识点 贯穿起来,通过对各个实习任务的练习,应用VB实现测量数据的程序处理;从而提高面向对象程序设计的综合设计能力、应用VB来解决测量中的数据处理等问题的实践能力二、 实习要求1认真努力作业。巩固所学VB语言基本知识。2鼓励多种形式的学习活动。如与同学展开讨论,请教老师,查阅图书资料,上网搜索信息等。3程序的功能要求。按个人能力可做适当的增减。有能力的,应实现更多的功能。4按时提交作业。课程设计作业包括全部VB软件工程文件和课程设计报告。5珍惜上机机会。上机期间不做与课程设计无关的事。6按照计划进行设计。三、时间安排周数时间实习内容指导教师第十五周第一天实习任务的安排、组织学生、资料收集(实习12)赵淑湘第二天实习(实习3实习6)赵淑湘第三天实习(实习7实习11)赵淑湘第四天实习(实习12实习16)赵淑湘第五天实习17 、成果整理赵淑湘第二部分 程序编写1、判断闰年:年号(intyear)能被4整除,但不能被100整除;或能被400整除程序代码:'函数"rn"的功能是判断年号intyear是否为闰年,rn闰年Function rn(intyear As Integer)If intyear Mod 4 = 0 And intyear Mod 100 <> 0 Then rn = "闰年"ElseIf intyear Mod 400 = 0 Then rn = "闰年" Else rn = ""End IfEnd Function运行情况如图1:图1 函数rn()的运行界面2一元二次议程ax2+bx+c=0存在实根的条件:a不等于0,且b2-4ac大于等于0。程序代码:'函数"ryycfc"的功能是判断一元二次方程ax2+bx+c=0是否实根;'ryycfc -一元二次方程Function ryycfc(a, b, c) If a <> 0 And b 2 - 4 * a * c >= 0 Then ryycfc = "有实根" Else ryycfc = "无实根" End IfEnd Function运行情况如图2:图2 函数ryycfc()的运行界面3.输入三个数a,b,c,输出三者之中最大数程序编码:'函数dxbj的功能是三个数的大小比较,输出最大的数,dxbj的意思是大小比较Function dxbj(a, b, c) If a > b And b > c Then dxbj = a End If If a > b And c > b Then dxbj = a End If If b > a And a > c Then dxbj = b End If If b > a And c > a Then dxbj = b End If If c > b And b > a Then dxbj = c End If If c > b And a > b Then dxbj = c End IfEnd Function运行情况: 如图3图3函数dxbj()的运行界面4.公民缉拿所得税,假定按规定超过800元起征收2%,8001600元之间征收3%,16005000元之间征收4%,500020000元之间征收6%,20000200000元之间征收10%,超过200000征收25%。输入收入,计算出所得税。程序编码:'函数ns的功能是计算所得税,ns的意思是个人要缴纳的金额Function ns(a) If a <= 800 Then ns = a * 0.02 End If If a > 800 And a <= 1600 Then ns = 800 * 0.02 + (a - 800) * 0.03 End If If a > 1600 And a <= 5000 Then ns = 800 * 0.02 + (a - 1600) * 0.04 + (a - 2400) * 0.03 End If If a > 5000 And a <= 20000 Then ns = 800 * 0.02 + (a - 1600) * 0.04 + (a - 2400) * 0.03 + (a - 5000) * 0.06 End If If a > 20000 And a <= 200000 Then ns = 800 * 0.02 + (a - 1600) * 0.04 + (a - 2400) * 0.03 + (a - 5000) * 0.06 + (a - 20000) * 0.1 End If If a > 200000 Then ns = 800 * 0.02 + (a - 1600) * 0.04 + (a - 2400) * 0.03 + (a - 5000) * 0.06 + (a - 20000) * 0.1 + (a - 200000) * 0.25 End IfEnd Function运行情况:如图4图4函数ns()的运行界面5.小猴在一天摘了若干个桃子,当天吃掉一半多一个;第二天接着吃了剩下的桃子的一半多一个,以后每天都吃剩下的桃子的一半多一个,到第7天早上要吃时发现只剩下一个,问小猴那天共摘了多少个桃子?程序编码:'函数tz的功能是计算小猴那天共摘了多少个桃子Function tz()m = 1For i = 1 To 6n = (m + 1) * 2m = nNext itz = nEnd Function运行情况:如图5图5函数tz()的运行界面6.已知XYZ+YZZ=532,其中X,Y和Z为09的数字,编程求出X、Y和Z。程序编码:'函数xyz的功能是满足式子XYZ+YZZ=532的成立Function xyz() For x = 1 To 9 For y = 1 To 9 For z = 0 To 9 If (100 * x + 10 * y + z) + (100 * y + 10 * z + z) = 532 Then xyz = "x=" & x & " " & " y= " & y & " " & "z=" & z & " " End If Next z Next yNext xEnd Function运行情况:如图6图6函数xyz()的运行界面7.某次大奖赛,有7个评委打分,满分为100分。对一名参赛者,输入7个评委的打分分数,去掉一个最高分、一个最低分后,求出平均分为该参赛者得分。编写程序输入评委的打分,输出参赛者得分。程序编码:'函数js_Click的功能是计算参赛者得分。Option Base 1Private Sub js_Click() Dim pf(7) As Single Dim su, ma, mi, aver As Single Dim i As Integer pf(1) = Val(p1.Text) pf(2) = Val(p2.Text) pf(3) = Val(p3.Text) pf(4) = Val(p4.Text) pf(5) = Val(p5.Text) pf(6) = Val(p6.Text) pf(7) = Val(p7.Text) ma = pf(1) mi = pf(1) For i = 1 To 7 su = su + pf(i) If ma < pf(i) Then ma = pf(i) End If If mi > pf(i) Then mi = pf(i) End If Next i aver = (su - ma - mi) / 5 zd.Text = Trim(Str(mi) pj.Text = Trim(Str(aver)End SubPrivate Sub qc_Click() p1.Text = "" p2.Text = "" p3.Text = "" p4.Text = "" p5.Text = "" p6.Text = "" p7.Text = "" zg.Text = "" zd.Text = "" pj.Text = ""End SubPrivate Sub tc_Click() Unload xsdfEnd Sub运行情况:如图7图7函数js_Click()的运行界面8.求S=1-1/2+1/3-1/4+1/99-1/100的值。程序编码:'函数s的功能是计算S=1-1/2+1/3-1/4+1/99-1/100的值Function s() Dim n As Integer Dim su As Double su = 0 For n = 1 To 100 su = su + (-1) (n + 1) / n Next n s = suEnd Function运行情况:如图8图8函数s()的运行界面9.求所有的水仙花数。所谓水仙花数是指一个三位数,它的各位数字的立方和等于该数本身。例如:因为153=13+53+33,所以153是水仙花数。程序代码:'函数sxh的功能是统计水仙花数,sxh 水仙花。Function sxh For X=0 to 9 For Y=0 to 9 For Z=0 to 9If 100*X+10*Y+Z=X3+Y3+Z3 then Sxh=sxh&” ”& 100*X+10*Y+Z End if Next ZNext YNext XEnd function运行情况如图9 图9 函数sxh的运行界面10、让用户输入5个数字,然后按照大小顺序输出。 程序编码:Function px()Const n = 5Dim a(n) As IntegerDim t, j, i As Integera(1) = 25: a(2) = 8: a(3) = 9: a(4) = 20: a(5) = 6For i = 1 To n For j = i + 1 To n If a(i) < a(j) Then t = a(i) a(i) = a(j) a(j) = t End If Next j Next i For i = 1 To n px = a(1) & " " & a(2) & " " & a(3) & " " & a(4) & " " & a(5) Next iEnd Function运行情况如图10: 图10 函数px的运行界面11、编一程序,先将10位评委对10位参赛歌手的评分(10分制)存入一个二维实型数组score(i,j)中,(其中i代表歌手,j代表评委),对每一位歌手,分别去掉它的最高分和一个最低分,计算并输出其余8个 分数的平均值。程序编码:Option Base 1Private Sub js_Click() Dim pf(10) As Single Dim su, ma, mi, aver As Single Dim i As Integer pf(1) = Val(p1.Text) pf(2) = Val(p2.Text) pf(3) = Val(p3.Text) pf(4) = Val(p4.Text) pf(5) = Val(p5.Text) pf(6) = Val(p6.Text) pf(7) = Val(p7.Text) pf(8) = Val(p8.Text) pf(9) = Val(p9.Text) pf(10) = Val(p10.Text) ma = pf(1) mi = pf(1) For i = 1 To 10 su = su + pf(i) If ma < pf(i) Then ma = pf(i) End If If mi > pf(i) Then mi = pf(i) End If Next i aver = (su - ma - mi) / 8 zgf.Text = Trim(Str(ma) zdf.Text = Trim(Str(mi)df.Text = Trim(Str(aver)End SubPrivate Sub qc_Click() p1.Text = "" p2.Text = "" p3.Text = "" p4.Text = "" p5.Text = "" p6.Text = "" p7.Text = "" p8.Text = "" p9.Text = "" p10.Text = "" zgf.Text = "" zdf.Text = "" df.Text = ""End SubPrivate Sub tc_Click() Unload xsdfEnd Sub运行情况如图11图11 函数js_Click()的运行界面12、随机产生10个1100的正整数放入数组,显示产生的数,求最大值、最小值及平均值。程序编码:Function px()Const n = 5Dim a(n) As IntegerDim t, j, i As Integera(1) = 25: a(2) = 8: a(3) = 9: a(4) = 20: a(5) = 6For i = 1 To n For j = i + 1 To n If a(i) < a(j) Then t = a(i) a(i) = a(j) a(j) = t End If Next j Next i For i = 1 To n px = a(1) & " " & a(2) & " " & a(3) & " " & a(4) & " " & a(5) Next iEnd Function运行情况如图: 图12为函数px的运行界面13、度转度分秒。程序代码:Option ExplicitConst pi As Double = 3.14159265358979'dzdfm-含义为"度转度分秒",功能是将度转换为度分秒输出.Function dzdfm(jd As Double) As Variant Dim fh As Integer Dim d, f, m As Variant fh = Sgn(jd) jd = Abs(jd) d = Int(jd) f = Int(jd - d) * 60) m = (jd - d) * 60 - f) * 60 dzdfm = (d + f / 100 + m / 10000) * fhEnd Function运行情况如图13所示图13 dzdfm函数运行界面14、度分秒转度。程序代码:Option ExplicitConst pi As Double = 3.14159265358979'dfmzd-含义为"度分秒转度",功能是将度分秒转换为度输出.Function dfmzd(dfm As Double) As Double Dim fh As Integer Dim d As Integer Dim f As Integer Dim m As Double fh = Sgn(dfm) dfm = Abs(dfm) d = Int(dfm) f = Int(dfm - d) * 100) m = (dfm - d) * 100 - f) * 100 dfmzd = (d + f / 60 + m / 3600) * fhEnd Function运行情况如图14 图14 dfmzd函数运行界面15、支导线计算。程序代码:Private Function zdxjs(dh As Range, gcj As Range, bc As Range, yzzb As Range, Optional zyj As Integer = 0, Optional jd As Integer = 3) As VariantDim js(-1 To 50, 1 To 8) As Variant Dim yzb(1 To 4) As Variant Dim dhi As Variant Dim GCJi As Variant Dim bci As Variant Dim yzzbi As Variant Dim AH As Double Dim bcsum As Variant Dim gcjsum As Double Dim n As Integer Dim i As Integer js(-1, 1) = "点号" js(-1, 2) = "观测角" + Chr(10) + Chr(13) + "(° ' " + """" + ")" js(-1, 3) = "坐标方位角" + Chr(10) + Chr(13) + "(° ' " + """" + ")" js(-1, 4) = "边长D" + Chr(10) + Chr(13) + "(m)" js(-1, 5) = "X" + Chr(10) + Chr(13) + "(m)" js(-1, 6) = "Y" + Chr(10) + Chr(13) + "(m)" js(-1, 7) = "X" + Chr(10) + Chr(13) + "(m)" js(-1, 8) = "Y" + Chr(10) + Chr(13) + "(m)" js(0, 1) = 1 js(0, 2) = 2 js(0, 3) = 3 js(0, 4) = 4 js(0, 5) = 5 js(0, 6) = 6 js(0, 7) = 7 js(0, 8) = 8 i = 0 For Each dhi In dh i = i + 1 js(i, 1) = dhi.Value Next dhi n = i i = 1 For Each GCJi In gcj i = i + 1 js(i, 2) = GCJi.Value Next GCJi i = 1 For Each bci In bc i = i + 1 js(i, 4) = bci.Value Next bci i = 0 For Each yzzbi In yzzb i = i + 1 yzb(i) = yzzbi.Value Next yzzbi js(1, 7) = yzb(1) js(1, 8) = yzb(2) js(2, 7) = yzb(3) js(2, 8) = yzb(4) js(1, 3) = zbfsfwj(js(1, 7), js(1, 8), js(2, 7), js(2, 8) For i = 2 To n - 1 AH = js(i - 1, 3) js(i, 3) = FWJTS(AH, DFMZHD(js(i, 2), zyj)r Next i For i = 2 To n - 1 js(i, 5) = Round(js(i, 4) * Cos(js(i, 3), jd) js(i, 6) = Round(js(i, 4) * Sin(js(i, 3), jd) Next i For i = 3 To n js(i, 7) = js(i - 1, 7) + js(i - 1, 5) js(i, 8) = js(i - 1, 8) + js(i - 1, 6) Next i For i = 2 To n - 1 js(i, 2) = DFMKG(js(i, 2) js(i, 3) = HDZDFMKG(js(i, 3) Next i js(1, 3) = HDZDFMKG(js(1, 3) For i = 2 To 6 js(n, i) = "" Next i js(1, 2) = "" For i = 4 To 6 js(1, i) = "" Next i zdxjs = js End Function运行情况如图15所示 图15 支导线函数运行界面16、复合导线计算。程序代码:Private Function dxjs(dh As Range, gcj As Range, bc As Range, yzzb1 As Range, yzzb2 As Range, Optional zyj As Integer = 0, Optional jd As Integer = 3) As VariantDim js(-1 To 50, 1 To 11) As Variant Dim yzzbsz1(1 To 4) As Variant Dim yzzbsz2(1 To 4) As Variant Dim dhi As Variant Dim GCJi As Variant Dim bci As Variant Dim yzzb1i As Variant Dim yzzb2i As Variant Dim gcjsum As Variant Dim vbsum As Variant Dim vxsum As Double Dim vysum As Double Dim fb As Double Dim YZFWJ2 As Double Dim fx As Integer Dim fy As Integer Dim n As Integer Dim i As Integer js(-1, 1) = "点号" js(-1, 2) = "观测角" + Chr(10) + Chr(13) + "(° ' " + """" + ")" js(-1, 3) = "改正角" + Chr(10) + Chr(13) + "(" + """" + ")" js(-1, 4) = "坐标方位角" + Chr(10) + Chr(13) + "(° ' " + """" + ")" js(-1, 5) = "边长D" + Chr(10) + Chr(13) + "(m)" js(-1, 6) = "X" + Chr(10) + Chr(13) + "(m)" js(-1, 7) = "VX" + Chr(10) + Chr(13) + "(mm)" js(-1, 8) = "Y" + Chr(10) + Chr(13) + "(m)" js(-1, 9) = "VY" + Chr(10) + Chr(13) + "(mm)" js(-1, 10) = "X" + Chr(10) + Chr(13) + "(m)" js(-1, 11) = "Y" + Chr(10) + Chr(13) + "(m)" js(0, 1) = 1 js(0, 2) = 2 js(0, 3) = 3 js(0, 4) = 4 js(0, 5) = 5 js(0, 6) = 6 js(0, 7) = 7 js(0, 8) = 8 js(0, 9) = 9 js(0, 10) = 10 js(0, 11) = 11 i = 0 For Each dhi In dh i = i + 1 js(i, 1) = dhi.Value Next dhi n = i i = 1 For Each GCJi In gcj i = i + 1 js(i, 2) = GCJi.Value Next GCJi i = 1 For Each bci In bc i = i + 1 js(i, 5) = bci.Value Next bci i = 0 For Each yzzb1i In yzzb1 i = i + 1 yzzbsz1(i) = yzzb1i.Value Next yzzb1izzb2i In yzzb2 i = i + 1 yzzbsz2(i) = yzzb2i.Value Next yzzb2i js(1, 10) = yzzbsz1(1) js(1, 11) = yzzbsz1(2) js(2, 10) = yzzbsz1(3) js(2, 11) = yzzbsz1(4) js(n - 1, 10) = yzzbsz2(1) js(n - 1, 11) = yzzbsz2(2) js(n, 10) = yzzbsz2(3) js(n, 11) = yzzbsz2(4) js(1, 4) = zbfsfwj(yzzbsz1(1), yzzbsz1(2), yzzbsz1(3), yzzbsz1(4) js(n - 1, 4) = zbfsfwj(yzzbsz2(1), yzzbsz2(2), yzzbsz2(3), yzzbsz2(4)。 YZFWJ2 = js(n - 1, 4) gcjsum = 0 For i = 2 To n - 1 AH = js(i - 1, 4) gcjsum = gcjsum + DFMZJD(js(i, 2) js(i, 4) = FWJTS(AH, DFMZHD(js(i, 2), zyj) Next i fb = (js(n - 1, 4) - YZFWJ2) * 180 / PI * 3600 fb = Sgn(fb) * Round(Abs(fb), 0) js(n - 1, 4) = YZFWJ2 ' If zyj = 0 Then fb = -fb End If js(n + 1, 3) = fb vbsum = 0 For i = 2 To n - 2 js(i, 3) = Sgn(fb) * Int(Abs(fb) / (n - 2) vbsum = vbsum + js(i, 3) Next ijs(n - 1, 3) = fb - vbsum For i = 2 To n - 1 AH = js(i - 1, 4) js(i, 4) = FWJTS(AH, DFMZHD(js(i, 2) + js(i, 3) / (180 / PI * 3600), zyj) Next vxsum = 0 vysum = 0 bcsum = 0 For i = 2 To n - 2 js(i, 6) = Round(js(i, 5) * Cos(js(i, 4), jd) vxsum = vxsum + js(i, 6) js(i, 8) = Round(js(i, 5) * Sin(js(i, 4), jd) vysum = vysum + js(i, 8) bcsum = bcsum + js(i, 5) Next js(n + 1, 6) = vxsum js(n + 1, 8) = vysum fx = Int(vxsum - (js(n - 1, 10) - js(2, 10) * 1000) fy = Int(vysum - (js(n - 1, 11) - js(2, 11) * 1000) vxsum = 0 vysum = 0 For i = 2 To n - 3 js(i, 7) = -1 * Sgn(fx) * Int(Abs(fx) * js(i, 5) / bcsum) vxsum = vxsum + js(i, 7) js(i, 9) = -1 * Sgn(fy) * Int(Abs(fy) * js(i, 5) / bcsum) vysum = vysum + js(i, 9) Next i js(n - 2, 7) = -fx - vxsum js(n - 2, 9) = -fy - vysum For i = 3 To n - 2 js(i, 10) = js(i - 1, 10) + js(i - 1, 6) + js(i - 1, 7) / 1000 js(i, 11) = js(i - 1, 11) + js(i - 1, 8) + js(i - 1, 9) / 1000 Next i js(n + 1, 1) = "" js(n + 1, 5) = bcsum js(n + 1, 7) = -fx js(n + 1, 9) = -fy js(n + 1, 2) = DZDFMKG(gcjsum) js(n + 1, 3) = fb For i = 2 To 9 js(n, i) = "" Next i For i = 5 To 9 js(n - 1, i) = "" Next i For i = 2 To 9 If i <> 4 Then js(1, i) = "" End If Next i js(n + 1, 4) = "" js(n + 1, 10) = "" js(n + 1, 11) = "" js(n + 2, 1) = "辅肋" + Chr(10) + "计算" js(n + 2, 2) = "fB=" + Str$(-1 * fb) + """" + Space$(5) + "fB容±" + Str$(Round(12 * Sqr(n - 1), 0) + """" + Space(5) + "fx=" + Str$(fx) + "mm" + Space$(5) + "fy=" + Str$(fy) + "mm" + Space(5) + Chr(10) + "fd=" + Str$(Round(Sqr(fx 2 + fy 2), 1) _ + "mm" + Space(5) + "K=1/" + Str$(Int(bcsum / Sqr(fx 2 + fy 2) * 1000) For i = 2 To n - 1 js(i, 2) = DFMKG(js(i, 2) js(i, 4) = HDZDFMKG(js(i, 4) Next i js(1, 4) = HDZDFMKG(js(1, 4) dxjs = js End Function运行情况如图16所示 图 16 附合导线函数运行界面17、取位函数。程序编码:Private Sub cmd_qw_Click() Dim numysz, numqwrsz As Double Dim qwz As Integer Dim n, fh As Integer numysz = Val(txt_ysz.Text) fh = Sgn(numysz) If numysz < 0 Then numysz = Abs(numysz)

    注意事项

    本文(VB实习报告.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开