欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOC文档下载  

    VB程序设计.doc

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

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

    VB程序设计.doc

    1.编写程序,计算学生考试成绩,界面如下列图。要求:1程序启动时将窗体标题设置为“成绩计算。2单击“清空按钮mand1将文本框Text1、Text2和Text3清空并将焦点设置为Text1。3点击“计算按钮(mand2)计算学生总成绩并显示在Text3中。其中总成绩=理论成绩*0.7+实验成绩*0.3。4点击“退出按钮(mand3)完毕程序运行。参考代码:Private Sub Form_Load()Form1.Caption = "成绩计算"End SubPrivate Sub mand1_Click()Text1.Text = ""Text2.Text = ""Text3.Text = ""End SubPrivate Sub mand2_Click()End SubPrivate Sub mand3_Click()EndEnd Sub2.设计一个用户名和密码的检验程序。要求:1窗体Form1的标题设置为“登录窗口;密码以 “*显示。2单击“确定按钮cd1验证输入的用户名Text1和口令Text2,如果输入正确在Label3中显示“欢迎使用本系统;如果不正确在Label3中显示“用户名或密码错误。设正确的用户名为“admin,口令为“123456。(3)单击“退出按钮cd2,完毕程序。属性窗口:将“确定按钮的名称设置为cd1,“退出按钮的名称设置为cd2。参考代码:Private Sub Form_Load()Form1.Caption = "登录窗口"Text2.PasswordChar = "*"End SubPrivate Sub cd1_Click()If Text1.Text = "admin" And Text2.Text = "123456" ThenLabel3.Caption = "欢迎使用本系统"ElseLabel3.Caption = "用户名或密码错误"End IfEnd SubPrivate Sub cd2_Click()EndEnd Sub1在窗体中放置一个文本框Text1、一个标签Label1和一个命令按钮mand1。在mand1_Click事件中编写程序,对文本框中输入的成绩进展等级判断,标准是:90分与以上为“优,80分与以上为“良,60分与以上为“与格,其余为“不与格,并在标签中显示相应等级。要求:分别用IfthenelseIf语句和SelectCase语句编写程序。参考代码:Private Sub mand1_Click()Dim score As Single,bz As Stringscore = Val(Text1.Text)Select Case scoreCase Is >= 90bz = "优"Case Is >= 80bz = "良"Case Is >= 60bz = "与格"Case Elsebz = "不与格"End SelectLabel1.Caption = bzEnd SubPrivate Sub mand1_Click()Dim score As Single, bz As Stringscore = Val(Text1.Text)If score >= 90 Thenbz = "优"ElseIf score >= 80 Thenbz = "良"ElseIf score >= 60 Thenbz = "与格"Elsebz = "不与格"End IfLabel1.Caption = bzEnd Sub2.88页编程题第二题2设计一个窗体,计算一元二次方程ax2+bx+c=0的根。参考代码:Private Sub mand1_Click()Dim pbs As Single, a As Single, b As Single, c As SingleDim x1 As Single, x2 As SingleDim flag As Booleanflag = True '标志'判断输入的是否为数字,使用多分支结构考试时该局部可以不写If Not IsNumeric(Text1.Text) ThenMsgBox "a应为数字", 0 + 16 + 0flag = FalseElseIf Not IsNumeric(Text2.Text) ThenMsgBox "b应为数字", 0 + 16 + 0flag = FalseElseIf Not IsNumeric(Text3.Text) ThenMsgBox "c应为数字", 0 + 16 + 0flag = FalseEnd IfIf flag = True Thena = Val(Text1.Text)b = Val(Text2.Text)c = Val(Text3.Text)If a = 0 And b = 0 ThenLabel4.Caption = "无意义"ElseIf a = 0 And b <> 0 ThenLabel4.Caption = "方程的根为:x1=x2=" + Str(-c / b)Elsepbs = b * b - 4 * a * cIf pbs > 0 Thenx1 = (-b + Sqr(pbs) / (2 * a)x2 = (-b - Sqr(pbs) / (2 * a)Label4.Caption = "方程有两不相等的实根,分别为:x1=" + Str(x1) + "x2=" + Str(x2)ElseIf pbs = 0 ThenLabel4.Caption = "方程的根为:x1=x2=" + Str(-b / 2 * a)ElseLabel4.Caption = "方程无实根"End IfEnd IfEnd IfEnd Sub.88页编程题第三题3设S=1×2×3××n,求S不大于4000时最大的n。参考代码:Private Sub Form_Click()Dim n As Integer, s As Integern = 0 '这里n=1也对s = 1Do While s <= 4000 '这里也可以用do until s > 4000n = n + 1s = s * nLoopPrintPrint "s不大于4000时最大的n是:" n - 1'注意这里End Sub'或写成Private Sub Form_Click()Dim n As Integer, s As Integern = 1 '这里n=1对,n=2对,n=0不对s = 1Do While s <= 4000s = s * nn = n + 1 '注意这两句与上面写法的前后顺序LoopPrintPrint "s不大于4000时最大的n是:" n - 2'注意这里End Sub2.88页编程题第四题4如果一个数的因子之和等于这个数本身,如此称这样的数为“完全数。例如,整数28的因子为1、2、4、7、14,其和1+2+4+7+14=28,因此28是一个完全数。编写一个程序,从键盘上输入正整数M和N,求出M和N之间的所有完全数。参考代码:方法一Private Sub mand1_Click()m = Val(Text1.Text)n = Val(Text2.Text)For i = m To nFor j = 1 To i - 1If i Mod j = 0 Thens = s + jEnd IfNext jIf i = s ThenPicture1.Print i;End Ifs = 0Next iEnd Sub参考代码:方法二Private Sub mand2_Click()Dim m As Integer, n As IntegerDim count As Integer, i As Integerm = Val(Text1.Text)n = Val(Text2.Text)For i = m To ns = 0For j = 1 To i 2If i Mod j = 0 Then s = s + jNext jIf s = i ThenPicture1.Print i;count = count + 1If count Mod 8 = 0 ThenEnd IfEnd IfNext iEnd Sub参考代码:方法三详见实验教材实训6-53.编写程序,打印九九乘法表的上三角Private Sub Form_Click()FontSize = 12Print Tab(35); "九九乘法表"Print Tab(33); "-"For i = 1 To 9For j = i To 9Print Tab(j - 1) * 9 + 1); i & "*" & j & "=" & i * j;Next jPrintNext iEnd Sub1.113页编程题第一题1编写程序,建立一个数组,并通过Rnd函数该函数返回一个0到1之间的数为每个数组元素赋一个1到100之间的整数。然后显示所有小于60的元素。参考代码:Private Sub Form_Click()Dim a(1 To 20) As Integer, i As IntegerDim j As Integerj = 0 '用来表示小于60的个数'建立两个picture,用于显示随机产生的数组和小于60的所以元素Picture1.Print "产生的数组为:"Picture2.Print "其中小于60的元素有:"For i = 1 To 20a(i) = Int(Rnd * 100 + 1)Picture1.Print a(i);If i Mod 10 = 0 Then Picture1.Print '10个数换行If a(i) < 60 Thenj = j + 1Picture2.Print a(i); " "If j Mod 10 = 0 Then Picture2.Print '10个数换行End IfNext iEnd Sub2.113页编程题第二题2编写程序,随机产生10个二位数,放入数组A中,从中选出一个最大的和一个最小的数,并显示出来。参考代码:Private Sub Form_Click()Dim a(1 To 10) As IntegerDim max As Integer, min As Integer, i As IntegerFor i = 1 To 10a(i) = Int(Rnd * 90 + 10)Picture1.Print a(i);Next imax = a(1)min = a(1)For i = 2 To 10If a(i) > max Then max = a(i)If a(i) < min Then min = a(i)Next iLabel1.Caption = "最大数为:" & maxLabel2.Caption = "最小数为:" & minEnd Sub3.113页编程题第五题5利用随机数生成两个4×4的矩阵A和B,前者X围为30-70,后者X围为101-135。要求:将两个矩阵相加,结果放入C矩阵。将矩阵A转置后放入D矩阵。求C矩阵中元素的最大值和下标。以下三角形式显示A,上三角形式显示B。将矩阵B第一行与第三行对应元素交换位置并输出。参考代码:Dim a(1 To 4, 1 To 4) As IntegerDim b(1 To 4, 1 To 4) As IntegerDim c(1 To 4, 1 To 4) As IntegerDim d(1 To 4, 1 To 4) As IntegerDim e(1 To 4, 1 To 4) As IntegerPrivate Sub Form_Load()ShowPicture1.FontSize = 10Picture2.FontSize = 10Picture1.Print "A矩阵:"Picture2.Print "B矩阵:"Randomize (5)For i = 1 To 4For j = 1 To 4a(i, j) = Int(Rnd * 40 + 30)b(i, j) = Int(Rnd * 35 + 101)Picture1.Print a(i, j); " "Picture2.Print b(i, j); " "Next jNext iEnd Sub将两个矩阵相加,结果放入C矩阵。Private Sub mand1_Click()Picture3.Print "C矩阵:"For i = 1 To 4For j = 1 To 4c(i, j) = a(i, j) + b(i, j)Picture3.Print c(i, j); " "Next jNext iEnd Sub将矩阵A转置后放入D矩阵。Private Sub mand2_Click()For i = 1 To 4For j = 1 To it = a(i, j)a(i, j) = a(j, i)a(j, i) = tNext jNext iPicture4.Print "A转置后:"For i = 1 To 4For j = 1 To 4d(i, j) = a(i, j)Picture4.Print a(i, j); " "Next jNext iEnd Sub求C矩阵中元素的最大值和下标。Private Sub mand3_Click()Max = c(1, 1)t1 = 1t2 = 1For i = 1 To 4For j = 1 To 4If c(i, j) > Max ThenMax = c(i, j)t1 = it2 = jEnd IfNext jNext iPicture6.FontSize = 20Picture6.Print "max=" MaxPicture6.Print "C(" t1; "," t2; ")"End Sub以下三角形式显示A,上三角形式显示B。Private Sub mand4_Click()Picture1.FontSize = 10Picture2.FontSize = 10For i = 1 To 4For j = 1 To iPicture1.Print a(i, j); " "Next jNext iFor i = 1 To 4For j = i To 4Picture2.Print Tab(j * 5); b(i, j);Next jNext iEnd Sub将矩阵B第一行与第三行对应元素交换位置并输出。Private Sub mand5_Click()For i = 1 To 4For j = 1 To 4Picture2.Print b(i, j); " "Next jNext iPicture5.Print "B第一行与第三行交换位置:"For i = 1 To 4t = b(1, i)b(1, i) = b(3, i)b(3, i) = tNext iFor i = 1 To 4For j = 1 To 4Picture5.Print b(i, j); " "Next jNext iEnd Sub4.113页编程题第三题3编写程序,随机产生20个不同的数放在数组A中,并按由大到小的顺序排序。从键盘上输入一数X,判断此数是否在该数组A中,假如在如此输出其所在的位置与X值,否如此输出“未找到。参考代码:Dim a(1 To 20) As IntegerPrivate Sub Form_Load()RandomizeEnd SubPrivate Sub bijiao_Click()Dim i As IntegerFor i = 1 To 20a(i) = Int(Rnd * 100) '题目没要求,随便的一个X围Next iFor i = 1 To 19 '比拟排序For j = i + 1 To 20If a(j) > a(i) Thent = a(i)a(i) = a(j)a(j) = tEnd IfNext jNext iFor i = 1 To 20 '打印数组Print a(i);Next iEnd SubPrivate Sub maopao_Click()Dim i As IntegerFor i = 1 To 20 '生成数组a(i) = Int(Rnd * 100) '题目没要求,随便的一个X围Next iFor i = 1 To 19 '冒泡排序For j = 20 To i + 1 Step -1If a(j) > a(j - 1) Thent = a(j)a(j) = a(j - 1)a(j - 1) = tEnd IfNext jNext iFor i = 1 To 20 '打印数组Print a(i);Next iEnd SubPrivate Sub xuanze_Click()Dim i As Integer For i = 1 To 20 '生成数组 a(i) = Int(Rnd * 100) '题目没要求,随便的一个X围 Next i For i = 1 To 19 '选择排序 k = i For j = i + 1 To 20 If a(j) > a(k) Then k = j Next j t = a(i) a(i) = a(k) a(k) = t Next i For i = 1 To 20 '打印数组 Print a(i); Next iEnd SubPrivate Sub mand1_Click() Dim x As Integer, flag As Integer, i As Integer flag = 0 '标志,表示数组中是否存在x x = InputBox("请输入x的值,为整数", "输入", 1) For i = 1 To 20 If x = a(i) Then flag = 1 'flag改变,说明存在 Exit For End If Next i If flag = 1 Then Print Print "数组中存在" & x Print "位置:" & i Else Print Print "未找到" & x End IfEnd Sub5.选做题-113页编程题第四题4编写程序,录入15名学生的成绩,求出其平均分,统计高于平均分、低于60分、大于等于90分的人数,并输出结果。参考代码:Private Sub Form_Click() Dim a(1 To 15) As Single Dim i As Integer, c1 As Integer, c2 As Integer, c3 As Integer, avg As Single For i = 1 To 15 a(i) = InputBox("请输入第" & i & "个学生的成绩", "输入成绩", 60) avg = avg + a(i) Print a(i); Next i avg = avg / 15 For i = 1 To 15 If a(i) > avg Then c1 = c1 + 1 If a(i) < 60 Then c2 = c2 + 1 If a(i) >= 90 Then c3 = c3 + 1 Next i Print Print "15人的平均分为:" avg Print "高于平均分的人数为:" c1 Print "小于60的人数为:" c2 Print "大于等于90的人数为:" c3End Sub

    注意事项

    本文(VB程序设计.doc)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开