VB程序的设计教程课后答案

合集下载

vb程序设计基础课后答案

vb程序设计基础课后答案

vb程序设计基础课后答案【篇一:《vb程序设计基础与vba应用》1-8章参考答案】s=txt>p28 习题一二,单选题1,b 2,b 3,d 4,a 5,d 6,b 7,b 8,c 9,d三, 程序设计题5, private sub command1_click()form1.fontname = 宋体form1.print 中文字体宋体end subprivate sub command2_click()form1.fontname = 楷体_gb2312form1.print 中文字体楷体end subprivate sub command3_click()form1.fontname = 仿宋_gb2312form1.print 中文字体仿宋end subp57 习题二一,判断题对:1, 3, 7,10,14错:2,4,5,6,8,9,11,12,13二,单选题1, a 2, c 3, c4, b6, a 7, b 8, c9, b11, c12, d13, b 14, a16, b17, b18, c19, b21, b 22, d 23, a24, c26, a 27, d28, b三,简答题1. (1) 2 * cos(alfa) * sin(alfa/ ( 2 * a )(2) sqr( s*(s–a)*(s–b )*(s - c))(3) ( a*a + b*c*(x +y)) / (a+b)(4) ( 2* 3.14159*r +exp(-5))* log(x) 5, b 10, c 15, d 20, b 25, b(5) 1/( x + 1/(y+1) )(6) k / ( 1 + a * exp(-b*x) )(7) cos(alfa) ^ 2 + atn(alfa)(8) sqr( y^3 + 3 * (a*a+b*b) / (x*x+y*y) )2. (1) (a+b) mod c (2) sqr(abs(x))(3) int(x) + 1(4) int(rnd *101)+2003。

VB语言程序的设计课后编程及上机调试参考答案

VB语言程序的设计课后编程及上机调试参考答案

VB语言程序设计课后编程及上机调试参考答案ex0101Private Sub Label1_Click()Caption = "练习"Command1.Caption = "确定"Label1.FontBold = TrueLabel1.AutoSize = TrueLabel1.Caption = "Visual Basic程序设计教程"End Subex0102Private Sub Command1_Click()Txt.Text = "我有电脑"End SubPrivate Sub Command2_Click()Txt.Text = "我没有电脑"End SubPrivate Sub Command3_Click()Txt.Text = "" '一对双撇号,中间不留空End Subex0104Private Sub Command1_Click()Dim x As Singlex = Val(Text1.Text)Text2.Text = 15 * xEnd Subex0202Private Sub Form_Click()Dim r As Single, s As Singler = 4.6s = 3.14159 * r ^ 2Text1.Text = "圆的面积为" & sEnd Subex0204Private Sub Command1_Click() '"最大化"按钮Form1.WindowState = 2 '最大化End SubPrivate Sub Command2_Click() '"还原"按钮Form1.WindowState = 0 '还原Private Sub Command3_Click() '"最小化"按钮Form1.WindowState = 1 '最小化End Subex0205Private Sub command1_click()Dim x As SingleDim y As Singlex = Val(Text1.Text)y = Val(Text2.Text)Text3.Text = x * x + y * yEnd Subex0206Private Sub command1_click()Dim x As Stringx = Text1.TextText2.Text = Left(x, 1) + Right(x, 1)End Subex0301Private Sub Form_Load()Dim x As Integer, y As IntegerDim a As Integer, b As Integer, c As Integerx = Val(InputBox("请输入一个三位数"))a = Int(x / 100) '求百位数b = Int(x / 10) - a * 10 '求十位数c = x Mod 10 '求个位数 Showy = c * 100 + b * 10 + a '生成倒序数 Print x; "倒序数为:"; y '显示倒序数End Subex0302Private Sub Command1_Click()n = Val(Text1.Text)Randomizex = Int(1 + n * Rnd)Label1.Caption = "第一个随机数" + Str(x)x = Int(1 + n * Rnd)Label2.Caption = "第二个随机数" + Str(x)x = Int(1 + n * Rnd)Label3.Caption = "第三个随机数" + Str(x)ex0303Private Sub Cmd1_Click()Lab1.Visible = TrueLab1.Caption = "您已下达显示命令"End SubPrivate Sub Form_Click()Cmd1.Visible = TrueEnd Subex0304Private Sub Form_KeyPress(KeyAscii As Integer)ShowPrint "输入字符:"; Chr(KeyAscii), "ASCII码为;"; KeyAsciiEnd SubPrivate Sub Form_DblClick()ClsEnd Subex0305Private Sub Form_Load()x = MsgBox("在这里显示提示信息", 4 + 0, "请确认")x = MsgBox("在这里显示" + Chr(13) + "提示信息", 3 + 0, "请确认")x = MsgBox("在这里显示" + Chr(13) + "提示信息", 2 + 16 + 0, "请确认") End Subex0401Private Sub Form_Load()Dim x As Long, s As Stringx = InputBox("输入一个整数(1~35000)")s = "奇数"If x Mod 2 = 0 Then s = "偶数"MsgBox sEnd Subex0402Private Sub Command1_Click()Dim a As Single, b As SingleDim c As Single, d As SingleDim m As Single, n As Single, x As SingleShowa = Val(Text1.Text)b = Val(Text2.Text)c = Val(Text3.Text)d = Val(Text4.Text)If a > b Then '求a、b中的较大数m = aElsem = bEnd IfIf c > d Then '求c、d中的较大数n = cElsen = dEnd IfIf m > n Then '求m、n中的较大数x = mElsex = nEnd IfText5.Text = xEnd Subex0403Private Sub Command1_Click()Dim t As String, p As Stringt = Mid(Text1.Text, 5, 1)Select Case tCase "2"p = "博士生"Case "3"p = "硕士生"Case "4"p = "本科生"Case "5"p = "专科生"Case Elsep = "无效学号"End SelectText2.Text = Left(Text1.Text, 2) + "级" Text3.Text = pEnd Subex0404Private Sub Command1_Click()r = 0: g = 0: b = 0If Check1.Value = 1 Thenr = 255End IfIf Check2.Value = 1 Theng = 255End IfIf Check3.Value = 1 Thenb = 255End IfLabel1.BackColor = RGB(r, g, b)End SubPrivate Sub Command2_Click()EndEnd Subex0405Private Sub Form_Load()LabClk.Caption = "0"LabClk.Alignment = 1LabClk.BorderStyle = 1LabClk.FontSize = 22LabClk.FontName = "黑体"TimClk.Interval = 1000End SubPrivate Sub TimClk_Timer()LabClk.Caption = Val(LabClk.Caption) + 1End Subex0406Private Sub Form_Load()Command1.Enabled = FalseCommand2.Enabled = FalseEnd SubPrivate Sub Text1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Text1.SelLength > 0 ThenCommand1.Enabled = TrueEnd IfEnd SubPrivate Sub Command1_Click()Command1.Enabled = TrueCommand2.Enabled = TrueEnd SubPrivate Sub Command2_Click()Text2.Text = Text1.SelTextCommand1.Enabled = FalseCommand2.Enabled = FalseEnd Subex0501Private Sub Form_Load()Dim k As Integer, s As Integer, t As Integer s = 0For k = 1 To 100 Step 2s = s + kNext kShowPrint "1~100围的奇数和:"; sEnd Subex0502Private Sub Form_Load()Dim s As SingleShows = 0For k = 1 To 200s = s + k / (1 + k * k)Next kPrint Int(s * 10 + 0.5) / 10End Subex0503Private Sub Form_Load()Showk = 2s = 0Do While k < 101s = s + k * (k - 1)k = k + 2LoopPrint sEnd Subex0504Private Sub Form_Load()Dim k As Integer, a As Integer, b As Integer Dim c As Integer, n As IntegerShown = 0Print "三位数的水仙花数是:"For k = 100 To 999a = Int(k / 100)b = Int((k - 100 * a) / 10)c = k Mod 10If a * a * a + b * b * b + c * c * c = k Then Print kn = n + 1End IfNext kPrint "一共有" & n & "个水仙花数"End Subex0505Private Sub Form_Load()ShowFor k = 1000 To 9999If k Mod 78 = 0 Thena = Int(k / 1000)b = Int(k / 100) - 10 * ac = Int(k / 10) - 100 * a - 10 * bd = k Mod 10If a = b And c = d ThenPrint kEnd IfEnd IfNext kEnd Subex0506Private Sub Command1_Click()Dim s As String, y As StringDim x As String, t As Strings = Text1.Text: y = ""For k = 1 To Len(s)x = Mid(s, k, 1)t = UCase(x)If t >= "A" And t <= "Z" Theny = y + xEnd IfNext kText2.Text = yEnd Subex0507Private Sub Command1_click() '"显示"按钮单击事件FontSize = 12ClsFor i = 0 To List1.ListCount - 1 '逐项判断If List1.Selected(i) Then '真时为选定Print List1.List(i)End IfNext iEnd Subex0508Private Sub Form_Load()ShowFor a = 1 To 9For b = 1 To 9For c = 1 To 9For d = 1 To 9x = a * 1000 + b * 100 + c * 10 + dy = b * 1000 + a * 100 + a * 10 + cz = d * 100 + d * 10 + aIf x - y = z ThenPrint "A=" & a & ",B=" & b & ",C=" & c & ",D=" & d End IfNext dNext cNext bNext aEnd Subex0601Private Sub Command1_Click()Dim a(10) As Integer, min As Integer, pos As IntegerRandomizeFor i = 1 To 10a(i) = Int(Rnd * 90 + 10)Print a(i);Next iPrintmin = a(1)pos = 1For k = 2 To 10If a(k) < min Thenmin = a(k)pos = kEnd IfNext kPrint "最小数:"; min, "位置:"; posEnd Subex0602Private Sub Form_Load()Dim a As Variant, b As VariantDim c(8) As Integera = Array(3, 4, 2, 1, 5, 7, 8, 11, 13)b = Array(10, 6, 12, 9, 13, 8, 8, 1, 16)For k = 0 To 8c(k) = a(k) + b(k)Next kShowFor k = 0 To 8Print c(k)Next kEnd Subex0603Private Sub Form_Load()Dim d() As IntegerDim k As Integer, t As Integer, m As Integer Dim h As Integer, n As Integern = Val(InputBox("请输入数组个数n:"))ReDim d(n)ShowPrint "处理前数据 :"RandomizeFor k = 1 To nd(k) = Int((101 * Rnd - 50))Print d(k);Next kPrintm = Int(n / 2)For k = 1 To mh = n - k + 1t = d(h): d(h) = d(k): d(k) = tNext kPrint "处理的结果 :"For k = 1 To nPrint d(k);Next kEnd Subex0604Private Sub Form_Load()Dim a(8, 8) As Integer, n As IntegerDim s As Long, i As Integer, j As IntegerShowRandomizen = 8For i = 1 To nFor j = 1 To nx = Int(90 * Rnd + 10) '产生一个随机数 a(i, j) = xNext jNext is = 0For i = 1 To nFor j = 1 To ns = s + a(i, j)Next jNext iPrint "所有元素之和;"; sPrintFor i = 1 To ns = 0For j = 1 To ns = s + a(i, j)Next jPrint "第"; i; "行元素之和;"; sNext iPrints = 0For i = 1 To ns = s + a(i, i)Next iPrint "主对角线元素之和;"; sPrints = 0For i = 1 To nFor j = 1 To nIf i = 1 Or i = n Or j = 1 Or j = n Thens = s + a(i, j)End IfNext jNext iPrint "所有靠边元素之和;"; sEnd Subex0605Option Base 1Private Sub Form_Load()Dim a(8, 8) As Integer, n As IntegerDim max As Integer, r As Integer, c As IntegerShowRandomizen = 8For i = 1 To nFor j = 1 To nx = Int(900 * Rnd + 100) '产生一个随机数 a(i, j) = xPrint x;Next jPrintNext imax = 0: r = 1: c = 1PrintFor i = 1 To nFor j = 1 To nIf a(i, j) > max Then '判断有无更大数 max = a(i, j): r = i: c = jEnd IfNext j, iPrint "最大值为:"; maxPrint "位于行:"; r, "列:"; cEnd Subex0606Dim n As IntegerPrivate Sub Cmd1_Click()n = n + 1If n = 3 Then n = 0Opt1(n).Value = TrueEnd SubPrivate Sub Form_Load()End Subex0607Private Sub Form_Load()Dim a(20) As IntegerRandomizea(1) = Int(10 + 90 * Rnd) k = 1Do While k < 20x = Int(10 + 90 * Rnd) f = 0For j = 1 To kIf x = a(j) Then f = 1Exit ForEnd IfNext jIf f = 0 Thenk = k + 1a(k) = xEnd IfLoopShowFor j = 1 To 20Print a(j)Next jEnd Subex0701Private Sub Form_Click()Dim s As Longs = 0For k = 1 To 10s = s + jc(k)Next kPrint sEnd SubFunction jc(n) As LongDim t As Longt = 1For k = 1 To nt = t * kNext kEnd Functionex0702Private Sub Form_Load()Dim a As Single, b As Single, c As SingleDim d As Single, m As Single, n As SingleShowa = Val(InputBox("输入第1个数"))b = Val(InputBox("输入第2个数"))c = Val(InputBox("输入第3个数"))d = Val(InputBox("输入第4个数"))m = max(a, b) '求a、b中的较大数 n = max(c, d) '求c、d中的较大数 Print "最大数为:" & max(m, n) '求m、n中的较大数End SubFunction max(x, y) As SingleIf x > y Thenmax = xElsemax = yEnd IfEnd Functionex0703Private Sub Command1_Click()Dim d(5) As Single, m As SingleFor k = 0 To 5d(k) = Val(Text1(k).Text)Next kCall Max(d(0), d(1), d(2), m)Call Max(m, d(3), d(4), m)Call Max(m, m, d(5), m)Text2.Text = mEnd Subex0704Private Sub Form_Load()Dim x As LongShowx = Val(InputBox("输入一个数"))Print x; "的位数为:"; fnws(x)End SubFunction fnws(x As Long) As IntegerDim n As Integern = 1Do While x \ 10 > 0n = n + 1x = x \ 10Loopfnws = nEnd Functionex0705Private Sub C1_Click()Form1.HideEnd Subex0705APrivate Sub C2_Click()Form1.ShowEnd Subex0706Dim n As IntegerPrivate Sub Command1_Click()usern = Trim(Text1.Text)passw = Trim(Text2.Text)If usern = "username" And passw = "password" Then Form1.HideForm2.ShowElsen = n + 1Text1.SetFocusIf n = 3 ThenForm1.HideForm3.ShowEnd IfEnd IfText1.Text = ""Text2.Text = ""End Subex0706APrivate Sub Command1_Click()Form2.HideForm1.ShowEnd Subex0906BPrivate Sub Command1_Click()Unload Form1Unload Form2Unload Form3EndEnd Subex0802Private Sub Form_Load()Dim i As Integer, j As IntegerShowFor i = 1 To 12Print String(20 - i, 32); '输出当前行左边的空格,分号表示下一输出项紧接输出 For j = 1 To 2 * i - 1 '输出2*i-1个字符If j <= i Then '按左、右两边指定输出字符k = j '左边输出的字符Elsek = 2 * i - j '右边输出的字符End IfIf k > 9 Then k = k + 7 '字母的ASCII码比数字大7Print Chr(k + 48); '以字符格式输出Next jPrint '换行Next iEnd Subex0803Dim t As Single, f As IntegerPrivate Sub Command1_Click() '“产生原稿文”按钮Randomizes = ""For k = 1 To 30x = Chr(Int(Rnd * 26) + 97) '随机产生小写字母s = s + xNext kText1.Text = s '显示在文本框中Text2.Text = ""Text2.Locked = False '允许录入Text2.SetFocus '设置焦点Text3.Text = ""Text4.Text = ""f = 0 '第1次按键标记,0表示未按键End SubPrivate Sub Command2_Click() '“结束”按钮EndEnd SubPrivate Sub Text2_KeyUp(KeyCode As Integer, Shift As Integer)Dim c As Integer, k As IntegerIf f = 0 Then '第1次按键时,开始计时t = Timer '用t保存第1次按键的时间 f = 1 '1表示已按键和进入录入过程 End IfIf Len(Text2.Text) < 30 ThenText3.Text = Round(Timer - t, 1) & "秒" '显示用户当前所用时间Elsec = 0For k = 1 To 30 '统计录入正确的字母个数If Mid(Text1.Text, k, 1) = Mid(Text2.Text, k, 1) Thenc = c + 1End IfNext kText2.Locked = True '禁止录入Text4.Text = Round(c / 30 * 100, 2) & "%" '显示准确率End IfEnd Subex0901Private Sub Command1_Click()Open "静夜思.txt" For Input As #1Do While Not EOF(1) '文件未结束时,循环Input #1, xList1.AddItem xLoopClose #1End Subex0902Dim d(1 To 20) As IntegerPrivate Sub Command1_Click() '"产生随机数"For i = 1 To 20d(i) = Int(1 + 99 * Rnd)List1.AddItem d(i)Next iEnd SubPrivate Sub Command2_Click() '"保存"Open "MyFile4.txt" For Output As #1For i = 1 To 20Write #1, d(i)Next iClose #1End SubPrivate Sub Command3_Click() '"读出"Open "MyFile4.txt" For Input As #1Do While Not EOF(1)Input #1, xList2.AddItem xLoopClose #1End SubPrivate Sub Command4_Click() '"结束"EndEnd Subex0903Private Sub Form_Load()ShowFor k = 1 To 6fn = "..\第7章\ex070" & k & ".vbp"If Dir(fn) = "" ThenPrint Mid(fn, 4) & "未编写!!"ElsePrint Mid(fn, 4) & "已编写!!"End IfNext kEnd Subex0904Private Sub Form_Load()chedir = "C:\Documents and Settings\Lin\My Documents\fsodir" If Dir(chedir, 16) = "" ThenMkDir chedirEnd Ifchefile = "C:\Windows\notepad.exe"If Dir(chefile) <> "" ThenFileCopy chefile, chedir & "\mynotepad.exe"End IfMsgBox "操作完毕!"End Subex1002Private Sub A1_Click()Label1.ForeColor = vbRedEnd SubPrivate Sub A2_Click()Label1.ForeColor = vbBlueEnd SubPrivate Sub A3_Click()Label1.ForeColor = vbGreenEnd SubPrivate Sub Label1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 ThenPopupMenu mun0End IfEnd Subex1003Private Sub Command1_Click()CommonDialog1.DialogTitle = "选择文件"CommonDialog1.Filter = "文本文件|*.txt"CommonDialog1.InitDir = "C:\"CommonDialog1.ShowOpenText1.Text = CommonDialog1.FileNameEnd SubPrivate Sub Command2_Click()Unload MeEndEnd Subex1101Private Sub calzc(x As Integer)Text2.Text = Round(2 * 3.14159 * x, 2)End SubPrivate Sub HV_Scroll()Dim r As Integerr = HV.ValueText1.Text = "=" & rCall calzc(r)End SubPrivate Sub Form_Load()HV.Max = 300End Subex1102Private Sub Form_Load()For k = 0 To 3Image1(k).Stretch = TrueImage1(k).Picture = LoadPicture("箭头" & k + 1 & ".bmp") Next kEnd SubPrivate Sub Image1_Click(Index As Integer)Picture1.Font.Size = 20Picture1.ClsSelect Case IndexCase 0Picture1.Print "箭头向上"Case 1Picture1.Print "箭头向左"Case 2Picture1.Print "箭头向右"Case 3Picture1.Print "箭头向下"End SelectEnd Sub。

《Visual Basic程序设计教程》习题参考答案

《Visual Basic程序设计教程》习题参考答案

第1章习题一、选择题1. B2. A3. B4. A二、填空题1. 事件驱动或消息驱动2. 工程资源管理器、窗体三、问答题1. 11个菜单项。

文件菜单包括新建工程、打开工程、添加工程、移除工程、保存工程、工程另存为、保存窗体文件、窗体文件另存为、打印、打印设置、生成可执行文件等命令项;编辑菜单(命令项略,以下同)、视图菜单、工程菜单、格式菜单、调试菜单、运行菜单、查询菜单、图表菜单、工具菜单、外接程序菜单、窗口菜单、帮助菜单。

2. 可以自行定义。

标准工具栏中有添加工程、添加窗体、菜单编辑器、打开工程、保存工程、剪切、复制、粘贴、查找、撤销、恢复、启动、中断、结束、工程资源管理器、属性窗口、窗体布局窗口、对象浏览器、工具箱、数据视图窗口等按钮。

四、编程题(略)第2章习题一、选择题1. A二、练习题1. S1. 把x赋值给同类型变量t;S2. 把y赋值给x;S3. 把t赋值给y。

2. S1. 输入a、b、c;S2. 如果a<b,则交换a与b的数据;S3. 如果a<c,则交换a与c的数据;S4. 如果b<c,则交换b与c的数据;S5. 输出a、b、c。

3. S1. 输入整数N;S2. 给整数K赋值2;S3. 如果K大于N-1,则转S6;S4.如果N除以K 的余数为0,则转S7;S5. K加1再赋值给K,转S3.;S6. 如果K大于N-1,则N为素数;否则N不是素数。

4. S1. 输入整数N;S2. 将N赋值给K;S3. 给整数nx赋值0;S4. 计算nx乘以10加K除以10的余数,再赋值给nx;S5. 计算K除以10的整数商,赋值给K;S6. 如果K>0,则转S4;否则,转S7;S7. 如果N=nx,则N为回文数,否则N不是回文数。

5.6.第3章习题一、选择题1. D2. C3. A4. B5. D6. A7. B8. D9. B 10. D 11. A . 12. C 13. C 14. C二、填空题1. 标题、引用2. ②④⑤3. 64. GotFocus、Resize5. AddItem、Clear6. Label,CommandButton,OptionButton,CheckBox,Frame、TextBox,ListBox,ComboBox7. PictureBox,Frame8. OptionButton,CheckBox,HScrollBar,VScrollBar、OptionButton、CheckBox,HScrollBar,VScrollBar三、问答题1. 答:对象的只读属性的属性值(如名称属性)只能在设计界面时在属性窗口进行设置;非运行属性的属性值则既可在设计界面时在属性窗口进行设置,也可通过程序代码进行设置与修改。

vb程序设计教程参考答案

vb程序设计教程参考答案

1、B2、A3、B4、答:属性:红色、充满氢气;事件:松手、针刺;方法:飞走、爆破。

5、答:事件是指对象能够识别并作出反映的外部刺激。

事件驱动又称消息驱动,事件驱动程序设计是指每个事件对应有相应的程序代码,仅在该事件发生时,该段代码才会被执行。

事件发生的顺序决定了代码执行的顺序,因此每次执行应用程序时,程序代码并不是按照程序编写的顺序来执行的。

6、答:VB是一个包括界面设计、程序编码、调试、编译并创建可执行程序的集成开发环境。

VB的集成开发环境的主界面中包含:标题栏、菜单栏、工具栏、控件箱、工程资源管理器、属性窗口、“窗体布局”窗口、窗体设计器、代码编辑器等元素组成。

7、答: VB菜单条通常情况下有:文件、编辑、视图、工程、格式、调试、运行、查询、图表、工具、外接程序、窗口、帮助等13项菜单项组成。

8、答:工具栏可自行定义。

标准工具栏中通常情况下有:添加标准exe工程、添加窗体、菜单编辑器、打开工程、保存工程、剪切、复制、粘贴、查找、撤消、重复、启动、中断、结束、工程资源管理器、属性窗口、窗体布局窗口、对象浏览器、工具箱、数据视图窗口、可视化元件管理器等按钮组成。

9、答:创建VB应用程序的一般步骤为:创建界面;设置窗体和控件属性;编写代码;保存工程;运行并调试程序;检查并排除错误;创建可执行文件。

10、Private Sub Command1_Click()Label1.Caption = "I love vb,I hate vb"End Sub1、2、3、S1 输入待判断自然数: N(N>=2);S2 i=2;S3 判断i是否小于N-1,若不是转S5S4 判断N除以i的余数是否为0,如果不是则i=i+1转S3;S5 判断i是否等于N,若是输出“是素数”,否则输出“不是素数”。

4、S1 输入待判断自然数: N;S2 将N转换成字符S,计算S的长度K;S3 i=1;S4 判断i是否小于K-1,若不是转S6;S5 判断S中的第i位和第K-i+1位是否相等,如果是则i=i+1转S4,如果不是则转S6;S6 判断i是否是中间位数,若是输出“是回文数”,否则输出“不是回文数”。

vb程序设计教程习题答案

vb程序设计教程习题答案

vb程序设计教程习题答案VB程序设计教程习题答案VB程序设计是一门广泛应用于软件开发领域的编程语言,它具有易学易用的特点,被广大程序员所喜爱。

在学习VB程序设计的过程中,习题是一个非常重要的环节,通过解答习题可以帮助我们巩固所学的知识,提高编程能力。

下面我将给出一些VB程序设计教程习题的答案,希望对初学者有所帮助。

1. 编写一个VB程序,实现计算两个数的和并输出结果的功能。

答案:```Public Class Form1Private Sub Button1_Click(sender As Object, e As EventArgs) HandlesButton1.ClickDim num1 As IntegerDim num2 As IntegerDim sum As Integernum1 = Integer.Parse(TextBox1.Text)num2 = Integer.Parse(TextBox2.Text)sum = num1 + num2MessageBox.Show("两个数的和为:" & sum)End SubEnd Class```2. 编写一个VB程序,实现判断一个数是奇数还是偶数的功能。

答案:```Public Class Form1Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickDim num As Integernum = Integer.Parse(TextBox1.Text)If num Mod 2 = 0 ThenMessageBox.Show("这个数是偶数")ElseMessageBox.Show("这个数是奇数")End IfEnd SubEnd Class```3. 编写一个VB程序,实现计算一个数的阶乘的功能。

VB程序设计教程 习题解答

VB程序设计教程 习题解答

《VB程序设计教程》(第4版)习题解答单元一巩固与提高答案一、选择题1. Visual Basic 6.0分为3种版本,不属于这3种版本的是A)学习版B)专业版C)企业版D)业余版【答】D。

