【word版】上海海事大学VB题库——改错

合集下载

VB程序设计例题-程序改错程序填空程序设计

VB程序设计例题-程序改错程序填空程序设计

'以下程序段用于输出杨辉三角:结果样式如图1'Private Sub Form_Click()Const n = 10Dim arr(n, n) As IntegerFor I = 1 To narr(I, I) = 1'**********SPACE**********【arr(I, 1) = 1】Next IFor I = 3 To nFor j = 2 To I - 1'**********SPACE**********arr(i, j) =arr(i-1,j-1)+arr(i-1,j)Next jNext IFor I = 1 To nFor j = 1 To I'**********SPACE**********【print arr(I,j)】Next jPrintNext IEnd SubOption Explicit'------------------------------------------------'【程序改错】'------------------------------------------------'题目:用自定义函数的方法求sum(x),求当-1≤x≤1时,' sum(x)=x/2!+x^2/3!+x^3/4!+……+x^n/(n+1)!,' 当x〉1或x〈-1时,函数值为0。

当n〈=0时,输入数' 据错误。

X、N都是由用户输入。

'------------------------------------------------'注意:不可增加或删除程序行,也不可以更改程序结构'------------------------------------------------Private Sub Command1_Click()Dim s As SingleDim n As Integer, x As Single, k As Integern = Val(InputBox("Please input a integer value:"))x = Val(InputBox("Please input a single value:"))If n <= 0 Thenk = MsgBox("数据输入错误!", vbRetryCancel + vbExclamation, "数据输入")Exit SubEnd Ifs = Sum(x, n)Print sEnd SubFunction Sum(x As Single, n As Integer)Dim i As Integer, ss As Longss = 1Sum = 0If x > 1 Or x < -1 Then'**********FOUND**********Exit Do 改为Exit FunctionElse'**********FOUND**********For i = 2 To n 改为For i = 2 To n+1ss = ss * i'**********FOUND**********Sum = x ^ (i - 1) / ss 改为Sum =sum+ x ^ (i - 1) / ssNext iEnd IfEnd FunctionOption Explicit'------------------------------------------------'【程序改错】'------------------------------------------------'题目:编程将一个数从已经有序(设从小到大排序)的数组' 中删除,使数组还继续保持有序而且其余元素按照下' 标连续存放。

vb程序改错

vb程序改错

1.在考生文件夹下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。

其功能是:产生30个[0,90]的随机整数,放入一个数组中,然后输出其中的最大值。

程序运行后,单击命令按钮,可求出数组中的最大值,并在窗体上显示。

运行界面请参阅附图。

在窗体的代码窗口中,已给出了部分程序,程序中有两处错误,请修改程序并运行,直到得出正确结果。

注意:程序中的修改位置就在注释行:’**********found*************’’请不要删除该行’的下面一行中,请不要改动程序中的其他部分。

最后把修改后的文件按原来文件名存盘,提交程序改错题文档。

VERSION 5.00Begin VB.Form Form1Caption = "Form1"ClientHeight = 2100ClientLeft = 1905ClientTop = 1875ClientWidth = 3660LinkTopic = "Form1"ScaleHeight = 2100ScaleWidth = 3660Begin mandButton Command1Caption = "输出最大值"Height = 375Left = 960TabIndex = 0Top = 1320Width = 1575EndEndAttribute VB_Name = "Form1"Attribute VB_GlobalNameSpace = FalseAttribute VB_Creatable = FalseAttribute VB_PredeclaredId = TrueAttribute VB_Exposed = FalseOption Base 1Private Sub Command1_Click()Dim arrN(30) As IntegerDim Max As IntegerRandomizeForm1.ClsFor i = 1 To 30’**********found*************’’请不要删除该行’arrN(i) = Int(Rnd * 51) 91Print Format(arrN(i),"@@@@@@");If i Mod 6 =0 Then PrintNext i’**********found*************’’请不要删除该行’Max = arrN(0) 1For i = 2 To 30If Max<arrN(i) ThenMax = arrN(i)End IfNext iPrint "Max=";Max2. 在考生文件夹下有一个工程文件Modi.vbp,相应的窗体文件为Modi.frm。

(完整word版)大学VB考试题库

(完整word版)大学VB考试题库

大学VB考试题库一、单项选择题1、与传统的程序设计语言相比,Visual Basic最突出的特点是()。

A、结构化程序设计B、程序开发环境C、事件驱动编程机制D、程序调试技术2、赋值语句:a=123& MID("123456",3,2)执行后,a变量中的值是()。

A、"12334"B、123C、12334D、1573、保存一个工程至少应保存两个文件,这两个文件分别是(B)。

A、文本文件和工程文件B、窗体文件和工程文件C、窗体文件和标准模块文件D、类模块文件和工程文件4、以下能在窗体Form1的标题栏中显示"VisualBasic窗体"的语句是(C)。

A、="VisualBasic窗体"B、Form1.Title="VisualBasic窗体"C、Form1.Caption="VisualBasic窗体"D、Form1.Text="VisualBasic窗体"5、为了装入一个VisualBasic应用程序,应当(D)A、只装入窗体文件(.frm)B、只装入工程文件(.vbp)C、分别装入工程文件和标准模块文件(.bas)D、分别装入工程文件、窗体文件和标准模块文件6、赋给一个数组的数据类型一定要(A)。

A、相同B、不相同C、两可D、都不对7、下面正确的赋值语句是(C)。

A、x+y=30B、y=π*r*rC、y=x+30D、3y=x8、VisualBasic 6.0集成环境的主窗口中不包括(C)。

A、标题栏B、菜单栏C、状态栏D、工具栏9、以下叙述中错误的是(C)。

A、Visual Basic 是事件驱动型可视化编程工具B、Visual Basic应用程序不具有明显的开始和结束语句C、Visual Basic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性(计时器)D、Visual Basic中控件的某些属性只能在运行时设置10、要使Print方法在Form_Load事件中起作用,要对窗体的(C)属性进行设置。

VB程序改错40题含答案-推荐下载

VB程序改错40题含答案-推荐下载
【程序改错】 题目:该程序实现将输入的 0 - 255 之间的正整数转换成二进制数 Option Explicit Private Sub Form_Click()
Const n = 8 Dim a(n) As Integer, s As String, m As Integer, x As Integer x = Val(InputBox("请输入一个 0 - 255 之间的正整数:")) Print x For m = 1 To n a(m) = x Mod 2 x=x/2 Next m s="" For m = n To 0 Step -1
'【程序改错】
'题目:下面程序可输出如下图形:
'
'
'
'
'
*
***
*****
*******
*********
'------------------------------------------------
Option Explicit
Private Sub Form_Click()
Dim m As Integer, n As Integer, s As String, i As Integer, j As Integer
End Sub
答案:
End If
If A <= B Then nTemp = B B=C C = nTemp
End If
Print "The integers in order is"; A; B; C
=======(答案 1)=======
If A <= B Then

