《第4章 VB控制结构》习题
vb控制结构综合练习

A) 0 B) 1 C) ””D) False 控制结构4.设a=6,则执行x=IIf(a>5,-1,0)后,x的值一、选择题为________。
种基本结构1.VB的3种结构化程序设计的3A) 5 B) 6 C) 0 D) –1是________。
5.下面程序段的运行结果是________。
A) 选择结构、过程结构、顺序结构cj=85递归结构、选择结构、顺序结构B)晉挠??吠敨?橤尽屁过程结构、转向结构、递归结构C)晉挠??吠敨?橤尽层D) 选择结构、顺序结构、循环结构晉挠??吠敨?橤尽屃2.段函数表用If语句示分晉挠??吠敨?橤尽屄3?1x?x?1?x)(f表________ ,以下?311x?x?晉挠??吠敨?橤尽居?示方法不正确。
Print dj=;djA) f=x^3+1A) dj=B B) dj=C C) dj=D D) dj=E1 If x>=1 Then f=s^3--B) If x>=1 Then f=x^31If x<1 Then f=x^3+1-1C) If x>=1 Then f=x^3f=x^3+16.下列语句正确的是________。
D) If x<1 Then f=x^3+1 Else A) If K<3*N And k>N Then N=k^3F=x^31-B) If K<3*N And k>N Then N=k3。
执行下面的程序段后显示结果是3.________ C) If K<3*N : k>N Then N=k^3 Private SubForm_Click() D) If K<3*N And k>N Then N=k**3 Dim m ,则下列L=True,z=6.0,,7.设X=2.0y=8.0是的值为True中达BasicVisual 表式If m Then Print m Else Print m+1 。
Chap.4 VB基本控制结构

注释
三、注释语句 为了提高程序的可读性,通常在程序的适当位置加 上必要的注释。VB中的注释语句的前缀是一个单撇号' 或保留字Rem。 1.格式 ' | Rem < 注释内容 > 2.说明 (1)Rem与注释内容之间至少要有一个空格。 (2)注释语句是非执行语句,不参加编译和执行。 (3)注释语句可放在过程、模块的开头,也可放在 执行语句的后面。 (4)任何字符(包括汉字)都可以放在注释行中作 为注释内容。
exit
二、Exit语句 1.作用 Exit语句用于退出 Do...Loop、For...Next、Function或Sub代码块 2.对应的使用格式 Exit Do、Exit For、Exit Function、Exit Sub 分别表示退出 Do循环、For循环、函数、子过程
End
三、End语句 1.格式 End 2.作用 结束一个程序的执行。可以放在任何事件过程中。 VB的End语句还有多种形式,用于结束一个过程或 程序块,其他形式有: End If End With End Type End Select End Sub End Function
循环嵌套
4.3.4 循环嵌套
一、定义 在一个循环结构中又完整地包含另一个循环结构, 称为循环的嵌套。 While语句、For-Next语句和Do-Loop语句均允许嵌 套,也可以互相嵌套。
二、说明 1.内循环变量与外循环变量不能同名。 2.循环语句嵌套时,必须保证结构的完整。即外循环 必须完全包含内循环,不能交叉。 3.不能从循环体外转向循环体内,也不能从外循环转 向内循环,反之则可以。 4.外循环变量每变化一次,内循环变量执行若干次。
4.3.1 While-Wend 循环语句
计算机VB第4章课后参考答案