2. 下列方法中不能退出Visual Basic的是A)按Alt+Q组合键B)按下Alt+F组合键,然后按Esc键C)按F10键,然后按F键,再按X键D)打开“文件”菜单→“退出”命令【答】B。

3. Visual Basic集成的主窗口中不包括A)属性窗口B)标题栏C)菜单栏D)工具栏【答】A。

4. 下列操作可以打开立即窗口的是A)Ctrl+D B)Ctrl+F C)Ctrl+G D)Ctrl+E【答】C。

二、填空题1. 与传统的程序设计语言相比,Visual Basic最突出的特点是____。

【答】事件驱动编程机制。

2. 如果不使用鼠标,用键盘打开菜单和执行菜单命令,第一步应按____键。

【答】功能键F10或Alt键。

3. 建立一个新的标准模块,应该选择____菜单下的“添加模块”命令。

【答】“工程”菜单。

三、思考题1. 简述Visual Basic的特点。

【答】与一般的程序设计语言相比,VB具有以下特点:(1) 可视化的设计平台;(2) 面向对象的设计方法;(3) 事件驱动的编程机制;(4) 结构化的设计语言;(5) 充分利用Windows资源;(6) 开放的数据库功能与网络支持。

2. 简述Visual Basic集成开发环境的组成。