完整word版VB程序设计试题题库及答案

完整word版VB程序设计试题题库及答案

VB程序设计笔试题题库选择题1下列常量中,是Integer类型常量的是(C )。

A、123&B、-38844C、123%D、327682下面选项中()是字符连接运算符•(A )A、&B、AndC、%D、M od3 下面关于VB的集成开发环境(IDE )的叙述中,不正确的是(B ) oA、IDE是设计、调试、运行VB程序的工具。

B、用户不能随意关闭IDE中的窗口。

C、”窗体设计”窗口是用来设计应用程序界面(窗体)的。

D、打开/关闭各窗口的命令主要在IDE的”视图”菜单中。

4 len("程vb 序设计”)=(C)。

A、5B、2C、6D、105表达式15 Mod4 +13\5 *2 的值是DA、7B、0C、2D、46 赋值语句A=123 +Mid$(“ 123456”,3,2)执行后,A= ( A )。

A、157B、12334C、123D、”12334”7在一个语句内写多条语句时,用来分隔每条语句的符号是(C )・A、,B、;C、:D、、8将逻辑型数据转换成整型数据时,转换规则是( D ) oA、将True转换为1 ,将False转换为0B、将True转换为1 ,将False转换为-1C、将True转换为0 ,将False转换为-1D、将True转换为-1 ,将False转换为09表达式2+3*4A5-SIN(X+1)/2中最先进行的运算是(D ).A、SINB、4A5C、3*4D、x+110 如果x=2 ,则表达式x+1 >2 Or sin(x)>0.9 And 3>x+3 的值(B ) oA、不能计算B、TrueC、5D> False11随机产生[10, 50]之间整数的正确表达式是( D )。

A、Round( Rnd*50)B、Int(Rnd*40+10)C、Round( Rnd*51)D> 10+Int(Rnd*41)12每建立一个窗体,工程管理器窗口中就会增加一个(C ).A、类模块文件B、工程文件C、窗体文件D、程序模块文件13 INT(100*RND(l))产生的随机整数的闭区间是( B ).A、[1,100]B、[0,99]C、[0,100]D、[1,99]14下列数据类型中,占用内存最小的是(D)・A、IntegerB、SingleC> BooleanD> Byte15 VisualBasic 是一种( B )程序设计语言.A、过程式B、非过程式C、机器D、低级16函数Int(10*Rnd)是在(A)范围内的整数・A、[0,9]B、[0,1]C、[1,9]D、[1,10]17以下合法的一组VisualBasic 用户标识符是(C )A、S um 和8abcB、a#x 和PiC、F orLoop 和TotalD、C onst 和Do While18函数Len(Str(Val(n123.4n))) 的值为(B ).A、5B、6C、8D、1119Int(198.555*100+0.5)/100 的值为( B )A、199.6B、198.56C、200D、19820以下各表达式中,计算结果为0的是(A ). A、FIX(12.4)+FIX(-12.6)B、C INT(12.4)+CINT(-12.6)C、I NT(12.4)+INT(-12.6)D、F IX(13.6)+FIX(-12.6)21MsgBox()的正确语法是(D )。

上海海事大学VB题库

上海海事大学VB题库
OUT = FreeFile
Open App.Path & "\out.txt" For Output As #OUT
Print #OUT, i
Close #OUT
End Sub
Private Sub Form_Click()
Private Sub YZJ(i As Single)
Dim OUT As Integer
OUT = FreeFile
Open App.Path & "\out.txt" For Output As #OUT
Print #OUT, i
' 将所有的换法的数目存入变量N中
'-------------------------------------------------
'注意:请在指定的事件内编写代码。
'-------------------------------------------------
'注意:请在指定的事件内编写代码。
'-------------------------------------------------
Dim m As Long
'******** Program *************
Dim i%, p%
For i = 10 To 15
p = i * (i + 1) * (i + 2)
' (响应)编写程序求10×11×12+11×12×13+…+15×16×17的结果,
' 并将结果输出到窗体上。
' 将结果存入变量M中

VB上机模拟改错题

VB上机模拟改错题

(本试卷完成时间 60分钟)[考试须知]1.改错题界面不作要求,主要用来调试程序,题目中有参考界面,则仅作参考;2.考试结束后,文件须存放在指定位置,否则不予评分;3.程序代码书写应成锯齿形。

一、改错题(14分)[题目]随机生成30个三位正整数显示在列表框List1中,并从中找出所有回文数显示在多行文本框Text1中。

Option ExplicitOption Base 1Private Sub Command1_Click()Dim i As IntegerDim A(30) As IntegerFor i = 1 To 30A(i) = Int(Rnd * 900 + 100)List1.AddItem A(i)Next iFor i = 1 To 30If judge(A) ThenText1 = Text1 & CStr(A(i)) & Chr(13) & Chr(10)End IfNext iEnd SubPrivate Function judge(ByVal x As Integer) As BooleanDim S As String, i As IntegerS = Str(x)For i = 1 To Len(S) \ 2If Mid(S, i, 1) = Mid(S, Len(S) - i + 1, 1) Then Exit ForNext iIf i > Len(S) \ 2 Thenjudge = TrueElsejudge = FalseEnd IfEnd Function[要求]1.新建工程,Copy上述代码,改正程序中的错误;2.改错时,不得增加或删除语句,但可适当调整语句位置;3.按要求保存文件,上传窗体文件……G1.frm。

(本试卷完成时间 60分钟)[考试须知]1.改错题界面不作要求,主要用来调试程序,题目中有参考界面,则仅作参考;2.考试结束后,文件须存放在指定位置,否则不予评分;3.程序代码书写应成锯齿形。

上海海事大学VB题库

上海海事大学VB题库

1、写出用随机函数产生一个200至300之间整数的VB表达式【1】.答案:200★+★Int(★Rnd*100★) 或200★+★Int(★100*Rnd★)2、已知文本框的内容为"ABCDE",若文本框Selstart=4,Sellength=2,则SelText为【1】.答案:DE3、VB提供了列表框控件,当列表框中的项目较多,超过了列表框的长度时,系统会自动的在列表框边上加一个【1】.答案:垂直滚动条或滚动条4、想拥有"快捷键"这项功能,必须在"菜单编辑器"中增加一些特殊的设置,也就是在字母之前加上【1】.答案:&5、列表框(ListBox)显示【1】,用户可以从中选择一个或多个项目.答案:项目列表或列表6、设置控件背景颜色的属性名称是【1】.答案:backcolor7、如果在模块的声明段中有Option Base 0语句,则在该模块中使用Dim a(6, 3 To 5)声明的数组有【1】个元素.答案:218、定时器控件的Interval属性值是指时间间隔,单位为毫秒;当每隔此间隔的时间,定时器会触发一次【1】事件.答案:Timer9、写出清除标签Label1的显示信息的语句为【1】.答案:Label1.caption="" 或Label1="" 或Label1.Caption=""10、写出清除图片框的文字或图形信息的语句【1】.答案:Picture1.cls 或cls11、滚动条控件有水平滚动条和【1】滚动条.答案:垂直12、文本框中所显示的内容是它的【1】属性的值.答案:Text13、要使命令按钮cmdEnd可以以快捷键E访问,应设置属性【1】.答案:Caption14、当程序运行时,要求窗体中的文本框呈现空白,则在设计时,把此文本框的【1】属性设置成空白.答案:Text15、如果要使用命令按钮表面显示文字"退出(X)"(在字符X之下加下划线),则其Caption属性设置为【1】.答案:退出(&X)16、所有控件都具有的共同属性是【1】属性.答案:name17、Visual Basic为添加到窗体上的第一个图片框picture提供的默认对象名为【1】.答案:Picture118、使用Scale方法建立窗体Form1的用户坐标系,其中窗体左上角坐标为(-200,250),右下角坐标为(300,-100),具体形式为【1】.答案:form1.scale (-200,250)-(300,-100)19、如果在模块的声明段中有Option Base 1语句,则在该模块中使用Dim a(3 To 5,6)声明的数组有【1】个元素.答案:1820、把"Visual Basic程序设计"添加到列表框lstBooks的语句为【1】.答案:lstBooks.AddItem "Visual Basic程序设计"21、如果要指明mystring为固定15个字长的全局变量,应该在标准模块中用以下说明语句定义【1】.答案:public★mystring★as★string*1522、若要在字符串asdgewl中取dge,则使用函数【1】实现.答案:Mid$(asdgewl$,2,3) 或Mid(asdgewl,2,3)23、欲使在自己设计VB程序运行过程中,不中止本程序的运行,同时又可调用系统中已有的应用程序c:\windows\Calc.exe,可在程序代码窗口必要的地方添加语句【1】.答案:shell("c:\windows\Calc.exe") 或shell("calc.exe")24、设置计时器控件只能触发【1】事件.答案:timer25、要使鼠标停留在按钮上显示特殊的鼠标形状,应设置的属性值是【1】.答案:mousepointer26、使用Circle方法在窗体Form1上以(15,15)为圆心,10为半径画圆,具体形式为【1】.答案:form1.circle (15,15),1027、使用Move方法把图形框Picture1的左上角移动到距窗体顶部100Twip,距窗体左边框200Twip,同时图形框缩小50%,具体形式为【1】.答案:Picture1.move 200,100,picture1.width/sqr(2),picture1.height/sqr(2)28、对象是既包含【1】又包含对数据进行操作的方法,并将其封装起来的一个逻辑实体.答案:数据29、拖动滚动条中的滚动框将会产生Scroll和【1】事件.答案:Change30、以图片框Pic1的中心位置为圆心,以700为半径在Pic1上画一个圆的方法是【1】.pic1.Circle (pic1.width/2,pic1.height/2),70031、设置计时器对象触发事件的时间间隔用【1】属性.答案:interval32、对象具有属性和【1】.答案:方法33、打开"工程窗口"的方法之一是按下【1】组合键.答案:CTRL+R34、列表框控件不支持Click事件,但支持【1】事件.答案:dblclick35、Visual Basic 中的文本框中要使该框不允许多行输入,应设置【1】属性为false. 答案:MultiLine36、如果要在单击钮时执行一段代码,则应将这段代码写在【1】事件过程中.答案:click37、将焦点定位于命令按钮Command1之上的语句为【1】.答案:Command1.SetFocus 或SetFocus38、滚动条控件主要支持两个事件,它们是scroll和【1】事件.答案:change39、文件按照存取方式及其组成结构可以分为顺序文件和【1】.答案:随机文件或随机40、由For k=35 to 0 step 3:next k循环语句控制的循环次数是【1】.答案:041、循环语句FOR K=1 TO 10 STEP –1控制的循环次数为【1】.答案:042、由For k=35 to 0 step 3:next k循环语句控制的循环次数是【1】 .答案:043、VB中,变量的声明可分为两种方法:【1】数组和动态数组.答案:静态44、Option Base 1的作用是确定数组的下界为【1】. 答案: 145、VB中,变量的声明可分为两种方法:隐式声明和【1】.答案:显式声明46、一元两次方程ax2+bx+c=0有实根的条件为a≠0,并且b2-4ac≥0,列出逻辑表达式【1】.答案:a<>0★and★b^2-4*a*c>=047、在VB 6.0中,设Single型变量XYZ 的值为123.45,若要将其转换成字符串,应使用的类型转换函数是【1】.答案:STR 或CSTR48、由Dim a (10) As single定义的数组占用【1】字节的内存空间.答案:4449、在VB中,若要将字符串"12345"转换成数字值应使用的类型转换函数是【1】.答案:VAL 或Cint50、在VB中,若要使一个文本框(Text)中的内容在超过文本框的宽度时能够自动换行显示,应当将这个文本框的【1】属性的值设置为True.答案:MultiLine51、大于X 的最小整数的VB表示形式为【1】.答案:Int(x)+1 或Int(x)★+★152、一个工程可以包括多种类型的文件,其中扩展名为.bas的文件表示【1】文件.答案:标准模块或模块53、在VB 6.0中,变量名最长可达【1】个字符. 答案:25554、在VB中,若要改变一个窗体的标题,应在属性窗口中改变这个窗体的【1】属性的值. 答案:Caption55、在控件之中,【1】不能从工具箱中被删除.答案:内部控件或标准控件56、在VB中,若要求在模块中强制显式地指定变量的数据类型,应当在模块首部的申明部分使用【1】语句.答案:Option Explicit57、一般情况下,控件有两个属性项的缺省值是相同的,这两个属性项是name和【1】.答案:caption58、一个工程可以包括多种类型的文件,其中ActiveX控件的文件扩展名为【1】.答案:OCX59、在利用Visual Basic设计应用程序时,一般会遇到三类错误:语法错误、执行错误和【1】. 答案:逻辑错误60、要使一个按钮无效,则可把它的Enable属性设为【1】.答案:False61、在VB中,窗体由属性定义外观,由【1】定义行为,由事件定义其与用户的交互.答案:方法62、一个工程可以包括多种类型的文件,其中,扩展名为.vbp的文件表示【1】文件.答案:工程63、一个工程可以包括多种类型的文件,其中,扩展名为.frm的文件表示【1】文件.答案:窗体64、要使同一类型控件组成一个控件数组,必须要求【1】.答案:Name 相同或名称相同65、要使一个按钮设为默认按钮,应把此按钮的【1】属性的值设为True.答案:Default66、在VB中,若要重新定义一个动态数组的元素个数,应当使用【1】语句对其进行重新定义.答案:ReDim67、在控件之中,【1】单独保存在.OCX文件中,在必要时可以加入到工具箱中.答案:ACTIVEX控件68、VB中的变量按其作用分为全局变量,模块变量,【1】.答案:局部变量69、在一条Dim语句中可以声明多个变量,如Dim strVar,intVar,sngVar As Integer,则strVar、intVar与sngVar的数据类型分别是Variant、Variant和【1】.答案:Integer70、设x为大于零的实数,则大于x的最小奇数的Visual Basic表达式是【1】.答案:IIF(int(x) mod 2=0,int(x)+2,int(x)+1)71、说明变量类型有隐含类型说明和【1】两种方法.答案:强制类型或强制类型说明72、表达式(-3) Mod 8的值为【1】.答案:–373、设X$ ="abc123456"则"a"+str$(val(right(X$,4)))的值是【1】.答案:a345674、设a=2,b=3,c=4,d=5,则NOT a<=c OR 4*c=b^2 AND b<> a+c 的值为【1】.答案:False75、String(3, "abc")的结果为【1】.答案:aaa76、VB 的工作模式可分为三种:"设计"、"运行"以及"【1】".答案:中断77、VB的运算符包括算术运算符、【1】运算符、关系运算符、逻辑运算符和特殊运算符. 答案:连接78、Integer类型的变量占用【1】字节空间.答案: 279、表达式81\7 MOD 2^2 的值是【1】.答案: 380、设x为一个两位数,将x个位数和十位数交换后所得两位数VB的表达式是【1】.答案:(x mod 10)★*★10★+★int(x/10)81、求x与y之积除以z的余数的VB表达式为【1】.答案:x*y★Mod★z82、变量min&表示【1】类型的变量.答案:长整型83、A和B同为正整数或同为负整数的VB表达式为【1】.答案:A=INT(A)★AND★ B=INT(B)★ AND★ A*B>084、Val("123.55ab456")的值是多少【1】.答案:123.5585、表达式"[A]"Like "[A]"的值为【1】.答案:False86、sst="ABC12DE",则Val(sst)=【1】.答案:087、VB表达式9^2 MOD 45 \2 *3 的值【1】.答案:488、表达式32\7 MOD 3^2 的值是【1】.答案: 489、默认情况下,所有未经显示声明的变量均视为Variant 类型,如果要强制变量的声明,应在模块的声明段使用【1】语句.答案:Option Explicit90、征兵的条件:男性(sex)年龄(age)在18—20岁之间,身高(size)在1.65米以上;或者女性年龄在16—18岁之间,身高在1.60以上,列出逻辑表达式【1】.答案:(sex and age>=18 and age<=20 and size>=1.65 ) or (notsex and age>=16 and age<=18 and size>=1.60 )91、把整数0赋给一个逻辑型变量,则逻辑变量的值为【1】.答案:False92、a 和b 中有仅只有一个为1,相应的Visual Basic逻辑表达式为【1】.答案:a=1★xor★b=193、设x=2,y=4,a=4,b=6,表达式(a>x Xor b<x) OR x<y IMP y<b 的结果为【1】.答案:True94、把整型数1赋给一个逻辑型变量,则逻辑变量的值为【1】.答案:True95、如果:I=12:J=3:I=int(-8.6)+I\J+13/3 MOD 5,则I值是【1】.答案:-196、如果:I=11:J=3:I=int(-8.6)+I\J+13/3 MOD 5,则I值是【1】.答案:-297、把条件1<=X<12写成VB关系表达式为【1】.答案:x>=1 and x<12 或x<12 and x>=198、声明单精度常量g(重力加速度)代表9.8可写成【1】.答案:const g=9.8 或const single g=9.8100、X=2:Y=8:PRINT X+Y=10的结果是【1】.答案:True101、声明单精度常量P1代表3.14159的语句为【1】.答案:Const PI=3.14159 或Const pi As Single = 3.14159102、VB 6.0的基本表达式包括算术表达式、关系表达式和【1】表达式.答案:逻辑103、表达式93\7 MOD 2^3的值是【1】.答案: 5104、VB6.0的连接运算符包括【1】运算符和【2】运算符两种.答案:(1). & 或+ (2). & 或+105、表达式1 and 0的值【1】.答案:False106、变量min@表示【1】类型的变量.答案:货币数据变量或货币107、当x=2时,语句if x=2 then Print x=2 的结果值是【1】.答案:True108、设x为大于零的实数,则大于x的最小偶数的Visual Basic表达式是【1】. 答案:iif(int(x) mod 2=0,int(x)+2,int(x)+1)109、声明定长为10个字符变量Sstr的语句为【1】.答案:Dim Sstr as String*10 或Sstr as String*10110、表达式(-3) And 8 的值为【1】.答案:True111、Print "x=" & (2=4) 的结果为【1】.答案:x=False1.(1)在设计时,为了把窗体上的某个控件变为活动的,应执行双击该控件。

VB程序填空改错设计题库全汇编

VB程序填空改错设计题库全汇编

VB程序填空改错设计题库全汇编1.'功能:以下程序段用于计算n的阶乘:n!。

(1!=1)2. 已知某城市一年的交通事故车辆报废情况,编程序计算该城市的交通事故一年损失金额。

3. 下面的程序用"冒泡"法将数组a中的10个整数按从小到大排列,请将程序补充完整。

4. '程序运行界面。

键盘输入3个数,将它们按由大到小的顺序输出,-1为结束标志。

5. '在窗体有三个复选框,名称分别为Ch1、Ch2和Ch3,标题依次为'"体育"、"音乐"、"美术",还有一个命令按钮,名称为C1,标题'为"显示"。

要求程序运行后,如果选中某个复选框,则当单击'"显示"命令按钮时,则显示相应的信息。

例如,如果选中"体育"'和"音乐"复选框,则单击"显示"命令按钮后,在窗体上显示'"我的爱好是体育音乐"(如图1所示);而如果选中"体育"、'"音乐"和"美术"复选框,则单击"显示"按钮后,在窗体上显示"'我的爱好是体育音乐美术"。

6. 窗体上建立了一个文本框Text1("输入口令")和一个命令按钮Command1("检查")。

' 判断密码是否正确,并显示相应提示在加载窗体时设置密码框最大长度为8,密码显示字符为“*”7. 下面的程序用于求三个数中最大数8. 要求输入若干学生的成绩,计算平均分和高于平均分的人数,并将这两个数据放入数组的最后。

9. 求A,B,C三个数的最大值。

10. 该程序通过For循环计算一个表达式的值,这个表达式是1/2+2/3+3/4+4/511. 用户单击命令按钮后,程序将文本框Text1中的文本反转显示,同时在文本框Text2中显示文本框Text1中字符串的个数12. 功能:单击“插入数据”按钮后,输入一个整型数据,该数据会被插入到一个有序的数组a(1 to 10)中,插入该数据后数组还是有序的。

VB程序改错40题

VB程序改错40题

第57题(1.0分)题号:465'------------------------------------------------'【程序改错】'------------------------------------------------'题目:用InputBox函数输入一个字符串,编写程序按与' 输入的字符相反的次序用Msgbox函数输出这个字' 符串。

如输入字符串为"abcdefgh",则输出为"h' gfedcba",输出效果如图1。

'------------------------------------------------ Option ExplicitPrivate Sub Command1_Click()Dim pristr As String, outstr As StringDim i As Integerpristr = InputBox("please input a string")'**********FOUND**********For i = 0 To Len(pristr)'**********FOUND**********outstr = outstr + Mid(pristr, Len(pristr) - i) Next i'**********FOUND**********MsgBox outstr, , "The Output Result "End Sub答案:=======(答案1)=======For i = 0 To Len(pristr) - 1=========或=========For i = 0 To -1+Len(pristr)=======(答案2)=======outstr = outstr + Mid(pristr, Len(pristr) - i, 1)=========或=========outstr = Mid(pristr, Len(pristr) - i, 1)+outstr=======(答案3)=======MsgBox outstr, vbQuestion, "The Output Result "第59题(1.0分)题号:147'------------------------------------------------'【程序改错】'------------------------------------------------'题目:下面的程序用来产生并输出图示的杨辉三角。

VB程序改错题

VB程序改错题

VB程序改错题程序改错1.题目:已知C的公式表示如下:'n!'C=------------------'(n-m)!某m!'函数过程fac()求k!函数,在Fomr_Click事件中完成运算,'请修正程序中错误。

'------------------------------------------------OptionE某plicitPrivateFunctionfac(kAInteger)ASingleDim某ASingle,jAInteger 某=0Forj=1Tok某=某^jNe某tjfac=某EndFunctionPrivateSubForm_Click()DimCASingleDimmAInteger,nAIntegerm=Val(InputBo某(\请输入一个整数(m):\n=Val(InputBo某(\请输入一个整数(n):\C=fac(n)/fac(n-m)某fac(m)Print\EndSub2.题目:程序功能为打印下列图形:'某'某某'某某某'某某某某'某某某某某'------------------------------------------------OptionE某plicitPrivateSubForm_Click()ClDimiAIntegerDimjAIntegerFori=1To7Forj=1To5Print\LoopPrintNe某tiEndSub3.题目:本程序的功能是随机产生的10个两位正整数,并进行递减排序。

'------------------------------------------------OptionE某plicitPrivateSubCreateRND()DimTempAIntegerDimIAIntegerDimNAIntegerDim某(10)AIntegerDimJAIntegerN=10Print\数据:\ForI=1ToN某(I)=Int(Rnd()某90)Print某(I);Ne某tIPrintPrint\排序:\ForI=0ToN-1ForJ=I+1ToNIf某(I)>某(J)ThenTemp=某(I)某(J)=某(I)某(I)=TempEndIfNe某tJPrint某(I);Ne某tIPrintEndSub4.题目:随机产生并输出100以内大于50的20个整数,输出时每5个数一行。

vb程序改错和程序设计

vb程序改错和程序设计

【程序改错】'题目:该程序的功能是求出100到200之间的全部素数,并且按每行4个、每个数据之间有10个空格的格式输出。

'注意:不可增加或删除程序行,也不可以更改程序结构' Private Sub Form_Click()dim k as integer,i as integer,j as integerk = 0For i = 100 To 200'**********FOUND**********For j = 1 To i - 1If i Mod j = 0 Then Exit ForNext jIf j = i Then'**********FOUND**********Print i; Tab(10);k = k + 1'**********FOUND**********If k Mod 5 = 0 Then Print;End IfNext iEnd Sub答案:1). For j = 2 To i - 1 或For j = 2 To -1 + i2). Print i; Space(10);3). If k Mod 4 = 0 Then Print━━━━━━━━━━━━━━━━'【程序设计】' '题目:(事件)单击窗体。

(响应)求100以内偶数的和,并将结果输出在窗体上。

将结果存入变量SUM中答案:26__________________________________Dim i As IntegerFor i = 1 To 100If i Mod 2 = 0 Thensum = sum + iEnd IfNextPrint sum'【程序改错】'------------------------------------------------'题目:在下面的程序段中过程pd可以判断任意三个数能' 否构成三角形的三边,利用该过程的判定结果,对能构成三角形的计算其面积,构不成的显示"不能构成三角形Option ExplicitPrivate Sub Form_Click()'**********FOUND**********Dim x%, y%, z%, s%, b As Boolean,h as Singlex = InputBox("请输入三角形的边长")y = InputBox("请输入三角形的边长")z = InputBox("请输入三角形的边长")= InputBox("请输入三角形的边长")b = pd(x, y, z)h = (x + y + z) / 2'**********FOUND**********If not b Thens = Sqr(h * (h - x) * (h - y) * (h - z))Print "三角形面积是"; sElsePrint "不能构成三角形"End IfEnd Sub'**********FOUND**********Public Function pd( ) As BooleanIf x > 0 And y > 0 And z > 0 And x + y > 0 And x + z > y And y + z > x Thenpd = TrueElsepd = FalseEnd IfEnd Function答案:1). Dim ★x%★, ★y%★,★z%★, ★s!★, ★b★As Boolean★, ★h As Single2). If b Then3). Public Function pd(x%, y%, z%) As Boolean━━━━━━━━━━━━━━━━三、程序设计共1题(共计15分)'题目:(事件)双击窗体。

VB程序改错40题含答案

VB程序改错40题含答案

【程序改错】题目:该程序实现将输入的 0 - 255 之间的正整数转换成二进制数Option ExplicitPrivate Sub Form_Click()Const n = 8Dim a(n) As Integer, s As String, m As Integer, x As Integer x = Val(InputBox("请输入一个 0 - 255 之间的正整数:"))Print xFor m = 1 To na(m) = x Mod 2x = x / 2Next ms = " "For m = n To 0 Step -1s = Str(a(m))Next mPrint sEnd Sub答案:=======(答案1)=======For m = 0 To n=======(答案2)=======x= x \ 2=========或=========x= int(x/2)=======(答案3)=======s = s + Str(a(m))第3题(1.0分)题号:463'【程序改错】'题目:以下程序功能是输入三个数,由大到小排序。

Option ExplicitDim A As IntegerDim B As IntegerDim C As IntegerPrivate Sub Form_Click()Dim nTemp As IntegerA = Val(InputBox("Please input first integer", "输入正整数"))B = Val(InputBox("Please input second integer", "输入正整数"))C = Val(InputBox("Please input third integer", "输入正整数"))If A <= C ThennTemp = AA = BB = nTempEnd IfIf B <= C ThennTemp = AA = CC = nTempEnd IfIf A <= B ThennTemp = BB = CC = nTempEnd IfPrint "The integers in order is"; A; B; CEnd Sub答案:=======(答案1)=======If A <= B Then=========或=========If B >= A Then=======(答案2)=======If A <= C Then=========或=========If C >= A Then=======(答案3)=======If B <= C Then=========或=========If C >= B Then第4题(1.0分)题号:127'【程序改错】'题目:下面程序可输出如下图形:' *' ***' *****' *******' *********'------------------------------------------------Option ExplicitPrivate Sub Form_Click()Dim m As Integer, n As Integer, s As String, i As Integer, j As Integer n = 4m = 1s = "*"For i = 5 To 1 Step -1Print Spc(n)For j = 1 To 2 * m - 1Print s;Next jPrintn = n + 1m = m - 1Next iEnd Sub答案:=======(答案1)=======Print Spc(n);=========或=========Print Spc(i);=========或=========? Spc(n);=========或=========? Spc(i);=======(答案2)=======n = n - 1=========或=========n = - 1+n=======(答案3)=======m = m + 1第5题(1.0分)题号:469'【程序改错】'题目:已知一个函数f(x)=1000*sin(x),利用绘图方法' 在图片框中显示其图形。

19VB程序改错题收集(答案在后面)

19VB程序改错题收集(答案在后面)

VB中常见的错误1、运行下面的Visual Basic程序,单击命令按钮Command1,出现如下图所示的提示信息:Private Sub Command1_Click()Dim a As Single, b As Singlea = Val(Text1.Text)b = 10If a >= bb = a * a + 2 * bEnd IfLabel1.Caption = Str(b)End Sub出现该错误的原因是A.If语句缺少Then B.If语句缺少ElseC.变量a的数据类型说明错误D.变量b的数据类型说明错误2、某VB程序的事件过程如下所示:Private Sub Command1_Click ( )Dim a As Integera = Val(Text1.Text)Text1.Text = Str(Int( a ))End Sub运行程序,单击按钮Command1后弹出如下图所示的错误提示。

导致该错误的原因可能是()A.Int函数计算时出现错误B.Val函数应用不正确C.窗体上缺少Text1文本框对象D.变量a数据类型定义错误3、某Visual Basic程序段如下:Dim a(1 To 10) As IntegerDim i As Integera(1) = 1For i = 2 To 10a(i) = a(i - 1) * iNext i运行该程序段,会出现的错误提示为(A)下标越界(B)子程序或函数未定义(C)要求对象(D)溢出Interger类型范围在-32768~32767,而1到10相乘超出这个范围4、某Visual Basic程序如下:Dim a(1 To 10) As IntegerDim i As IntegerFor i = 1 To 10a(i) = i * iNext iList1.AddItem Str(a(i))End Sub运行程序,单击命令按钮Command1后,出现的错误提示为(A)下标越界(B)子程序或函数未定义(C)溢出(D)类型不匹5、有如下的Visual Basic程序:Private Sub Command1_Click()Const pi = 3.14Dim s As Single, r As Singler = Val(text1.Text)pi = 3.1415s = pi * r ^ 2Label1.Caption = "面积为" + Str(s)End Sub程序运行后,单击命令按钮Command1,出现如图所示的错误提示,下列原因分析正确的是(A)常量不能用小数(B)pi是常量,不允许赋值(C)文本框Text1中输入的数据不是常量(D)表达式结果超过了变量类型的范围6、某Visual Basic程序如下:Private Sub Command1_Click()Dim a(1 To 10) As IntegerDim i As IntegerFor i = 1 To 10a(i) = i * iNext iList1.AddItem Str(a(i))End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)For i = 1 To 10(B)a(i) = i * i(C)Next i(D)List1.AddItem Str(a(i))7、某Visual Basic程序如下:Dim a As Single, b As SingleDim c As Singlea = 1b = 5c = Sqr(a - b)Text1.Text = Str(c)End Sub运行程序,单击命令按钮Command1后弹出如图所示的出错信息提示,此时程序正执行的语句是(A)a = 1(B)b = 5(C)c = Sqr(a - b)(D)Text1.Text = Str(c)8、某同学正编写一个判断酒驾行为的Visual Basic程序,其窗体和代码窗口如下图所示。