第4章参考答案(P102)一、单选题1、A2、D3、B4、D二、填空题1、frame(框架)2、x1^2+y1^2 <=93、value4、该框架三、程序阅读题s=4s=5.2s=8实验:1.Private Sub Command1_Click()Dim x As Singlex = V al(InputBox("请输入X"))If x < -2 ThenY = (3 * x * x - x - 1) / xElseIf x < 1 ThenY = Sin(x) + 2 ^ xElseY = (Sqr(x - 1) + Log(x) / Log(10)) / 2End IfLabel1.Caption = "你输入的X是" + Str(x) + ",得到的Y值是" + Str(Y) End Sub2.Private Sub Form_Click()Dim a As Integer, b As Integer, c As Integera = V al(InputBox("请输入第一个数a"))b = V al(InputBox("请输入第一个数b"))c = V al(InputBox("请输入第一个数c"))Max = aIf b > Max Then Max = bIf c > Max Then Max = cPrint MaxEnd Sub3.Option ExplicitPrivate Sub Form_Load()Form1.Caption = "个人所得税"Label1.Caption = "薪金总额"Text1.Text = ""Label2.Caption = ""Command1.Caption = "计算"End SubPrivate Sub Command1_Click()Dim x As Single, y As Singlex = V al(Text1.Text)x = x - 1600If x > 40000 Or x < -1600 ThenY=0MsgBox "输入的薪金有错", , "出错"ElseIf x >= 0 And x <= 500 Theny = x * 0.05ElseIf x >= 500 And x <= 2000 Theny = 500 * 0.05 + (x - 500) * 0.1ElseIf x >= 2000 And x <= 5000 Theny = 500 * 0.05 + 1500 * 0.1 + (x - 2000) * 0.15ElseIf x >= 5000 And x <= 20000 Theny = 500 * 0.05 + 1500 * 0.1 + 3000 * 0.15 + (x - 5000) * 0.2 ElseIf x > 20000 Theny = 500 * 0.05 + 1500 * 0.1 + 3000 * 0.15 + 15000 * 0.2 + (x - 20000) * 0.25 End IfLabel2.Caption = "个人所得税为:" & Str(y)End Sub4.Private Sub Form_click()s = V al(InputBox("请输入计算机文化成绩"))Select Case sCase 180 To 200Print s, "优"Case 160 To 179Print s, "良"Case 140 To 159Print s, "中"Case 120 To 139Print s, "及格"Case 0 To 120Print s, "不及格"Case ElsePrint s, "输入成绩错误"End SelectEnd Sub。
07-第4章+程序控制结构与算法基础 苏州大学VB

a c x
0
y
Y=f(x)
方程f(x)=0的实根 的实根 方程
b
x
f(b)
c=(a+b)/2 5
2. 二个重要算法
2)牛顿迭代法求方程的根(P99例4-16) )牛顿迭代法求方程的根( 例 )
– 已知函数 已知函数Y=F(x), 求 Y=0 时的 X 值,可用牛顿 迭代公式来求得 – 牛顿迭代公式: 牛顿迭代公式: Xn+1=Xn- F(Xn) / F’(Xn) – 例:求方程 xex-1=0 在 x=0.5 附近的根 函数 Y = xex-1, 其一阶导数 Y’ = ex(x+1) ) X1=0.5 ,用迭代公式求出 X2、X3、… , 用迭代公式求出 、 、 当 | Xn+1 –Xn | <epc 时,Xn 为所求值
8
上机实验6 上机实验
学习指导P136 学习指导 实验3-4 实验 实验3-7 实验 实验3-8 实验 实验3nt(Rnd*(b-a+1) )+b [ a, b ] • 随机数的种子
– 产生随机数的第一个参数 – 用语句Randomize可改变随机数种子
3
1. 随机函数及种子
• 随机函数应用示例
– 产生 个二位随机整数,并分别在 产生10个二位随机整数 并分别在Form和 个二位随机整数, 和 Text控件上输出 控件上输出
• 思考
– 产生 个不相同的二位随机整数 产生10个不相同的二位随机整数
4
2. 二个重要算法
1)二分法求方程的根(P96例4-14) )二分法求方程的根( 例 )
– 求函数在某一区间上的根,可用二分法来求 求函数在某一区间上的根, – 二分法求方程根的思路: 二分法求方程根的思路: • 设函数 y = F(x) , 在区间(a,b)中y=0时的 X值 在区间( ) 时的 值
vb练习题(有答案)(打印)