【答】VB 6.0集成开发环境除了具有标准Windows环境的标题栏、菜单栏、工具栏外,还有工具箱、属性窗口、工程管理器窗口、窗体设计器、立即窗口、窗体布局窗口等有用的开发工具。

(1) 标题栏和菜单栏:标题栏中显示的有窗体控制菜单图标、当前激活的工程名称、当前工作模式以及最小化、最大化∕还原、关闭按钮。

菜单栏中显示了“文件”、“编辑”、“视图”、“工程”、“格式”等菜单项,其中包含了VB编程的常用命令。

VB程序设计课后习题答案

VB课后习题解答第一、二章:1、简述VB6.0的主要特点答:方便、直观的可视化设计工具;面向对象程序设计方法;事件驱动的编程机制;易学易用的应用程序集成开发环境;结构化程序设计语言;完备的联机帮助功能;强大的多媒体、数据库和网络功能。

2、当正常安装VB6.0后,误把Windows子目录删除。

当重新安装Windows后,是否需要再次安装VB6.0?答:要重新安装的。

因为安装VB6.0时,有些VB程序被系统自动安装在Windows目录下,所以一旦删除Windows子目录,就必须重新安装VB6.0。

3、Visual Basic 6.0分为学习版、专业版和企业版,如何知道所安装的是哪个版本?答:在VB6.0的启动界面上,能显示对应的版本。

