Visual Basic程序设计课后习题答案_第1页
Visual Basic程序设计课后习题答案_第2页
Visual Basic程序设计课后习题答案_第3页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

填空题

习题1VisualBasic是一种面向 的可视化程序设计语言,采取了 的编程制。VisualBasic的对象主要分为 和 两大类。在VisualBasic中,用来描述一个对象外部特征的量称之为对象的 。在VisualBasic中,设置或修改一个对象的属性的方法有两种,它们分别是: 和 。在VisualBasic中,每个对象一般都能感知和接收多个不同的事件,并能对这些事件作出响应,其响应方式就是通过调用执行一个与之相对应的 来实现的在VisualBasic中事件过程的名字由 、 和 所构成。VisualBasic的集成开发环境主要由6个部分组成,它们分别是: 、、 、 、 、 。简答题VisualBasic的特点什么是对象的属性、事件和方法?VisualBasic???习题2“ASDF”&O78“1234.5”&H123#2004/10/7#TrueT100#-1123!π345.54#下列数据哪些是变量,哪些是常量?是什么类型的常量?Name“120”“name”n“ASDF”&O78“1234.5”&H123#2004/10/7#TrueT100#-1123!π345.54#下列数据哪些是变量,哪些是常量?是什么类型的常量?Name“120”“name”nFalse#11/12/2004#ff“11/16/99”12.345cj下列符号中,哪些可以是VisualBasic的合法变量名?A123a12_3123_aa,123a123IntegerXYZFalseSin(x)变量名sinxπ4把下列数学表达式写成VisualBasic表达式:0x 3y(1)|xy10x 3y

b24acb24acb(3)

xy1111

(4)

xyxy1

e10