《大学Visaul Basic程序设计》复习题第一章Visual Basic程序设计概述第一题:是非题(共10分,每项1分)1. VB6.0只能运行在Windows 2000下,不能运行在Windows 98下。
13A.对B.错√2. 用户控件和系统控件都可以加载到工具箱上,并且永久保留。
4A.对B.错√第二题、单选题(共45分,每项1.5分)1. VB中的工具栏可以从______菜单上的“工具栏”命令中移进或移出。
15A.工具B.编辑C.视图√D.调试2. 在VB的集成环境中创建VB应用程序时,除了工具箱窗口、窗体设计窗口、属性窗口外,必不可少的窗口是______。
2A.窗体布局窗口B.立即窗口C.代码窗口√D.监视窗口第二章VB的编程机制第一题:是非题(共10分,每项1分)1. 在事件驱动的应用程序中,代码是按照预定的路径执行的。
15A.对B.错√2. 标签控件即可以用来显示用户不能编辑和修改的文本,也可以用来编辑和修改文本。
9A.对B.错√3. 每一个控件实质上都是一个微型程序。
2A.对√B.错4. 窗体上的控件同样可以借助于剪贴板进行剪切、复制和粘贴。
A.对√B.错第二题、单选题(共45分,每项1.5分)1. 文本框没有_____属性。
21A.EnabledB.VisibleC.BackColorD.Caption√2. 文本框(Text1)中有选定的文本,执行Text1.SelText=”Hello”的结果是___。
9A.“Hello”将替换掉原来选定的文本√B.“Hello”将插入到原来选定的文本之前C.Text1.SelLength为5D.文本框中只有“Hello”3. 要判断“命令按钮”是否被鼠标单击,应在“命令按钮”的______事件中判断。
3A.ChangB.KeyDownC.Click√D.KeyPress4. 如果文本框的Enabled属性设为False,则___。
6A.文本框的文本将变成灰色,并且此时用户不能将光标置于文本框上B.文本框的文本将变成灰色,用户仍然能将光标置于文本框上,但是不能改变文本框中的内容√C.文本框的文本将变成灰色,用户仍然能改变文本框中的内容D.文本框的文本正常显示,用户能将光标置于文本框上,但是不能改变文本框中的内容第三题、简单程序(共15分,每项1.5分)1. 以下程序的输出结果是______。
VB第四章习题答案上海立信会计学院

1.结构化程序设计的三种基本结构是什么? 答:顺序结构、选择结构和循环结构。
2. 指出下列赋值语句中的错误(包括运行时要产生的错误)。
⑴ 10x=sin(x)+y 答:10x 错误变量名 ⑵ c=3+sqr(-3)答:sqr(x) 中自变量要求>=零 ⑶ c+x+y=c*y答:赋值符号的左边是表达式 ⑷ 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 …中的表达式可以是算术、字符、关系、逻辑表达式中的哪些? 答:可以是算术、关系、逻辑表达式。
按照一般语言的规定,if 后应该是关系表达式、逻辑表达式,根据其结果逻辑量是True 或False 决定是否执行Then 后面的句子。
而在VB 中还可以是算术表达式,因为VB 逻辑判断中,对于非0值就作为True ,而0值作为False ,因此分段函数sin /0,00{x x x x x y <>== 可用VB 语句表示为:If x Then y = sin (x) / x Else y = 0 而不必写成If x < >0 Then y = sin (x) / x Else y = 06 指出下列语句中的错误。
第04章VB控制结构

陈章良
E-MAIL:CHENZHL_YT@
第四章 VB控制结构
4.0 程序结构
4.1 顺序结构
4.2 选择结构
4.3 循环结构 4.4 其他辅助控制语句 4.5 综合应用 4.6 程序调试
4.0 程序结构
一个VB程序由两部分组成:
Viasual ,是由众多的对象构成了程序的可视 界面。 Basic,是响应各种事件的程序代码,也是程 序设计的重点和难点。
(1)对象:窗体、图形框或打印机。缺省为窗体。 (2)Spc(n):从当前位置起空n个空格 (3)Tab(n):从最左端开始计算的第n列 (4)分号:定位在上一个被显示的字符之后 (5)逗号:定位在下一个打印区开始处(每区14列) 例4.3 Print方法输出图mat格式输出函数 Format函数用于制定字符串或数字的输出 格式。
逻辑数据转换 为整形数据时 ,True为-1, False为0
1.5
其他类型数据转换 为逻辑数据时, 非0转换为True, 0转换为False
2.5
4.1.1 赋值语句
(4)任何非字符类型赋值给字符类型, 自动转换为字符类型。
例:strBh$=6012 【注意】
赋值号左边只能是变量,不能是常量 、常数符号或表达式。
3)If … Then … ElseIf语句(多分支结构)
4)If 语句的嵌套
4.2.1 If条件语句
1. If…Then语句(单分支结构) 形式:If <表达式> Then
语句块(一条或多条语句)
End If
或
If <表达式> Then <语句>
IF演示
VB 程序设计04-2