4、叙述建立一个完整应用程序的过程答:首先建立用户界面的控件对象(简称控件);然后对控件属性进行设置;再对控件事件过程及编程;保存应用程序;程序调试和运行。

5、Visual Basic 6.0有多种类型窗口,若要在设计时看到代码窗口,应怎样操作?答:选择“视图”—>“代码窗口”命令或单击“工程资源管理器”窗口中的“查看代码”按钮。

6、当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。

试问该工程涉及多少个要保存的文件?若要保存该工程的所有文件,应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息?答:涉及两个文件要保存。

先保存窗体文件(.frm),再保存工程文件(.vbp)。

若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求先保存窗体文件。

7、保存文件时,若不改变目录名,则系统默认的目录是什么?答:系统默认的目录是VB988、安装Visual Basic 6.0后,帮助系统是否也已安装?答:没有。

VB6.0的帮助系统在两张光盘上,即MSDN Library,其中还包含了VC、VFP等其他语言的帮助系统。

9、如何使用Visual Basic 6.0的帮助系统?答:最方便的方法是选定要帮助的内容,然后按F1功能键,这时系统打开MSDN Library查阅器,直接显示与选定内容有关的帮助信息。

VB教程课后习题的答案及解析

=第二章标准控件和属性1.下列可以激活属性窗口的操作是( D )A)用鼠标双击窗体的任何部位 B)执行‘工程’菜单中的‘属性窗口’命令 C)按Ctrl+F4键 D)按F4键2.确定一个控件在窗体上的位置的属性是( D )A)Width或Height B)Width和Height C)Top或Left D)Top和Left3.确定一个窗体或控件的大小的属性是( B )A)Width或Height B)Width和Height C)Top或Left D)Top和Left4.在Visual Basic中,所有标准控件都具有的属性是( B )。