上海海事大学VB期末考试复习题(有详细解答过程)

上海海事大学VB期末考试复习题(有详细解答过程)

第1单元 Visual Basic 程序设计概述1、以下____为标准模块程序文件的扩展名。

A 、.basB 、.clsC 、.frmD 、.res 2、以下说法正确的是____。

A .窗体文件的扩展名为.frmB .一个窗体可对应多个窗体文件C .Visual Basic 中的一个工程只包含一个窗体D .Visual Basic 中的一个工程最多可以包含256个窗体文件 3、Visual Basic 菜单中的“新建工程”命令是____。

A .可以直接执行的命令B .通过对话框执行的命令C .位于“编辑”菜单下D .快捷键为Ctrl+D 4、运行程序的快捷键为____。

A .F10B .F4C .F5D .Ctrl 5、以下说法不正确的是____。

A .标准模块附属于窗体B .标准模块由程序代码组成C .标准模块也称程序模块文件,扩展名为.basD .标准模块用来声明全局变量和定义一些通用的过程 6、以下可用于启动Visual Basic 的方法是__。

A .打开“我的电脑”找到存放Visual Basic 系统文件的硬盘及文件夹双击VB6.0EXE 图标B .执行“开始”菜单中的“运行”命令,输入 Visual Basic 可执行文件的路径及文件名C .利用“开始”菜单中的“程序”命令方式D .以上选项均正确7、以下为纯代码文件的是____。