ln10(5)(6)写出下列表达式的值:(1)123+23Mod10\7+Asc("A")(2)Int(68.555*100+0.5)/100(3)#11/22/2004#-10(4)"ZXY"&123&"abc"a=7,b=3,c=4,求下列表达式的值:(1)a+3*c (2)a^2/4(3)a/2+3\2 (4)aMod3+b^3/c\5写出下列函数的值:(1)Int(-3.14159) (2)Fix(-3.14159)(3)Sqr(Sqr(81)) (4)Len("VisualBasic(5)Int(Abs(99-100)/2) (6)Sgn(7*3+2)(7)LCase("HellowVB!") (8)Mid("HellowVB!",4,3)(9)Left("HellowVB!",3) (10)Val("1623个")(11)Str(-459.55) (12)UCase("VisualBasic")选择题可以同时删除字符串前导和尾部空格的函数是 。A.Ltrim B.Rtrim C.Trim D.Mid函数Int(Rnd(1)*是在哪个范围产生随机整数 。A.(0,1) B.(0,9) C.(1,10) D.(1,9)数学式子sin25º写成VisualBasic表达式是 。A.Sin25 B.Sin(25) C.Sin(25º) D.Sin(25*3.14/180)(4)表达式16/4–2^3*8/4Mod5\2的值是 。A.14 B.4 C.20 D.2(5)数学关系式3x10表示成正确的VB表达式为 。A.3<=x<10 B.x>=3AndC.x>=3Orx<10 D.3<=xAnd<10(6)已知A=”12345678”,则表达式Val(Left(a,4)+Mid(a,4,的值是 。A.123456 B.123445 C.8 D.6表达式Len("123程序设计ABC")的值是 。A.10 B.14 C.20 D.17表达式LenB("123程序设计ABC")的值是 。A.10 B.14 C.20 D.17下面正确的赋值语句是 。A.x+y=30 B.y=x+30 C.y=π*r*r D.3y=x+1为了给三个变量赋初值1,正确的赋值语句是 。A.x=1:y=1:z=1 B.x=1,y=1,z=1 C.x=y=z=1 D.x,y,z=1赋值语句g=123+Mid("123456",3,执行后,变量g中的值是 。A.“12334” B.123 C.12334 D.157(12)赋值语句g=123&Mid("123456",3,执行后,变量g中的值是 。A.“12334” B.123 C.12334 D.157如果x是一个正实数,对x的第3位小数四舍五入的表达式是 。A.0.01*Int(x+0.005) B.0.01*Int(100*(x+0.005))C.0.01*Int(100*(x+0.05)) D.0.01*Int(x+0.05)下列哪组语句可以将变量a,b的值互换 。A.a=b:b=a B.a=a+b:b=a-b:a=a-bC.a=c:c=b:b=a D.a=(a+b)/2:b=(a-b)/2下列四个字符串进行比较,最小的是 。A.“9977” B.“B123” C.“Basic” D.“DATA”下列逻辑表达式中,其值为True的是 。A.“b”>“ABC” B.>“THE” C.9>“H” D.“A”>“a”表达式a+b=c是 。赋值表达式 B.字符表达式 C.算术表达式 D.关系表达式在下列表达式中,非法的是 。A.a=b+c B.a>b+c C.a≠b>c D.a<b+c语句PrintFormat(“HELLO”,“<”)的输出结果是 。A.HELLO B.hello C.He D.heMsgBox函数的返回值的类型是 。整数 B.字符串 C.逻辑值 D.日期用语句DimA(-3to5)AsLong定义的数组元素个数是 。A.7 B.8 C.9 D.10用语句DimA(3,-3toto6)AsLong定义的数组元素个数是 。A.12 B.27 C.64 D.80程序阅读题(1)执行下面程序段后,变量c$的值为 。aVisualBasicb我们"c$=b&"喜欢"&UCase(Mid(a,10,5))(2)执行下面程序显示的结果是 。PrivateSubForm_Click()DimxAsx=Int(Rnd)+4SelectCasexCase5Print优秀Case4Print良好Case3Print"及格"CaseElsePrint"不及格"EndSelectEndSub(3)执行下面程序段后,变量x的值为 。DimxAsx=5Fori=1To20Stepx=x+i\5Nexti(4)执行下面程序后,输出的结果是 。PrivateSubDimxAsIntegerFori=1To3Forj=1ToiFork=jTo3x=x+NextkNextjNextiPrintxEndSub(5)执行下面程序后,输出的结果是 。PrivateSubForm_Click()DimxAsx=0DoWhilex<50x=(x+2)*(x+n=n+1LoopPrint"x=";x;"n=";EndSub(6)执行下面程序后,输出的结果是 。PrivateSubForm_Click()DimxAsInteger,aAsx=0Forj=1Toa=a+jNextjx=jPrintx,aEndSub(7)以下程序的循环次数是 。Forj=8To35StepPrintj;Nextj(8)执行下面程序输入4后,程序输出的结果是 。PrivateSubx=InputBox(x)Ifx^2<15Theny=1/xIfx^2>15Theny=x^2+PrintyEndSub(9)执行下面程序后,输出的结果是 。PrivateSubDimsumAsIntegersum%=19sum=2.23Printsum%;EndSub(10)执行下面程序后,输出的结果是 。PrivateSuba=100Dos=s+aa=a+LoopUntila>PrintaEndSub(11)执行下面程序后,输出的结果是 。PrivateSuba="ABCD"b="efgh"c=LCase(a)d=Printc+dEndSub执行下面程序后,输出的结果是 。PrivateSubx=2:y=4:z=6x=y:y=z:z=Printx;y;zEndSub执行下面程序后,输出的结果是 。PrivateSubDimcountAsIntegercount=0Whilecount<20count=count+WendPrintEndSub执行下面程序后,输出的结果是 。PrivateSuba="*":b="$"Fork=1To3x=Str(Len(a)+k)&Printx;NextkEndSub执行下面程序后,输出的结果是 。PrivateSubk=0:a=0DoWhilek<k=k+2k=k*k+a=a+kLoopPrintaEndSub执行下面程序后,输出的结果是 。PrivateSubForm_Click()DimM(10)AsLong,N(10)Asi=3Fort=1ToM(t)=tN(i)=2*i+NexttPrintN(i);EndSubA.3 11 B.3 15 C.11 13 D.15 3执行下面程序后,输出的结果是 。PrivateSubDima()a=Array(1,2,3,4)j=1Fori=3To0Steps=s+a(i)*jj=j*NextiPrintsEndSubA.1234 B.4321 C.12 D.34执行下面程序后,输出的结果是 。PrivateSubDimM(10)Fork=1ToM(k)=11-kNextx=6PrintM(2+EndSubA.2 B.3 C.4 D.5执行下面程序后,输出的结果是 。PrivateSubForm_Click()Dima(10)AsInteger,p(3)Ask=5Fori=1Toa(i)=iNextiFori=1Top(i)=a(i*i)NextiFori=1To3k=k+p(i)*NextiPrintkEndSubA.33 B.28 C.35 D.37执行下面程序后,输出的结果是 。PrivateSubForm_Click()Dima(10,10)AsFori=2To4Forj=4Toa(i,j)=i*jNextjNextiPrinta(2,5)+a(3,4)+a(4,5)EndSubA.22 B.42 C.32 D.52填空题填空,使得程序运行后,能在窗体上打印如图所示的图案。PrivateSubPrintFori=1To4PrintTab(8-Forj=1To8Print"*";(1)PrintNextiEnd10个(1~100)5整除的数并求其和,请用正确的内容填空。PrivateSubForm_Click()DimsumAsInteger,xAsFori=1To10x=Int(Rnd*100+1)If (2) =0sum=sum+xPrint"x=";EndIfNextiIfsum<>0ThenPrint"sum=";EndIfEndSub用正确的内容填空,使得以下程序能够找出50数。PrivateSubForm_Click()DimaAsInteger,bAsDimcAsSingleFora=1ToForb=aToc=Sqr(a^2+b^2)If (3) ThenPrinta,b,NextbNextaEndSub(4)用正确的内容填空,使得以下程序能够计算1+1/3+1/5++1/(2N+1)1/(2N+1)。PrivateSubsum=1:n=1Don=n+2temp=1/sum=sum+tempIftemp<0.00001Then (4) LoopPrint"N=";nPrint"sum=";sumEndSub77位评委对某选手的打能正确运行。PrivateSubsum=0Fori=1To7cj&i&录入Ifi1ThenMax=Min=cjElseIfMin>cjMin=cjElseIfMax<cjMax=cjEndEndIfsum=sum+Nextiaver= (5) Print"该选手的成绩为:",averEndSub50内容填空。PrivateSubDima(1To6)AsIntegerRandomizeFori=1Ton= (6) a(n)=a(n)+NextiFori=1To6Printi;点出现a(i);次NextiEndSub编程题1~10035同时整除的数打印出来,并统计其个数。140.7516亿。100~2003整除的自然数。(4) s=1+(1+2)+(1+2+3)+……+(1+2+3+……+n)的值。编写程序计算S10-5Print输出计算结果。其中:S11

1

(1)k112 3 4 K假设某项税收的规定如下:500元以内,免征;500~10005003%;10004%;20005%试编程实现上述操作。编写程序,用InputBox3个正整数,打印其中最大的数。编写程序,任意输入三个整数A,B,C,按由大到小顺序把它们打印出来。x3 x5 x2n1编写程序,计算绝对值小于10-8

sinxx

(1)n

(2n1)!

直到第n项的分别编写两个程序,在窗体上分别打印出如下所示的图形。编写程序,输出10006、36=1+2+36是完数。一只小球从10408次落地时,共计经过了多少米?1008178+17=2517-8=9都是平方数,则817就称为自然数对。100~999之间的所有“水仙花数153编写程序,在窗体上打印下图所示的“数字金字塔50出所有可能的兑换方案。编写程序,建立并输出一个10×10的矩阵,该矩阵两条对角线上的元素为10。一、选择题