【2013年9月考试真题】A) Caption B) Name C) Text D) Value参考答案:B【解析】VB标准控件中不同控件具有不同属性,有的相同有的不同,但都具有Name属性。

故选B。

5.为了让计时器控件每隔10秒产生了一个Timer事件,应把Interval属性设置为( B )A) 1000 B) 10000 C) 10 D) 1006.下面关于单选按钮和复选框的叙述中正确的是( D )A) 单选按钮被选中则它的Value属性为True;复选框被选中则它的Value属性为2B) 单选按钮被选中则它的Value属性为True;复选框被选中则它的Value属性为TrueC) 单选按钮被选中则它的Value属性为1;复选框被选中则它的Value属性为1D) 单选按钮被选中则它的Value属性为True;复选框被选中则它的Value属性为17.将文本框的ScrollBar设置为2,文本框中却没有垂直滚动条,其原因为( B )A) 文本框的Locked属性值为True B) 文本框的MultiLine属性值为FalseC) 文本框的MultiLine属性值为True D) 文本框中没有内容第三章简单程序设计语句1.在面向对象的程序设计中,可被对象识别的动作称为( B )。

《VB语言程序设计》习题答案

《VB语言程序设计》习题参考答案第1章习题一、单选题1.D 2.B 3.C 4.A 5.C 6. A 7.A 8.B 9.C 10.(1)A (2)B二、多选题1.ACDE 2.BCDE 3.CD 4. CE三、填空题1.事件驱动 2.解释,编译 3.设计,运行,中断4. 属性,方法,事件5. Command2_Click6. 中央,代码7.MyForm.frm 8. (1)Cmd1_Click() (2)Print "VB语言程序设计"编程及上机调试1. 按要求设置窗体属性2.在窗体上建立一个标签Label1。