A 、工程文件B 、窗体文件C 、标准模块文件D 、资源文件 8、以下说法不正确的是____。

A .Visual Basic 是面向过程的编程语言 B .Visual Basic 是一种可视化编程工具 C .Visual Basic 是结构化程序设计语言 D .Visual Basic 采用事件驱动编程机制 9、Visual Basic 的窗体设计器主要是用来_。

A .建立用户界面B .设计窗体的布局C .编写程序源代码D .添加图形、图像、数据等控件 12、以下为窗体文件扩展名的是:_______。

版上海海事大学VB题库——改错

版上海海事大学VB题库——改错

改错〖第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 8s = s + fact(i)Next iPrint sEnd Sub'**********FOUND**********Public Function fact( )dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********FOUND**********fact=iEnd Function答案:1)、For i = 2 To 8 Step 22)、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 8s = s + fact(i)Next iPrint sEnd Sub'**********FOUND**********Public Function fact( )dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********FOUND**********fact=iEnd Function答案:1)、For i = 2 To 8 Step 22)、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整除。

【word版】上海海事大学VB题库——改错

【word版】上海海事大学VB题库——改错

改错[(第1题》『程序改错」(5分)(题号:132)【程序改错】'题目:求s二2!+4X6!+8!,阶乘的计算用Function过程'fact实现'注意:不可增加或删除程序行,也不可以更改程序结构J _____________________ ___ _____________________________ _ ___________________________________ Private Sub Form_Click()dim i as integer,s as Long'**********F0UND**********For i = 2 To 8s = s + fact (i)Next iPrint sEnd Sub'**********F0UND**********Public Function fact()dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********F0UND**********fact=iEnd Function答案:1). For i = 2 To 8 Step 22). Public Function fact(ByVai n As Integer) 或Public Function Integer) 或Public Function fact(n%) 或Public Function fact(n) Function fact(ByVai n%) 或Public Function fact(ByVai n)3). fact = tK第1题》『程序改错」(5分)(题号:132)【程序改错】'题目:求s二2!+4!+6!+8!,阶乘的计算用Function 11程'fact实现'注意:不可增加或删除程序行,也不可以更改程序结构Private Sub Form_Click() fact(n As 或Publicdim i as integer, s as Long'**********F0UND**********For i = 2 To 8s = s + fact (i)Next iPrint sEnd Sub':fc*********F0UND**********Public Function fact()dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********F0UND**********fact=iEnd Function答案:1). For i = 2 To 8 Step 22). Public Function fact(ByVai n As Integer) 或Public Function fact(n As Integer) 或Public Function fact(n%) 或Public Function fact(n) 或Public Function fact(ByVai n%) 或Public Function fact(ByVai n)3). fact = tK第1题》『程序改错」(5分)(题号:493)【程序改错】'题目:给左年号与月份,判断该年是否闰年,并根据给出的 '月份来判断是什么季节和该月有多少天'(闰年的条件是:年号能被4整除但不能被100整除,'或者能被400整除°) '注意:不可增加或删除程序行,也不可以更改程序结构Private Sub Form_Click()Dim Year As Integer, Month As IntegerYear = InputBox(/z输入年号:")Month = InputBox(/z输入月份:“)'**********F0UND**********If Year Mod 4 = 0 And Year Mod 100 <> 0 And Year Mod 400 <> 0 Then'**********FO UND**********flag = 0MsgBox "闰年"Elseflag = 0MsgBox "非闰年"End If'**********FO UND**********Select Case flagCase 1MsgBox "该月有31天,春季"Case 2If flag 二1 Then MsgBox "该月有29 天,春季"Else MsgBox 〃该月有28 天,春季"Case 3MsgBox "该月有31天,春季"Case 4MsgBox "该月有30天,夏季"Case 5MsgBox "该月有31天,夏季"Case 6MsgBox "该月有30天,夏季"Case 7MsgBox该月有31天,秋季"Case 8MsgBox "该月有31天,秋季"Case 9MsgBox "该月有30天,秋季"Case 10MsgBox "该月有31天,冬季"Case 11MsgBox "该月有30天,冬季"Case 12MsgBox该月有31天,冬季"End SelectEnd Sub答案:1) . If Year Mod 4 = 0 And Year Mod 100 <> 0 Or Year Mod 400 = 0 Then 或If YearMod 400 = 0 Or Year Mod 4 = 0 And Year Mod 100 <> 0 Then2) . Flag = 13) . Select Case MonthK第2题』『程序改错」(5分)(题号:119)【程序改错】'题目:在下面的程序段中过程pd可以判断任意三个数能'否构成三角形的三边,利用该过程的判泄结果,'对能构成三角形的讣算其而积,构不成的显示"'不能构成三角形〃 '注意:不可增加或删除程序行,也不可以更改程序结构Option ExplicitPrivate Sub Form_Click()':fc*********FOUND**********Dim x%, y%, z%, s%, b As Boolean, h As SingleX = InputBox C请输入三角形的边长")y = InputBox C请输入三角形的边长")z = InputBox C请输入三角形的边长")b = pd(x, y, z)h = (x + y + z) / 2'客*********FOUND**********If Not b Thens = Sqr (h * (h - x) * (h - y) * (h - z))Print "三角形而积是";sElsePrint "不能构成三角形"End IfEnd Sub'**********FOUND**********Public Function pd() As BooleanIf x > 0 And y > 0 And z > 0 And x + y > z And x + z > y And y + z > x Then pd = TrueElsepd = FalseEnd IfEnd Function答案:1). Dim ★矗★,z%*, ! ★,As Boolean^, ★h As Single 或Dim ★x%^,★ z%*, as Singled,As Boolean*, As Single2). If b Then 或If b=true Then3). 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 K第3题]]『程序改错」(5分)(题号:134)【程序改错】'题目:程序功能根拯输入的学习成绩,分别显示优秀'(90分以上),良好(75分以上),及格(60分以上) ',不及格几个等级.'注意:不可增加或删除程序行,也不可以更改程序结构Private Sub Formed ick()CisDim i As Integeri二InputBox C请输入学习成绩")Select Case I':fc*********FOUND**********Case 0<I<100MsgBox 〃成绩应该在0—100之间"'**********FOUND**********Case 90Print "优秀”Case 75 To 90Print ?,良好"Case 60 To 75Print "及格"'**********FOUND**********CaseMsgBox "不及格",vbCriticalEnd SelectEnd Sub答案:1). Case ★! > 100 ★or* i < 0 或Case ★100 < i★orik* i〈0 或Case ★! > 100 ★or* 0>i 或Case ★100 < i ★or* 0>i2). Case 90 To 1003). Case elseK第4题』『程序改错〕(5分)(题号:481)【程序改错】'题目:下而程序的功能是将一个整数转化为数值字符串, '列如123,转化为"+123",-123转化为“-123”'注意:不可增加或删除程序行,也不可以更改程序结构9 _____________________________ _________________________________________________________________________________Private Function NtoC(ByVai n As Single)Dim sign As Boolean, i%, a%, count%, temp%(100)Dim strc As Stringsign = False'**********F0UND**********If n < 0 Then sign = Falsen = Abs(n)Do Wh:ile n > 0'客*********F0UND**********a = n / 10n = n \ 10'**********FO UND**********count = 1temp(count) = aLoopIf sign Then strc = 〃- " Else strc =For i = count To 1 Step -1strc = strc + Chr(Asc("0") + temp(i))Next iNtoC = strcEnd FunctionPrivate Sub Commandl_Click()Print NtoC(-123)End Sub答案:1). If n 〈0 Then sign = True2). a = n Mod 103). count = count + 1 或count = 1 + count K第1题』『程序改错」(5分)(题号:132)【程序改错】'题目:求s=2!+4!+6!+8!,阶乘的计算用Function 程'fact实现'注意:不可增加或删除程序行,也不可以更改程序结构Private Sub Form_Click() dim i as integer, s as Long '**********F0UND********** For i = 2 To 8s = s + fact (i)Next iPrint sEnd Sub'**********F0UND********** Public Function fact() dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'客*********FOUND**********fact=iEnd Function答案:1). For i = 2 To 8 Step 22). Public Function fact(ByVai n As Integer) 或Public Function fact(n AsInteger)或Public Function fact(n%) 或Public Function fact(n) 或Public Function fact(ByVai n%)或Public Function fact(ByVai n)3). feet = t。

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