习题3窗体的标题条显示内容由窗体对象( )属性决定。A.BackColor B.BackStyle C.Text D.Caption窗体的示意图标可( )属性来设置。A.Picture B.Image C.Icon D.MouseIcon若要取消窗体的最大化功能,则可设( )属性为False来实现。A.ControlBox B.MinButton C.MaxButton D.Enabled窗体的风格由窗体对象( 属性来设置。A.BackStyle B.BorderStyle C.WindowState D.FillStyle若要以程序代码方式设置在窗体中显示文本的字体大小,则可用窗体对象( )属来实现。A.FontName B.Font C.FontSize D.FontBold若要设置文本的显示颜色,则可( )属性来实现。A.BackColor B.ForeColor C.FillColor D.BackStyle若要使用窗体启动时,位于屏幕的中间,则可通( )属性来设置。A.Top B.Left C.StartUpPosition D.WindowState若要禁止窗体被移动,则可设置窗体( )属性为False来实现。A.Move B.Moveable C.MinButton D.ControlBox若要将窗体隐藏起来,则实现的方法( )A.Hide B.UnLoad C.Show D.WindowState(10)命令钮的标题文字( )属性来设置。A.Text B.Caption C.Name D.(名)(11)命令按钮标题文字的下划线,可通( )符号来设置A.\< B.& C._ D\>若要将某命令按钮设置为默认命令钮,则可设( )属性为True来实现。A.Value B.Cancel C.Default D.Enable (13)若要设置命令钮的工具提示,则可通( )属性来设置。A.Caption B.Text C.Value D.ToolTipText若要使用某命令按钮获得控制焦点,则可使( )方法来设置。A.Refresh B.SetFocus C.GotFocus D.()属性的取值来实现。A.Visible B.Enabled C.Default D.Value在运行时,若要调用某命令钮的Click事件过程,则可设置该命令按钮对象( 性为True来实现。A.Enabled B.Value C.Default D.(17)标签框的边框,( )属性的设置值决定。A.BorderStyle B.BackStyle C.BackColor D.AutoSize若要使用标签框的大小自动与所显示的文本相适应,则可通过设置( )属性的值True来实现。A.AutoSize B.Alignment C.Appearance D.Visible若要设置或返回文本框中的文本,则可通过文本框对象( 属性来实现。A.Caption B.Text C.(名称) D.Name若要使用文本框成为只读文本框,可通过设( )属性值为True来实现。A.ReadOnly B.Lock C.Locked D.Enabled(21)若要设置定时器控件的定时时间,可通( 属性来设置A.Interval B.Value C.Enabled D. Text若要多列显示列表项,可通过设置列表框对象( 属性来实现。A.Columns B.MultiSelect C.Style D.(23)若要获知当前列表项的数目,可通过访( )属性来实现。A.List B.ListIndex C.ListCount D.Text若要向列表框新增列表项,则可使用的方法( )。A.Add B.Remove C.Clear D.AddItem若要清除列表框的内容,可使( )方法来实现。A.Add B.Remove C.Clear D.AddItem(26)在3种不同风格的组合框中,用户不能输入数据的组合框( A.下拉式组合框 B.简单组合框 C.下拉式列表框复选框或单选框的当前状态通( 属性来设置或访问。A.Value B. Checked C.Selected D.(28)下列控件中,没有Caption属性的( )。A.框架 B.列表框 C.复选框 D.单选按钮复选框的Value属性为1时,表( )。复选框未被选中 B.复选框被选中C.复选框内有灰色的勾 D.复选框操作错误用来设置粗字体的属性( )。A.FontItalic B.FontName C.FontBold D.FontSize将数据项“China”添加到列表框List1中,成为第一项应使( 语句。A.List1.AddItem“China”,0 B.List1.AddItem“China”,1C.List1.AddItem0,“China” D.List1.AddItem1,“China”Interval1000,Enabled计算机将发出()Beep声。PrivateSubTimer1_Timer()Fori=1ToBeepNextiEndSubA.1000次 B.10000次 C.5次 D.以上都不对如果每0.5秒产生一个计时器事件,那么时钟控件的Interval属性应设为( 。A.5 B.50 C.500 D.5000将命令按钮Command1的标题复制到文本框控件作为显示文本,应执行( 。A.Text1=Command1 B.Text1=Command1.CaptionC.Text1.text=Command1.Caption D.Text1.Text=CStr(Command1)表示滚动条控件取值范围最大值的属性是( 。A.Max B.LargeChange C.Value D.Max-Min二、填空题复选框的 属性设置为2-Grayed时,将变为灰色,禁止用户使用。VisualBasic中有一种控件组合了文本框和列表框的特点,这种控件是 。为了在程序运行时把d:\pic文件夹中的图形文件a.jpg装入图片框Picture1,所使用的句为 。计时器控件能有规律地以一定的时间间隔触发 事件并执行该事件过程中程序代码。若要求输入密码时文本框中只显示*号,则应当在文本框的属性窗口中设置 性。图像框和图片框在使用时有所不同这两个控件中能作为容器容纳其它控件的是 。单击滚动条边的箭头时,滚动条默认滚动值为1,为了实现单击滚动条边的箭头时,动条的滚动值为2,需要将其 属性设置为。滚动条响应的重要事件有 和Change,滚动条产生 Change事件是因改变了。列表框中的 和 属性是数组。Command1Text1Command1为禁用(灰色Command1变为可用。请在空白处填入适当的内容,将程序补充完整。PrivateSubForm_Load()Command1.Enabled=FalseEndSubPrivateSubText1_ Command1.Enabled=TrueEndSub三、编程题FormLoadInputbox33MsgBox显示出来。(TEXT1)中书输入圆的半径值后,单击“计算面积”按钮(COMMAND2)框(TEXT2)中。请将控件的相关事件代码编写出来,以完成上述各功能。下图所示的界面,在图示的文本框中输入33个文本框中。GoodBy设计一程序界面如图示,程序运行时,拖动滚动条便可以改变颜色区的背景色。的初始时间,点击“开始倒计时”按钮就开始倒计时。名时,这个城市名显示在右侧列表框中设计如下图所示的程序界面,实现计算两个整数的最大公约数功能。除、幂次方及余数。当用户输入数据时,会马上更新运算结果,界面如下图所示:输入两点坐标,在图片框中显示两点的连线并计算两点间的距离。习题41程序阅读题Sub过程:SubS(xAsSingle,yAst=xx=t/yy=tModEndSub在窗体上添加一个命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimaAsSingleDimbAsa=5:b=4Sa,bPrinta,EndSub程序运行时,单击命令按钮得到的结果是 。A.5,4 B.1,1 C.1.25,4 D.1.25,1在在窗体上添加一个命令按钮Command1和一个文本框过程:PrivateSubCommand1_Click()DimxAsInteger,yAsInteger,zAsx=5y=7z=0Text1.Text=Callp1(x,y,z)Text1.Text=Str(z)EndSubPrivateSubp1(ByValaAsInteger,ByValbAsInteger,cAsc=a+bEndSub程序运行后,单击命令按钮得到的结果是 。A.0 B.12 C.Str(z) D.没有显示假定有以下函数过程:FunctionFun(SAsString)AsDims1AsStringFori=1ToLen(S)s1=UCase(Mid(S,i,1))+NextiFun=s1EndFunction在窗体上添加一个命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()Dimstr1AsString,str2AsStringstr1=InputBox("请输入一个字符串")str2=Fun(str1)Printstr2EndSub程序运行后,单击命令按钮,如果在输入对话框中输入字符串abcdeg,单击确定钮后程序在窗体上输出结果为 。A.abcdefg B.gfedcba C.ABCDEFG D.GFEDCBACommand1Label1Label2签,然后编写如下事件过程:PrivateXAsIntegerPrivateSubCommand1_Click()X=5:y=3Callproc(X,y)Label1.Caption=XLabel2.Caption=yEndSubSubproc(ByValaAsInteger,ByValbAsInteger)X=a*y=b+bEndSub程序运行后,单击命令按钮,则两个标签中显示的内容分别是 。A.5和3 B.25和3 C.25和6 D.5和6(5)下列程序输出结果为 。PrivateSubCommand1_Click()Fori=1To10GetValueiNextiPrintGetValue(i)EndSubPrivateFunctionGetValue(ByValaAsStaticSAsIntegerS=S+aGetValue=SEndFunctionA.10 B.65 C.66 D.11(6)以下程序的运行结果是: 。Functionf(mAsInteger)Asb=1StaticcAsb=b+1c=c+1f=m*b*cEndFunctionPrivateSubCommand1_Click()DimaAsa=2Sum=0Fori=1To3Sum=Sum+NextiPrintSumEndSubA.24 B.12 C.28 D.32(7)以下程序的运行结果是: 。DimxAsInteger,yAsInteger,zAsSubs1(aAsInteger,bAsInteger)DimcAsa=2*ab=b+c=a+bEndSubSubs2(aAsInteger,ByValbAsInteger)DimcAsa=2*ab=b+c=a+bEndSubPrivateSubCommand1_Click()x=4y=4z=6Calls1(x,y)Printx+y+Calls2(x,y)Printx+y+zEndSubA.24 28 B.20 28 C.20 18 D.20 20(8)以下程序的运行结果是: 。Subs1(b()AsInteger)Fori=1Tob(i)=2*iNextiEndSubPrivateSubCommand1_Click()Dima(1To4)AsIntegerFori=1Toa(i)=i+5Nextis1a()Fori=1ToPrinta(i);NextiEndSubA.6789 B.12141618 C.2468 D.12342填空题Form1Form2Form1Form1上有一命令按钮Command1体Form2,请将程序补充完整。PrivateSubCommand1_Click()Form1Form2.EndSubform1form2,一个标准模块module1,设在form1aamodule1bb。Subaa(x,y,z)z=x*x+y*EndSubSubbb(x,y,z)z=x^3+y^EndSubform1text3text4中,请填空完成调用语句。PrivateSubCommand1_Click()a=Val(Text1.Text)b=CallText3.Text=c1bbText4.Text=c2EndSubform1CommonDialog1,程序运行时,首先使用CommonDialog1打开一个标准颜色对话框,用于设置对象颜色,其次使用CommonDialog1PrivateSubForm_Load()CommonDialog1.Action=3Text1.BackColor=CommonDialog1.ColorCommonDialog1. =4Text1.FontName=CommonDialog1.FontNameText1.FontSize=CommonDialog1. EndSub编写一个求最大公约数的函数,并调用该函数,程序如下:PrivateSubCommand1_Click()DimxAsInteger,yAsInteger,zAsx=96y=64z=PrintzEndSubFunctiongcd(ByValaAsInteger,ByValbAsInteger)AsDimrAsIntegerDoWhileb<>r=aModba=b:Loopgcd=aEndFunction已知菲波纳契数列具有如下递推关系:f1f21fnfnfn2PrivateSubCommand1_Click()

n3a%=x=fib(a)PrintxEndSubFunctionSelectCasen%Case1fib=1Case2fib=1CaseElsefib=EndSelectEndFunction已知函数sum(kn)

2k

nkPrivateSubCommand1_Click()DimkAsInteger,iAsInteger,sAsn=5k=1Fori=1Tons=s+pow( NextiSum=sPrintEndSubFunctionpow(aAsInteger,bAsInteger)AsDimiAsInteger,tAsLongt=1Fori=1ToaNextipow=EndFunction3编程题0~6数字,显示汉英对照输出星期的函数过程。Function过程。输入一个数,判断其奇偶性。编写求两数中的较大数的函数过程,求多个数的较大数。编写计算契比雪夫多项式的Function过程,其定义如下:n0T(n,x)x n12xT(nx)t(nx) n2选择题

习题5菜单编辑器中,哪一个选项输入希望在菜单栏上显示的文本()标题 B.名称 C.索引 D.访问键下面哪个属性可以控制菜单项可见或不可见()A.Hide B.Checked C.Visible D.Enabled下面说法不正确的()下拉菜单和弹出式菜单都是由菜单编辑器创建的5级子菜单下拉菜单中的菜单项不可以作为弹出式菜单显示控制下拉菜单项是否可用,由菜单编辑器中的有效属性设置菜单控件只有一个事件()A.MouseUp B.Click C.DBClick D.KeyPress下面说法不正确的是()顶层菜单不允许设置快捷键&符号。MenuTerm.EnableFlase将使该菜单项失效。填空题VisualBasic中的菜单可分为 菜单和 菜单。如要在菜单中设计分隔线,则应将菜单项的标题设置为 。想要显示一弹出式菜单,可使用 方法。有些菜单项被点击后将显示一个对话框,通常在这些菜单项后有 。菜单中的“热键”可通过在热键字母前插入 符号实现。可通过快捷键 打开菜单编辑器。编程题2,AutoSizeTrue,BorderStyle属1,FontSize201000时间选项时,标签框内显示时间(表5-5各菜单项属性菜单项名称菜单项名称电子日历mnuElec....黑色mnuFblack....当前日期mnuDate....红色mnuFred....系统时间mnuTime....绿色mnuFgreen日历背景mnuBcolor字体大小mnuSize....黑色mnuBblace....12mnu12....红色mnuBred....20mnu20....绿色字体颜色mnuBgreenmnuFcolor....30mnu30程序的窗体设计和运行界面如5-10和5-11所示:5-10程序窗体设计界面图5-11程序运行界面这里是几位名人的简介:金庸:著名武侠小说家,其作品具有的读者数量,鲜有出其右者,代表作有《射雕英雄传》、《天龙八部》等。路遥:著名作家,茅盾文学奖获得者,代表作有《平凡的世界》和《人生》等。王火:作家,以长篇小说《战争与人》获茅盾文学奖,但却少被人所知道,一直居住在少被文坛关注的成都。贝聿铭:世界级建筑大师,设计过世界各地很多标志性建筑,其中广为人知是香港的中银大厦。建立一个弹出式菜单,包含4个菜单项,分别为“金庸程序运行后,单击弹出菜单中的某个菜单项,在标签中显示相应的名字,而文本框中显示该名MultiLineTrue,FontSize20。习 题6选择题Open”Rizhi.dat”ForOutputAs#1功能说明错误的是()”Rizhi.dat””Rizhi.dat”不存在,则建立一个新文件Open“Sample.datForRandom#1Len50中的数据能够进行的操作是()只能写不能读 B.只能读不能写C.即可以读,也可以写 D.不能读,也不能写VB中的数据文件类型()顺序文件 B.数据库文件C.随机文件 D.二进制文件下列说法错误的是()Write#OutputAppend方式打开Open语句打开一个文件时,对同一个文件可以用几个不同的文件号打开OutputAppend方式打开文件时,不用将文件关闭,就能重新打开文件Append下面几个关键字均表示文件的打开方式,只能进行读不能写的是()A.Input B.Output C.Random D.Append下列哪个不是写文件语句()A.Put B.Print# C.Write# D.OutputDrive属性将激活()事件A.Change B.Scroll C.KeyDown D.KeyUpDrive1Dir1File1文件列表框同步协调工作()Drive1ChangeDir1.PathDir1ChangeFile1.PathDir1.Path代码Drive1的Change事件过程中加入Dir1.Path=Dir1.PatDir1的ChangeFile1.PathDrive1.Drive代码Dir1ChangeDir1.PathDrive1ChangeFile1.PathFile1.FileName代码Dir1ChangeDir1.PathDrive1ChangeFile1.PathDir1.Path代码程序阅读题写出程序运行结果PrivateSubCommand1_Click(Dima(20)AsIntegern\”rts#1Fori=2To8Forj=1ToPrint#1,NextjNextiClose#1Open"d:\Data.txt"ForInputAsk=0WhileNotk=k+1Input#2,aWendClose#2Fori=2Tok/Printa(i)NextIEndSub执行以下程序后,Prime.dat文件中的内容为PrivateSubForm_Click()DimnumAsInteger,dat1AsInteger,dat2AsDimswitAsBooleanOpen"d:\prime.dat"ForOutputAsnum=0Fordat1=2Toswit=TrueFordat2=2ToSqr(dat1)If(dat1Moddat2)=0swit=FalseExitEndIfNextdat2IfswitThennum=num+1Write#1,第num;个数EndIfNextClose#1EndSub3.编程题编写程序,建立一顺序文件,输入某公司销售记录,每次从键盘上输入一种商品部内容。6student.dat习 题7选择题利用可视化数据管理器弹出菜单中选择()命令,即可添加记录。设计 B.打开 C.新建表 D.修改Data控件的哪一个属性为设置访问的数据表的名称()A.DatabaseName B.connect C.Recordsource D.RecordsettypeDataActiveX绑定控件A.DBListBox B.DbcomboBox C.DBGrid D.ImageList记录集中移动记录到上一条记录的方法是()A.MoveFirst B.Updata C.MoveNext D.MovePrevious将新记录集添加到记录集后,保存更新结果使用的方法是()A.AddNew B.Updata C.CancelUpdata D.Refresh能从一个或多个数据表中取出字段,但只能浏览的记录集对象是()表类型 B.动态集类型 C.快照型 D.都不对将一文本框与数据控件相关联需要设定文本框的()属性A.Recordsource B.DataField C.DataSource D.RecordsetType询语句()Select*FromStudentWhere 姓名=“李?峰”Select*FromStudentWhere 姓名=“李*”Select*FromStudentWhere 姓名=“李*”And姓名=“*强“Select*FromStudentWhere 姓名Like“李*”应用题查询和增加等操作。VB的可视化数据管理器建立下面的数据表:学号名称性别年龄特长030112李万能男19唱歌031235陈 香女19街舞030456蔡令军男19电脑编程030886张小小女21演讲并要求能够任意选择查询数据的方式,如即可通过学号查询,也可通过特长查询等。将题内容,还可以显示每个人的照片,且照片的显示会随着记录指针的移动而变化。一、基本概念题

习题2解答说明下列哪些是VisualBasic合法的直接常量,并分别指出它们的类型100.0 %100 1E1 123D3 123,456 0100“ASDF”“1234.5”#2004/10/7#100#π&O78&H123True T-1123!345.54#答:在VB中,直接常量是以直接明显的形式给出的数据。根据数据类型的不同,直接常量分为:字符串常量、数值常量、日期常量和布尔常量。算机处理的字符。本题中F”、”是字符串常量;VisualBasic中除十进制数值常&O&H中,100.01E1123D3、0100100&O78、&H123、-1123!和345.54#均为数值常量。日期常量用来表示某一天或某一天的具体时间。在VisualBasic中,日期常量用两个“#”号加以界定。本题中,#2004/10/7#是日期常量。逻辑型常量只有True和False本题中,%100、123,456、πT不是合法的常量。

本题中,True是逻辑常量。下列数据哪些是变量,哪些是常量?是什么类型的常量?Name“name”Falseff“11/16/99”cj“120”n#11/12/2004#12.345””0”5Name、ff、cjnVisualBasicA123a12_3123_aa,123a123IntegerXYZFalseSin(x)变量名sinxπ5B、、不能用数字开头不能用逗号、a123(不能有空格、FalseSin(x)(VB、π(不是英文字母。把下列数学表达式写成VisualBasic10x 3y(1)|x10x 3y

xy)6b24acb24ac(3)

xy1111

(4)

2axyxy1

e10

ln10(5)(6)答:(1)abs(x+y)+z^5(2)(1+x*y)^6(3)(10*x+Sqr(3*y))/(x*y)(4)(-b+Sqr(b*b-4*a*c))/(2*a)(5)1/(1/r1+1/r2+1/r3)(6)Sin(3.14159*45/180)+(Exp(10)+log(10))/Sqr(x+y+1)写出下列表达式的值:(1)123+23Mod10\7+Asc("A")(2)Int(68.555*100+0.4)/100(3)#11/22/2004#-10(4)"ZXY"&123&"abc"答:VB中计算表达式的值时,首先要考虑的是运算符的优先级。(1)式中整除运算符\优先级最高,故首先计算10\7=1;然后计算23Mod1=0;所以整个表达式的值=123+0+65=188。(2)式中Int(68.555*100+0.4)=Int(6855.9)/100=6855/100=68.55。注意Int()函数取整时,参数如果是整数,略去小数部分;参数是负数时,取不大于参数的最大整数。(3)式中的10表示天数,故表达式的值是2004-11-12。(4)“&”运算符的作用是把字符串连接起来,如果遇到数值,则先把数值转换成字符串后再连接,所以表达式的值是"ZXY123abc"。设a=7,b=3,c=4,求下列表达式的值:(1)a+3*c (2)a^2/4(3)a/2+3\2 (4)aMod3+b^3/c\5答:(1)式=7+3*4=19;(2)式=7*7/4=12.25;(3)式=7/2+3\2=3.5+1=4.5;(4)式=1+27\4/5=1+6.75\5=1+6\5=2;写出下列函数的值:(1)Int(-3.14159) (2)Fix(-3.14159)(3)Sqr(Sqr(81)) (4)Len("VisualBasic(5)Int(Abs(99-100)/2) (6)Sgn(7*3+2)(7)LCase("HellowVB!") (8)Mid("HellowVB!",4,3)(9)Left("HellowVB!",3) (10)Val("1623个")(11)Str(-459.55) (12)UCase("VisualBasic")答:(1)Int(-3.14159)=-4;(2)Fix(-3.14159)=-3;(3)Sqr(Sqr(81))=3(4)Len("VisualBasic程序设计")=16;(5)Int(Abs(99-100)/2)=0;(6)Sgn(7*3+2)=1;LCase("HellowVB!")=”hellowvb”;Mid("Hellow4,3)=”low”;Left("HellowVB!",3)=”Hel”;(10)Val("1623个")=16;(11)Str(-459.55)=”-459.55”;(12)UCase("VisualBasic")=”VISAULBASIC”;二、选择题可以同时删除字符串前导和尾部空格的函数是 。A.Ltrim B.Rtrim C.Trim D.Mid函数Int(Rnd(1)*是在哪个范围产生随机整数 。A.(0,1) B.(0,9) C.(1,10) D.(1,9)数学式子sin25º写成VisualBasic表达式是 。A.Sin25 B.Sin(25) C.Sin(25º) D.Sin(25*3.14/180)(4)表达式16/4–2^3*8/4Mod5\2的值是 。A.14 B.4 C.20 D.2(5)数学关系式3x10表示成正确的VB表达式为 。A.3<=x<10 B.x>=3AndC.x>=3Orx<10 D.3<=xAnd<10(6)已知A=”12345678”,则表达式Val(Left(a,4)+Mid(a,4,的值是 。A.123456 B.123445 C.8 D.6表达式Len("123程序设计ABC")的值是 。A.10 B.14 C.20 D.17下面正确的赋值语句是 。A.x+y=30 B.y=3π*r*r C.y=x+30 D.3y=x+1为了给三个变量赋初值1,正确的赋值语句是 。A.x=1:y=1:z=1 B.x=1,y=1,z=1 C.x=y=z=1 D.x,y,z=1(10)赋值语句g=123+Mid("123456",3,执行后,变量g中的值是 。A.“12334” B.123 C.12334 D.157表达式Not(a+b=c-d)。逻辑表达式 B.字符表达式 C.算术表达式 D.关系表达式如果x是一个正实数,对x的第3位小数四舍五入的表达式是 。A.0.01*Int(x+0.005) B.0.01*Int(100*(x+0.005))C.0.01*Int(100*(x+0.05)) D.0.01*Int(x+0.05)下列哪组语句可以将变量a,b的值互换 。A.a=b:b=a B.a=a+b:b=a-b:a=a-bC.a=c:c=b:b=a D.a=(a+b)/2:b=(a-b)/2下列四个字符串进行比较,最小的是 。A.“9977” B.“B123” C.“Basic” D.“DATA”下列逻辑表达式中,其值为True的是 。A.“b”>“ABC” B.>“THE” C.9>“H” D.“A”>“a”表达式a+b=c是 。赋值表达式 B.字符表达式 C.算术表达式 D.关系表达式在下列表达式中,非法的是 。A.a=b+c B.a>b+c C.a≠b>c D.a<b+c语句PrintFormat(“HELLO”,“<”)的输出结果是 。A.HELLO B.hello C.He D.heMsgBox函数的返回值的类型是 。整数 B.字符串 C.逻辑值 D.日期用语句DimA(-3to5)AsLong定义的数组元素个数是 。A.7 B.8 C.9 D.10答:选CTrim函数可以出去字符串两端的空格,而LtrimRtrim端或右端的空格。。Rnd0~1(1)10Int0~9之间。选DVB是弧度。(4)16/42^3*8/4Mod5\2=4-8*8/4Mod2=4-16Mod。Bx39用法。选B。Left(a,4)的值是”1234”,Mid(a,4,2)的值是”34”,两字符串连接后再由Val函数转变为数值123445。A。在VB等于字符的个数。A、D不合法的变量名。ABDC是一关系表达式。D值后,再相加;字符串不是数字时,系统提示出错。A。由逻辑运算符组成的表达式是逻辑表达式。B。B。AASCII码值从左到右一一比较,先大为大。A。Da+b=ca+bFalse。CVB<>。选B。在格式输出函数中<”是强制小写符号。AMsgBox哪一个按钮。选。定义的数组元素个数是93,4,5。三、判断题(1)VB6.0&H128(2)设A="123",B=123,则A+B的结果为246,A-B的结果为0。(3)已知A$="87654321",则表达式Val(Left$(A$,4)+Mid$(A$,4,2))的值是:876554。Rnd0、1表示x59:xMod5=0ORxMod。Len("等级考试")和LenB(VB6.0PrintInStr("VisualBasic",。数组中数组元素的值也不会变化。数组元素的下标可以是常数、变量或表达式。For…NextStepDo…Loop[While|Until]循环中,WhileUntil一。在For...NextExitFor位置。动态数组在定义时已被分配存储空间。VB6.0,OptionBase0答:&H12168&O。把字符串转变为数值后,再相加。Left$(A4876Mid$(A$,4,25相加后,再由Val876554。Rnd0,1。对。一个数是另一个数的倍数时,相除余数为零。LenVB6.0InStr0。但数组元素的值是可以变化的。对。对。While关键字和Until中应有ExitDo对。错。动态数组在定义时没有被分配存储空间。对。四、程序阅读题(1)执行下面程序,显示的结果是 。PrivateSubForm_Click()DimxAsx=Int(Rnd)+4SelectCasexCase5Print优秀Case4Print良好Case3Print"及格"CaseElsePrint"不及格"EndSelectEndSub答:运行结果是x=0+4=,在SelectCase语句中执行Print良好语句。执行下面程序段后,变量x的值为 。DimxAsx=5Fori=1To20Stepx=x+i\5Nextix16Int((20-1)/3+1)=7x3x4567x3;x。执行下面程序后,输出的结果是 。PrivateSubDimxAsIntegerFori=1To3Forj=1ToiFork=jTo3x=x+NextkNextjNextiPrintxEndSub答:输出结果是x=14。这是一个3重循环,最内层的循环体共执行14次,每次加1。执行下面程序后,输出的结果是 。PrivateSubForm_Click()DimxAsx=0DoWhilex<50x=(x+2)*(x+n=n+1LoopPrint"x=";x;"n=";EndSubx=7221272,n。x50时,循环终止。执行下面程序后,输出的结果是 。PrivateSubForm_Click()DimxAsInteger,aAsx=0Forj=1Toa=a+jNextjx=jPrintx,aEndSub答:输出结果是6 15。变量x中保存的是循环变量j的终止值。循环体执行了5次,故a的值是15。以下程序的循环次数是 。Forj=8To35StepPrintj;Nextj答:循环体共执行Int((35-8)/3+1)=10次。执行下面程序输入4后,程序输出的结果是 。PrivateSubx=InputBox(x)Ifx^2<15Theny=1/xIfx^2>15Theny=x^2+PrintyEndSub答:输出结果是17。因为x^2=16>15,故程序执行y=x^2+1=17。执行下面程序后,输出的结果是 。PrivateSubDimsumAsIntegersum%=19sum=2.23Printsum%;EndSub答:输出结果是2 。程序中变量sum被定义成整型变量,所以赋与实数值时,系会把小数部分除去。%是类型符号,也是表示整型。执行下面程序后,输出的结果是 。PrivateSuba=100Dos=s+aa=a+LoopUntila>PrintaEndSub答:输出结果是101。程序中使用的是后测型循环结构。循环体执行1此后,变量a的值变为101,满足循环结束条件,故循环终止。(10)执行下面程序后,输出的结果是 。PrivateSuba="ABCD"b="efgh"c=LCase(a)d=Printc+dEndSub"abcdEFGH"LCase()函数的作用是把字符串中的大写字母转换成小写;UCase()函数的作用是把字符串中的大写字母转换成大写。执行下面程序后,输出的结果是 。PrivateSubx=2:y=4:z=6x=y:y=z:z=Printx;y;zEndSub答:输出结果是4 6 4。应注意的是本程序无法实现3个变量值的互换。执行下面程序后,输出的结果是 。PrivateSubDimcountAsIntegercount=0Whilecount<20count=count+WendPrintEndSub答:输出结果是20。程序中的循环体执行20次,当count20件,程序执行循环结构后面的打印语句。执行下面程序后,输出的结果是 。PrivateSuba="*":b="$"Fork=1To3x=Str(Len(a)+k)&Printx;NextkEndSub答:输出结果是"2$""3$""4$"。程序循环执行时,Len(a)的返回值始终是1,Str(Len(a)+k)的值分别是2、3、4。字符串连接符&把两个字符连接在一起。执行下面程序后,输出的结果是 。PrivateSubk=0:a=0DoWhilek<k=k+2k=k*k+a=a+kLoopPrintaEndSub答:输出结果是78。程序中的循环体可以被执行两次。第1次执行后变量k、a的值均为6,第2次循环后,k的值是72,a的值是78。执行下面程序后,输出的结果是 。PrivateSubForm_Click()DimM(10)AsLong,N(10)Asi=3Fort=1ToM(t)=tN(i)=2*i+NexttPrintN(i);M(i)EndSub答:输出结果是11 3。本程序中的循环体执行5次,但由于变量i的值保持不变,故对M(t)和N(3)进行赋值。循环结束后的值是的值是3。执行下面程序后,输出的结果是 。PrivateSubDima()a=Array(1,2,3,4)j=1Fori=3To0Steps=s+a(i)*jj=j*NextiPrintsEndSub答:输出结果是1234。程序中的循环体执行4次,变量s的值为4+30+200+1000=1234。执行下面程序后,输出的结果是 。PrivateSubDimM(10)Fork=1ToM(k)=11-kNextx=6PrintM(2+M(x))EndSub4M的值为(10,91M(6的值是5,故M(2+5)=M(7的值是。执行下面程序后,输出的结果是 。PrivateSubForm_Click()Dima(10)AsInteger,p(3)Ask=5Fori=1Toa(i)=iNextiFori=1Top(i)=a(i*i)NextiFori=1To3k=k+p(i)*NextiPrintkEndSub答:输出结果是33。前两个循环执行完成后数组a的值为910,数组p的值为,3,。第3k=5+×2+×2+×2=3。执行下面程序后,输出的结果是 。PrivateSubForm_Click()Dima(10,10)AsFori=2To4Forj=4Toa(i,j)=i*jNextjNextiPrinta(2,5)+a(3,4)+a(4,5)EndSub答:输出结果是42。程序中数组a11×11=121个元素,但循环语句只对其中的部分元素赋了值。其中a(2,5)的值是的值是的值是20,三者之和是42以下程序运行的结果。OptionBase1PrivateSubCommand1_Click()Dima,b(3,3)a=array(1,2,3,4,5,6,7,8,9)Fori=1To3Forj=1To3b(i,j)=a(i*j)If(j>=i)ThenPrintTab(j*3);Format(b(i,j),"###");NextjPrintNextiEndSubA.123B.1C.147D.12345645246467897893699答:输出结果是选项D。五、填空题在VB中声明符号常量的关键字。设a=1,b=2,c=3,则VB6.0表达式:a<borb<candc<a的值。"a","T","Z","9",这四个字符中的ASCII码值最大。执行语句B=MsgBox("XXX",,"YYY")后在消息框中的标题信息(5)函数Len("Hello!"+Space(2)+Mid("Shanghai",5,3))的值。(6)表达式Ucase(Mid("abcdefgh",3,4))的值。(7)表达式Int(1234.555*100+0.5)/100的结果。使用数组声明语句Dima(3,-2TO2,则数组a包含元素的个数。For-Next循环<step>子句缺省时,循环变量每次改变的值。PrivateSubForm_Click()PrintFori=1To4PrintTab(8-Forj=1To8Print"*";()PrintNextiEnd10个(1~100)之间的随机整数,打印其中能被5整除的数并求其和,请用正确的内容填空。PrivateSubForm_Click()DimsumAsInteger,xAsFori=1To10x=Int(Rnd*100+1)If () =0sum=sum+xPrint"x=";EndIfNextiIfsum<>0ThenPrint"sum=";EndIfEndSub用正确的内容填空,使得以下程序能够找出50PrivateSubForm_Click()DimaAsInteger,bAsDimcAsSingleFora=1ToForb=aToc=Sqr(a^2+b^2)If () ThenPrinta,b,NextbNextaEndSub(13)用正确的内容填空,使得以下程序能够计算1+1/3+1/5+……+1/(2N+1),直到1/(2N+1)小于10-5。PrivateSubsum=1:n=1Don=n+2temp=1/sum=sum+tempIftemp<0.00001Then () LoopPrint"N=";nPrint"sum=";sumEndSub7位评委给参赛选手打分。以下程序是输入7去掉最高分和最低分后计算其平均值作为该选手的成绩。请填空使得程序能正确运行。PrivateSubsum=0Fori=1To7cj&i&录入Ifi1ThenMax=Min=cjElseIfMin>cjMin=cjElseIfMax<cjMax=cjEndEndIfsum=sum+Nextiaver= () Print"该选手的成绩为:",averEndSub50填空。PrivateSubDima(1To6)AsIntegerRandomizeFori=1Ton= () a(n)=a(n)+NextiFori=1To6Printi;点出现a(i);次NextiEndSub答:ConstTrue(3)"a"(4)YYY(5)11(6)CDEF(7)1234.56(8)120(9)1(10)Nextj(11)xMod5(12)c=Int(c)Andc<=50(13)ExitDo(14)(sum-Max-Min)/5(15)Int(Rnd*6)+1六、编程题1~10035解答:一个整数能被另一整数整除的条件是,它们相除时余数为零。PrivateSubForm_Click()DimiAsInteger,nAsFori=1To100IfiMod3=0AndiMod5=0Then ‘35Printin=n+EndIfNextiPrint1~10035EndSub130.7516亿。解答:本题有两种解法,可以根据公式:16=13((1+0.0075)n直接利用标准函数对数求得:n=Log(16/13)/Log(1+0.0075)也可以利用循环求得:PrivateSubx=13n=0DoWhilex<x=x*1.0075n=n+LoopPrintn;16x;亿EndSub100~2003解答:PrivateSubDimiAsIntegerFori=100To200IfiMod30Then 3整除的条件PrintiEndIfNextiEndSub(21)设计程序,求s=1+(1+2)+(1+2+3)+……+(1+2+3+……+n)的值。解答:PrivateSubForm_Click()DimnAsInteger,sAss=0n=请输入n:")) ‘n由Inputbox函数输入再转换为数值型数Fori=1TonForj=1Tos=s+jNextjNextiPrintsEn

温馨提示

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

评论

0/150

提交评论