程序代码如下:Private Sub Form_Click()Label1.Caption = "你单击了窗体"End SubPrivate Sub Form_DblClick()Label1.Caption = "你双击了窗体"End Sub3.在窗体上建立两个文本框Text1(输入数)、Text2(输出数)和一个命令按钮Command1。

两个文本框的Text属性均为空。

Private Sub Command1_Click()Dim x As Singlex = Val(Text1.Text)Text2.Text = 15 * xEnd Sub第2章习题一、单选题1.①D,②D 2.①A,②C 3.A 4.B 5.B 6.B 7.C 8.D 9.B 10.B 11.A 12.A 13.B 14.A 15.B 16.A 17.B二、多选题1.BD 2.CD 3.AC 4. AD三、填空题1.(1) Sin(50*3.14159/180) (2) (2+x*y)/(2–y*y)(3) a*a–3*a*b/(3+a) (4) x^(3/8)+Sqr(y*y+4*a*a/(x+y^3))2.Int(50+6*Rnd)3.(1)138 (2)3 (3)214 (4) "inchina" (5)70 (6) "45"(7)04. "系统管理数据库"编程及上机调试1~3题:按要求完成操作练习。

VB程序设计教材习题及参考解答

第 1 章概述一、叙述题1.简述VB具有哪些特点。

(1)面向对象的可视化设计工具(2)事件驱动的编程机制(3)易学易用的应用程序集成开发环境(4)结构化的程序设计语言(5)充分利用Windows资源(6)开放的数据库功能与网络支持2.简述事件驱动的程序设计原理。

