【word版】上海海事大学VB题库——改错_第1页
【word版】上海海事大学VB题库——改错_第2页
【word版】上海海事大学VB题库——改错_第3页
【word版】上海海事大学VB题库——改错_第4页
【word版】上海海事大学VB题库——改错_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

改错 第1题程序改错(5分)(题号:132) - 【程序改错】 - 题目:求s=2!+4!+6!+8!,阶乘的计算用Function过程 fact实现 - 注意:不可增加或删除程序行,也不可以更改程序结构 - Private Sub Form_Click() dim i as integer,s as Long *FOUND* For i = 2 To 8 s = s + fact(i) Next i Print s End Sub *FOUND* Public Function fact( ) dim t as Long dim i as integer t = 1 For i = 1 To n t = t * i Next I *FOUND* fact=i End Function 答案: 1). For i = 2 To 8 Step 2 2). Public Function fact(ByVal n As Integer) 或 Public Function fact(n As Integer) 或 Public Function fact(n%) 或 Public Function fact(n) 或 Public Function fact(ByVal n%) 或 Public Function fact(ByVal n) 3). fact = t 第1题程序改错(5分)(题号:132) - 【程序改错】 - 题目:求s=2!+4!+6!+8!,阶乘的计算用Function过程 fact实现 - 注意:不可增加或删除程序行,也不可以更改程序结构 - Private Sub Form_Click() dim i as integer,s as Long *FOUND* For i = 2 To 8 s = s + fact(i) Next i Print s End Sub *FOUND* Public Function fact( ) dim t as Long dim i as integer t = 1 For i = 1 To n t = t * i Next I *FOUND* fact=i End Function 答案: 1). For i = 2 To 8 Step 2 2). Public Function fact(ByVal n As Integer) 或 Public Function fact(n As Integer) 或 Public Function fact(n%) 或 Public Function fact(n) 或 Public Function fact(ByVal n%) 或 Public Function fact(ByVal n) 3). fact = t 第1题程序改错(5分)(题号:493) - 【程序改错】 - 题目:给定年号与月份,判断该年是否闰年,并根据给出的 月份来判断是什么季节和该月有多少天? (闰年的条件是:年号能被4整除但不能被100整除, 或者能被400整除。) - 注意:不可增加或删除程序行,也不可以更改程序结构 - Private Sub Form_Click() Dim Year As Integer, Month As Integer Year = InputBox(输入年号:) Month = InputBox(输入月份:) *FOUND* If Year Mod 4 = 0 And Year Mod 100 0 And Year Mod 400 0 Then *FOUND* flag = 0 MsgBox 闰年 Else flag = 0 MsgBox 非闰年 End If *FOUND* Select Case flag Case 1 MsgBox 该月有31天,春季 Case 2 If flag = 1 Then MsgBox 该月有29天,春季 Else MsgBox 该月有28天,春季 Case 3 MsgBox 该月有31天,春季 Case 4 MsgBox 该月有30天,夏季 Case 5 MsgBox 该月有31天,夏季 Case 6 MsgBox 该月有30天,夏季 Case 7 MsgBox 该月有31天,秋季 Case 8 MsgBox 该月有31天,秋季 Case 9 MsgBox 该月有30天,秋季 Case 10 MsgBox 该月有31天,冬季 Case 11 MsgBox 该月有30天,冬季 Case 12 MsgBox 该月有31天,冬季 End Select End Sub 答案: 1). If Year Mod 4 = 0 And Year Mod 100 0 Or Year Mod 400 = 0 Then 或 If Year Mod 400 = 0 Or Year Mod 4 = 0 And Year Mod 100 0 Then 2). Flag = 1 3). Select Case Month 第2题程序改错(5分)(题号:119) - 【程序改错】 - 题目:在下面的程序段中过程pd可以判断任意三个数能 否构成三角形的三边,利用该过程的判定结果, 对能构成三角形的计算其面积,构不成的显示 不能构成三角形 - 注意:不可增加或删除程序行,也不可以更改程序结构 - Option Explicit Private Sub Form_Click() *FOUND* Dim x%, y%, z%, s%, b As Boolean, h As Single x = InputBox(请输入三角形的边长) y = InputBox(请输入三角形的边长) z = InputBox(请输入三角形的边长) b = pd(x, y, z) h = (x + y + z) / 2 *FOUND* If Not b Then s = Sqr(h * (h - x) * (h - y) * (h - z) Print 三角形面积是; s Else Print 不能构成三角形 End If End Sub *FOUND* Public Function pd() As Boolean If x 0 And y 0 And z 0 And x + y z And x + z y And y + z x Then pd = True Else pd = False End If End Function 答案: 1). Dim x%, y%, z%, s!, b As Boolean, h As Single 或 Dim x%, y%, z%, s as Single, b As Boolean, h As Single 2). If b Then 或 If b=true Then 3). Public Function pd(x%, y%, z%) As Boolean 或 Public Function pd(x, y, z) As Boolean 或 Public Function pd(x as Integer, y as Integer, z as Integer) As Boolean 第3题程序改错(5分)(题号:134) - 【程序改错】 - 题目:程序功能根据输入的学习成绩,分别显示优秀 (90分以上), 良好(75分以上),及格(60分以上) ,不及格几个等级. - 注意:不可增加或删除程序行,也不可以更改程序结构 - Private Sub Form_Click() Cls Dim i As Integer i = InputBox(请输入学习成绩) Select Case I *FOUND* Case 0I 100 or i 0 或 Case 100 i or i 100 or 0i 或 Case 100 i 2). Case 90 To 100 3). Case else 第4题程序改错(5分)(题号:481) - 【程序改错】 - 题目:下面程序的功能是将一个整数转化为数值字符串, 列如123,转化为+123,-123转化为“-123” - 注意:不可增加或删除程序行,也不可以更改程序结构 - Private Function NtoC(ByVal n As Single) Dim sign As Boolean, i%, a%, count%, temp%(100) Dim strc As String sign = False *FOUND* If n 0 *FOUND* a = n / 10 n = n 10 *FOUND* count = 1 temp(count) = a Loop If sign Then strc = - Else strc = + For i = count To 1 Step -1 strc = strc + Chr(Asc(0) + temp(i) Next i NtoC = strc End Function Private Sub Command1_Click() Print NtoC(-123) End Sub 答案: 1). If n 0 Then sign = True 2). a = n Mod 10 3). count = count + 1 或 count = 1 + count 第1题程序改错(5分)(题号:132) - 【程序改错】 - 题目:求s=2!+4!+6!+8!,阶乘的计算用Function过程 fact实现 - 注意:不可增加或删除程序行,也不可以更改程序结构 - Private Sub Form_Click() dim i as integer,s as Long *FOUND* For i = 2 To 8 s = s + fact(i) Next i Print s End Sub *FOUND* Public Function fact( ) dim t as Long dim i as integer t = 1 For i = 1 To n t = t * i Next I *FOUND* fact=i End Function 答案: 1). For i = 2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论