改错〖第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 8s = s + fact(i)Next iPrint sEnd Sub'**********FOUND**********Public Function fact( )dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********FOUND**********fact=iEnd Function答案:1). For i = 2 To 8 Step 22). 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 8s = s + fact(i)Next iPrint sEnd Sub'**********FOUND**********Public Function fact( )dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********FOUND**********fact=iEnd Function答案:1). For i = 2 To 8 Step 22). 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 IntegerYear = InputBox("输入年号:")Month = InputBox("输入月份:")'**********FOUND**********If Year Mod 4 = 0 And Year Mod 100 <> 0 And Year Mod 400 <> 0 Then'**********FOUND**********flag = 0MsgBox "闰年"Elseflag = 0MsgBox "非闰年"End If'**********FOUND**********Select Case flagCase 1MsgBox "该月有31天,春季"Case 2If flag = 1 Then MsgBox "该月有29天,春季" Else MsgBox "该月有28天,春季"Case 3MsgBox "该月有31天,春季"Case 4MsgBox "该月有30天,夏季"Case 5MsgBox "该月有31天,夏季"Case 6MsgBox "该月有30天,夏季"Case 7MsgBox "该月有31天,秋季"Case 8MsgBox "该月有31天,秋季"Case 9MsgBox "该月有30天,秋季"Case 10MsgBox "该月有31天,冬季"Case 11MsgBox "该月有30天,冬季"Case 12MsgBox "该月有31天,冬季"End SelectEnd 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 Then2). Flag = 13). Select Case Month〖第2题〗『程序改错』(5分)(题号:119)'------------------------------------------------'【程序改错】'------------------------------------------------'题目:在下面的程序段中过程pd可以判断任意三个数能' 否构成三角形的三边,利用该过程的判定结果,' 对能构成三角形的计算其面积,构不成的显示"' 不能构成三角形"'------------------------------------------------'注意:不可增加或删除程序行,也不可以更改程序结构'------------------------------------------------Option ExplicitPrivate Sub Form_Click()'**********FOUND**********Dim x%, y%, z%, s%, b As Boolean, h As Singlex = InputBox("请输入三角形的边长")y = InputBox("请输入三角形的边长")z = InputBox("请输入三角形的边长")b = pd(x, y, z)h = (x + y + z) / 2'**********FOUND**********If Not b Thens = Sqr(h * (h - x) * (h - y) * (h - z))Print "三角形面积是"; sElsePrint "不能构成三角形"End IfEnd Sub'**********FOUND**********Public Function pd() As BooleanIf x > 0 And y > 0 And z > 0 And x + y > z And x + z > y And y + z > x Thenpd = TrueElsepd = FalseEnd IfEnd 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 Single2). If b Then 或If b=true Then3). 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()ClsDim i As Integeri = InputBox("请输入学习成绩")Select Case I'**********FOUND**********Case 0<I<100MsgBox "成绩应该在0--100之间"'**********FOUND**********Case 90Print "优秀"Case 75 To 90Print "良好"Case 60 To 75Print "及格"'**********FOUND**********CaseMsgBox "不及格", vbCriticalEnd SelectEnd Sub答案:1). Case ★i > 100 ★or★i < 0 或Case ★100 < i ★or★i < 0 或Case ★i > 100 ★or★0>i 或Case ★100 < i ★or★0>i2). Case 90 To 1003). 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 Stringsign = False'**********FOUND**********If n < 0 Then sign = Falsen = Abs(n)Do While n > 0'**********FOUND**********a = n / 10n = n \ 10'**********FOUND**********count = 1temp(count) = aLoopIf sign Then strc = "- " Else strc = "+"For i = count To 1 Step -1strc = strc + Chr(Asc("0") + temp(i))Next iNtoC = strcEnd FunctionPrivate Sub Command1_Click()Print NtoC(-123)End Sub答案:1). If n < 0 Then sign = True2). a = n Mod 103). 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 8s = s + fact(i)Next iPrint sEnd Sub'**********FOUND**********Public Function fact( )dim t as Longdim i as integert = 1For i = 1 To nt = t * iNext I'**********FOUND**********fact=iEnd Function答案:1). For i = 2 To 8 Step 22). 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。

相关文档
最新文档