解答:VB程序的运行没有固定的顺序,它通过事件来激活某个对象,随着该对象的活动,会引发新的事件,这个事件又可能使另一个对象激活,对象之间就是以这种方式联系在一起的。

每个事件都可以通过一段程序(称为“事件过程”)来响应,在事件发生时,系统将自动执行相应的事件过程,用以实现指定的操作并达到运算、处理的目的。

为不同对象响应不同事件编写的事件过程构成了一个完整的应用程序,这就是VB事件驱动的程序设计原理。

3.VB的集成开发环境由哪些元素组成?解答:标题栏、菜单栏、工具栏、工具箱、窗体窗口、代码窗口、工程资源管理器窗口、属性窗口及窗体布局窗口等。

4.VB集成开发环境的工具栏能否自行定义?标准工具栏中包含一些什么按钮?解答:VB集成开发环境的工具栏可以自定义,方法是:用鼠标右击标准工具栏的任意位置,可以打开或关闭其余工具栏。

标准工具栏中包含的按钮有:添加Standard EXE工程、添加窗体、菜单编辑器、打开工程、保存工程、剪切、复制、粘贴、查找、撤销、重复、启动、中断、结束、工程资源管理器、属性窗口、窗体布局窗口、对象浏览器、工具箱、数据视图窗口、可视组件管理器及窗体位置与大小等。

5.当创建只有一个窗体的应用程序后,该工程涉及多少个要保存的文件?若要保存该工程中的所有文件,应先保存什么文件?后保存什么文件?解答:涉及两个文件要保存。

先保存窗体文件(.frm),再保存工程文件(.vbp)。

6.简述用VB开发应用程序的一般步骤。

(1)创建应用程序界面(2)设置界面上各个对象的属性(3)编写对象响应事件的程序代码(4)保存工程(5)运行和调试应用程序(6)创建可执行程序二、单选题1.D VB是一种面向对象的可视化程序设计语言。

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

课后习题解答第一、二章:1、简述VB6.0的主要特点答:方便、直观的可视化设计工具;面向对象程序设计方法;事件驱动的编程机制;易学易用的应用程序集成开发环境;结构化程序设计语言;完备的联机帮助功能;强大的多媒体、数据库和网络功能。

2、当正常安装VB6.0后,误把Windows子目录删除。

当重新安装Windows后,是否需要再次安装VB6.0?答:要重新安装的。

因为安装VB6.0时,有些VB程序被系统自动安装在Windows目录下,所以一旦删除Windows子目录,就必须重新安装VB6.0。

3、Visual Basic 6.0分为学习版、专业版和企业版,如何知道所安装的是哪个版本?答:在VB6.0的启动界面上,能显示对应的版本。

4、叙述建立一个完整应用程序的过程答:首先建立用户界面的控件对象(简称控件);然后对控件属性进行设置;再对控件事件过程及编程;保存应用程序;程序调试和运行。

5、Visual Basic 6.0有多种类型窗口,若要在设计时看到代码窗口,应怎样操作?答:选择“视图”—>“代码窗口”命令或单击“工程资源管理器”窗口中的“查看代码”按钮。

6、当建立好一个简单的应用程序后,假定该工程仅有一个窗体模块。

试问该工程涉及多少个要保存的文件?若要保存该工程的所有文件,应先保存什么文件?再保存什么文件?若不这样做,系统会出现什么信息?答:涉及两个文件要保存。

先保存窗体文件(.frm),再保存工程文件(.vbp)。

若先保存工程文件,系统也会先弹出“文件另存为”对话框,要求先保存窗体文件。

7、保存文件时,若不改变目录名,则系统默认的目录是什么?答:系统默认的目录是VB988、安装Visual Basic 6.0后,帮助系统是否也已安装?答:没有。

VB6.0的帮助系统在两光盘上,即MSDN Library,其中还包含了VC、VFP等其他语言的帮助系统。

9、如何使用Visual Basic 6.0的帮助系统?答:最方便的方法是选定要帮助的容,然后按F1功能键,这时系统打开MSDN Library查阅器,直接显示与选定容有关的帮助信息。

10、什么是类?什么是对象?什么是事件过程?答:类是同类对象集合的抽象,它规定了这些对象的公共属性和方法;对象是类的一个实例,对象包含三个要素:属性、方法和事件。

当在对象上发生了事件后,应用程序就要处理这个事件,而处理的步骤就是事件过程。

11、属性和方法的区别是什么?答:属性是对象的特征,方法是对象的行为。

前者有值,可以被赋值或引用;后者没有值,表示能够执行的操作。

12、当标签边框的大小由Caption属性的值进行扩展或缩小时,应对该控件的什么属性进行何种设置?答:将该控件的Autosize属性值设置为true。

13、在VB6.0中,命令按钮的显示形式可以有标准的和图形的两种选择,它们通过什么属性来设置?若选择图形的,则通过什么属性来装入图形?若已在规定的属性里装入了某个图形文件,但该命令按钮还是不能显示该图形,而显示的是Caption属性设置的文字,应怎样修改?答:命令按钮的显示形式通过将Style属性值设置为Graphical来实现。

通过Picture属性来装入图形。

不能显示图形是因为Style属性值被设置为Standard,只要将其改为Graphical,并且将Caption 的值设置为空即可。

14、如果文本框要显示多行文字,应对什么属性设置为何值?答:将MultiLine属性的值设置为True。

15、标签和文本框的区别是什么?答:在程序运行时,标签只能显示文字,不能输入文字,显示文字通过对Caption属性赋值来实现;而文本框既能显示文字,也能输入文字,这通过text属性来实现。

16、要让文本框获得焦点的方法是什么?答:SetFocus方法。