s=1 s=1 * s s=2 * s … s=n * s
初值 乘1 再乘2 … 再乘n
s=i * s i=i+1 循环条件: 循环条件: i≤n
用VB语言求阶乘 语言求阶乘
示例: 求 示例:VB求S=n! for...next: : s=1 for i=1 to n s=s * i next i 为什么没有i=i+1 为什么没有 do...loop: : i=1 : s=1 do while i<=n s=s * i i=i+1 能否去掉i=i+1 能否去掉 loop
(2)
a=2
y=iif(x>=0, 5*x, x+1)
选择结构总结
问题3 用两种形式改写如下程序段(3) (3): 问题3:用两种形式改写如下程序段(3):1、多分 if结构 结构, 多分支Select结构。 Select结构 支if结构,2、多分支Select结构。
If x>0 then y= -1 If x=0 then y= 0 If x<0 then y= 1
步骤
另一种实现方法: 另一种实现方法:
Private Sub Form_Load() Dim n%, i%, s# n = Val(InputBox("请输入一个正整数 "计算阶乘 请输入一个正整数", 计算阶乘 计算阶乘")) 请输入一个正整数 s=1 For i = 1 To n s=s*i Next i MsgBox "计算结果为 " & vbCrLf & n & "!=" & s, 64, "提示 计算结果为: 提示" 计算结果为 提示 End Sub
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《第4章VB控制结构》习题一、填空题1、结构化程序设计语言的三种基本控制结构是、、。
2、分支结构中的条件通常是表达式。
1、Select case语句执行哪一个分支的根据是与相匹配。
2、强制性退出Do…Loop循环的语句是,强制性退出For…Next循环的语句是。
3、VB有三种工作模式,它们分别是、和。
4、VB可能遇到的错误有、和。
5、执行下面的程序段后,s的值为。
s=5For i=2.6 To 4.9 Step 0.6s=s+1Next i6、阅读程序,写出程序的运行结果box 。
Private Sub Form_Click()Dim k,Box as IvtegerFor k=1 to 11Select Case kCase 1,3,5,7,9,11Box=Box+Int(k/2)Case 2,4,6,8,10Box=Box+Int(k/3)End SelectNext kPrint “Box”;BoxEnd Sub7、运行时单击窗体,以下事件发生的次序是。
8、执行下列程序段后,x的值是。
n = 5: x = 1: i = 1Dox = x * ii = i + 1Loop While i < n9、阅读下列程序段:x = 0For i = 1 To 4For j = 1 To ix = x + 1Next j, i执行以上循环后,x 的值为。
10、执行下列程序段后输出的结果是。
s = 1For i = 1 To 3For j = 0 To i-1s = s + s * jNext j? s;Next i11、阅读下列程序段:m = 0For i = 1 To 3For j = 1 To im = m + jNext j, i执行以上的循环后,i和m的值分别为。
12、运行下列程序段,其中“n=n+1”语句被执行的次数是。
Dim m%, n%For m = 1 To 3For n = 1 To 6 Step 2n = n + 1Print nNext nNext m13、窗体上有一个命令按钮Command1,编写如下事件过程:Private Sub Command1_Click()Sum = 0For m = 1 To 3Select Case mCase 1a = 1Case 2a = 2Case 3a = 3End SelectPrint a,Sum = Sum + aNext mPrint SumEnd Sub运行时,单击按钮,输出结果是。
14、窗体上有一个命令按钮Command1,编写如下事件过程:Private Sub Command1_Click()a = 80:b = 50:c = 30If a < b Or b > c Then b = cIf b = c And a < c Then a = a - 30If a = b And b > c Then c = a + bPrint a, b, cEnd Sub运行时,单击按钮,窗体输出的结果是。
二、单项选择题1、选择和循环结构的作用是()。
A、提高程序运行速度B、控制程序的运行C、便于程序的阅读D、方便程序调试2、要计算当0<x<10时,将x的值赋给y,应使用语句()。
A、If 0<x<10 then y=xB、If 0<x or x<10 then y=xC、If 0<x and x<10 then y=xD、If 0<x Xor x<10 then y=x3、多分支选择结构的case语句,写法错误的是()。
A、Case 1,5,7,9B、Case 8 To 12C、Case 5 To 2D、Case Is<”man”4、For…Next循环结构中,循环控制变量的步长为0,则()。
A、形成无限循环B、循环体执行一次后结束循环C、语法错误D、循环体不执行即结束循环5、要使循环体至少执行一次,应使用()循环。
A、For …NextB、While …WendC、Do …Loop[While/Until]D、Do[While/Until] …Loop6、为了显示当前过程中局部变量的当前值,应用调试窗口中的()。
A、本地窗口B、立即窗口C、监视窗口D、快速监视窗口7、标志错误处理程序开始的语句是()。
A、Exit SubB、行标号C、On Error语句D、Resume语句8、执行下列程序段,x的值为()。
x=5For i=1 to 20 Step 2x=x+i\5Next iA、21B、22C、23D、249、编写程序计算5门课的平均成绩,将除数5误写为4,这属于()。
A、系统错误B、编译错误C、逻辑错误D、运行错误10、下列命令按钮事件过程执行后,输出结果是()。
Private Sub Command1_Click()For m=1 To 10 Step 2a=10For n=1 To 10 Step 2a=a+2Next nNext mPrint aEnd subA、60B、50C、30D、2011、编写如下事件过程:Private Sub Form_MouseDown(Button As Integer,Shift As Integer,_X As Single, Y As Single)If Shift = 3 And Button = 2 ThenPrint "Visual Basic"End IfEnd Sub运行时,为了在窗体上输出"Visual Basic",应执行的操作为()。
A、按下Shift键和鼠标左键B、同时按下Shift、Alt键和鼠标左键C、按下Alt键和鼠标右键D、同时按下Shift、Ctrl键和鼠标右键12、下列求两数中最小数的程序段不正确的是()。
A、If x < y Then Min = x Else Min = yB、Min = IIf(x < y,x,y)C、Min = x : If y < = x Then Min = yD、If y < = x Then Min = y : Min = x13、下列程序段的执行结果是()。
x = 3 : y = 5 : z = 9x = x + yy = x - yIf x - y > z - x Then z = x + yIf x + y > z - y Then x = z + yPrint x, y, zA、3 5 9B、14 3 11C、8 3 11D、8 5 914、如果x小于y的平方,则在窗体上输出“OK”。
完成该要求的单行条件语句是()。
A、If x < y ^ 2 Then "OK"B、If x < y ^ 2 Then Show "OK"C、If x < y ^ 2 Then Print "OK"D、f x < y ^ 2 Then Put "OK"15、有如下程序段:Dim s%, t%, a%, b%s = 1: t = 1a = Text1.Textb = Text2.TextIf a > 0 Then s = s + 1If a > b Thent = t + sElseIf a = b Thent = 5Elset = 2 * sEnd IfEnd IfPrint tEnd Sub要使程序输出结果为4,则a和b应满足的条件是()。
A、a>0 And a<bB、a<0 And a<bC、a>0 And a>bD、a<0 And a>b16、以下条件语句错误的是()。
A 、If X Then Y = Y + 1B 、If X = 0 Then Y = 0C 、If X > 0 Then Y = 1: Print YD 、If X > Y Then Print Y End If 三、编程题1、 编程计算下列函数。
SinX X ≥20 Y= CosX 0≤X <20e XX <02、 求一元二次方程ax 2+bx+c=0的根。
提示:从初等代数可知,此方程有两个根,它有三种可能(设d=b 2-4ac ):(1) 若b 2-4ac>0,有两个不等的实根:a db x 22,1±-=(2) 若b 2-4ac=0,有两个相等的实根:ab x 22,1-=(3) 若b 2-4ac<0,有一对共轭复根:i ad ab x 222,1-±-=3、 某商品价格随购货数量而定,买100个以上(含100个,下同)的打9折,200个以上的打8.5折,300个以上的打8折,400个以上的打7.5折,500个以上的打7折。
设商品单价为65元,要求从键盘输入购买商品数量后,显示出总货款。
4、 求∑=201!n n (即求1!+2!+3!+…+20!)。
5、 输出斐波纳契(fibonacci )数列的前20项。
数列的规律是:第一、二个数是1,从第三个数起,该数是前面两个数之和。
6、 如果我国工农业生产值每年以12%增长率递增,问多少年后产值翻一番?7、 求出2000 — 2005年之间的所有闰年。
闰年的条件是:能被4整除但不能被100整除的年份,或者能被400整除的年份,如2000年、2004年是闰年,而2001年、2100年不是闰年。
8、 找出1~1000之间的全部“水仙花数”。
“水仙花数”是这样的一个整数,它的每位数字的立方之和正好等于这个三位数。
例如153是水仙花数,因为13+53+33=153。
9、 在窗体上输出如图18所示的图形。
图4-18 编写代码输出图形10、 输出九九乘法表。