17、简述文本框的Change和KeyPress事件的区别答:相同点是当在文本框输入容时,同时激发上述两个事件;不同点是Keypress事件可通过参数KeyAscii 返回所按键的编码值,可依此判断数据输入的正确性或数据输入结束与否,因而该事件使用较多;change 事件还可以发生在程序改变文本框的text属性时。

18、当某文本框输入数据后(按了回车键),经判断后认为是数据输入错,应怎样删除原来文本框中的数据?答:假定文本框的名称为Text1,则事件过程如下:Private Sub Text1_KeyPress(KeyAscii As Integer )if KeyAscii = 13 thenif 出错条件判断成立 thenText1=””end if……end ifend sub注意:删除刚输入的字符,通过KeyAscii=0语句实现;焦点定位文本框对象采用SetFocus方法。

19、在程序运行前,对某些控件设置属性值,除了在窗体中直接设置外,还可以通过代码设置,这些代码一般存放在什么事件中?如果要将命令按钮定位在窗体的中央,试写出事件过程代码。

答:这些代码一般放在Forem_Load()事件过程中。

将窗体定位在屏幕的中央,只能在属性窗口中将Form1窗口的StartUpPosition属性值设置为2(表示屏幕中心),该属性不能在运行时设置。

要将按钮定位在窗体的中央,事件过程如下:Private sub Form_Load()Command1.left= Form1.scaleWidth\2-command1.Width\2Command1.Top = Form1.ScaleHeight \ 2 – command1.Height \2End Sub其中,ScaleWidth、ScaleHeight表示窗体的相对宽度和高度。

20、VB6.0提供的大量图形文件存放在哪个目录?若你的计算机上没有安装,应怎样安装这些图形文件?答:存放在Graphics目录下。

在VB6.0的安装盘上可以找到Graphics子目录,将其复制到硬盘上的VB 目录下。

第3章:略(在书本上)1、合法的有:(1)单精度(3)单精度(4)双精度(6)整形(7)字符型(9)日期型(10)双精度(12)八进制表示(14)十六进制表示(15)逻辑型(18)单精度数2、合法变量有:(1),(2),(6),(9),(10),(11)3、算术表达式写成VB表达式(1)| x+y | + z5àabs(x+y) +z^5 (2)(a+xy)6à(1 + x * y )^ 6(3)à(10*x + sqr(3*y) ) / (x * y ) (4)à( -b+sqr(b^2-4*a*c) )/2/a(5)à 1 / (1/r1+1/r2+1/r3)(6)àsin(45*3.14/180)+ ( exp(10)+ log(10) )/ sqr( x+y+1)4、根据条件写出相应的VB表达式(1) chr( int ( Rnd * 10 +67 ) (2) int ( Rnd * 101 +100 )(3) x * y >0 (4) x%5=0 or x % 7 =0(5) (x mod 10) 10 + x /10 (6)Round(123.2389*100)/100(7) Ucase (c ) >=”A” and Ucase(c )<=”Z” or Lcase (c ) >=”a” and Lcase(c )<=”z”(8) Mid ( s, 5, 6 ) (9) x >=10 and x <20(10) ( x < z and y >z ) or ( x >z and y < z)(11) x>z and y > z5、下出下列表达式的值:(1) 123+23 mod 10 \ 7 +Asc(“A”) à188, (2)100+”100” & 100 à200100(3) Int ( 68.555*100+0.5)/100 à68.56(4)已知A$=“87654321”,求表达式Val(Left$(A$,4)+ Mid(A,4,2))的值à876554(5)DateAdd(“m”,1,#1/30/2000#) à2000-2-29(6) Len(”VB程序设计”)à6 6、略第4章:VB控制语句1、结构化程序设计的三种基本结构是什么?答:顺序结构、选择结构和循环结构。

2、指出下列赋值语句中的错误(包括运行时错误):(1)10x=sin(x)+y ‘10x是非法变量名(2)c=3+sqr(-3) ‘待求平方根的数为负数(3)c+x+y=c*y ‘赋值符左边是表达式了(4)x=sin(x)/(20 mod 2) ‘分母为零了3、Msgbox函数与InputBox函数之间有什么区别?各自获得什么值?答:两个函数共同之处都显示对话框。

区别:Inputbox函数等待用户在文本框中输入数据,获得的是输入的字符串数据;Msgbox函数等待用户按一按钮,获得的是表示按钮的整数值,以决定程序的流向。

4、要使单精度变量x,y,z分别保留1位、2位、3位小数,并在窗体显示,应使用什么函数?如何编写对应的print方法?答:使用format函数,具体如下:print Format(x,”0.0” )print Format ( y , “ 0.00 “ ) print Format ( z , “ 0.000 “ )5、 语句 if < 表达式> then …… 中的表达式可以是算术、字符、关系、逻辑表达式中的哪些?答:算术、关系、逻辑表达式 6、 指出下列语句中的错误:(1) if x ≥y then print x ‘表达式书写错误,应写成:x>=y (2) if 10<x<20 then x=x+20 ‘表达式书写错,应是:10<x and x<207、按照下列条件,写出相应的条件语句(1)字符型变量中第三个字符是“C ”时,利用Msgbox 显示“yes ”,否则显示“No ” if Mid ( c , 3, 1 ) = “C” then Msgbox “yes” else Msgbox “No” (2)利用if 语句、select case 语句两种方法计算分段函数:答:private sub command1.click() x=val( text1) if x > 20 theny = x * x + 3 * x +2 elseif x>=10 theny = sqr ( 3 * x ) – 2 elseif x>0 theny= 1 / x + Abs ( x ) end if print y end sub(3)利用if 语句和iif 函数两种方法求三个数x,y,z 中的最大值并存入变量max 中。

相关文档
最新文档