2023年VisualBasic程序设计基础课后习题参考答案_第1页
2023年VisualBasic程序设计基础课后习题参考答案_第2页
2023年VisualBasic程序设计基础课后习题参考答案_第3页
2023年VisualBasic程序设计基础课后习题参考答案_第4页
2023年VisualBasic程序设计基础课后习题参考答案_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

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

文档简介

第1章VisualBasic6.0程序设计概述一、判断题1.√2.√3.4.√5.×6.√7.×8.√9.√10.×11.√12.√13.×14.√15.×16.√17.√18.√19.√20.√二、选择题1.C2.B3.D4.C5.B6.A7.D8.A9.B10.A11.C12.D三、填空题1.对象、事件2.属性、方法、事件3.控件、屏幕(Screen)4.对象5.Left、Top6.属性、<对象名>.<属性名>=<表达式>7.网格8.F orm19.Load或Initialize或Resize或Activate(自动执行的先后顺序也按此排列)10.Activate、Deactivate四、程序设计题程序1.界面设计参看图10-1、10-2以及表10-1。表10-1实例2各控件的重要属性设立控件属性(属性值)属性(属性值)标签控件1Name(Label1)Caption("我的第一个VB程序")标签控件2Name(Label2)Caption("请输入你的姓名")FontUnderLine(True)FontItalic(True)命令按钮1Name(Command1)Caption("拟定(&O)")命令按钮2Name(Command2)Caption("结束(&X)")过程设计如下:PrivatesubForm_Click()Command2.Enabled=FalseEenSubPrivateSubCommand1_Click()Label2.Visible=FalseLabel1.Caption=Text1.Text+":欢迎使用"+Label1.CaptionText1.Visible=FalseCommand1.Enabled=False:Command2.Enabled=TrueEndSubPrivateSubCommand2_Click()EndEndSub程序2.界面设计略,过程设计如下:PrivateSubCommand1_Click()'字体变大Form1.FontSize=Form1.FontSize+3Form1.Cls:Print"欢迎使用VB"EndSubPrivateSubCommand2_Click()'字体变小Form1.FontSize=Form1.FontSize-3Form1.Cls:Print"欢迎使用VB"EndSubPrivateSubCommand3_Click()'字体加粗Form1.FontBold=TrueForm1.Cls:Print"欢迎使用VB"EndSubPrivateSubCommand4_Click()'字体不加粗Form1.FontBold=FalseForm1.Cls:Print"欢迎使用VB"EndSub运营时,不得连续、过多次单击“字体变小”按钮,由于当FontSize属性值小于0会产生适时错误。程序3.界面设计略,过程设计如下(窗体Height值的计量涉及标题、边框,而ScaleHeight值仅与窗体有效绘图区域的高度有关):PrivateSubForm_Load()Text1.Text="VisualBasic程序设计"EndSubPrivateSubForm_Resize()Text1.Top=0:Text1.Left=0Command1.Top=Form1.ScaleHeight-Command1.HeightCommand1.Left=Form1.ScaleWidth-Command1.WidthEndSub第2章程序设计基础一、判断题1.√2.×3.×4.×5.√6.×7.√8.√9.√10.×二、选择题1.B2.D3.A4.C5.C6.B7.A8.D9.C10.A三、填空题1.String2.43."aaa"4.1455.66.37.188.False9.(xMod10)*10+x\1010.10+Int(Rnd*90)11.a*bModc12.Log(x)+Sin(3.141593/6)13.ConstPI=3.141592614.日期15.Int(x)+1四、程序设计题程序1.界面设计略,过程设计如下:方法一、用文本框控件输入圆的半径PrivateSubCommand1_Click()DimxAsSinglex=Text1.TextLabel1.Caption=x*x*3.141593EndSub方法二、用InputBox函数输入圆的半径PrivateSubCommand1_Click()DimxAsSingle'若规定计算结果具有15位有效位数,声明x为Double类型x=InputBox("r=","输入圆的半径")Label1.Caption=x*x*3.141593EndSub程序2.略。第3章结构化程序设计与数组一、判断题1.√2.×3.√4.×5.√6.×7.×8.√9.×10.√二、选择题1.A2.D3.C4.C5.D6.B三、填空题1.Ifx>yThent=y:y=x:x=t2.IS3.Fori=0to9:B(i)=InputBox("B("&i&")="):Nexti4.Dim5.String6.8四、程序阅读题(写出下列程序的运营结果)程序1.05程序2.20程序3.2471116程序4.1491625程序5.程序6.五、程序填空题1.(1)q*i (2)s+p*i/q (3)Nexti2.(1)r=0 (2)mModn3.(1)i+j-1 (2)7-i (3)Print4.(1)10+Int(Rnd*90)(2)i+1To30(3)a(i)=a(j)(4)a(i)Mod2=1六、程序设计题程序1.界面设计略,过程设计如下:PrivateSubForm_Click()DimxAsInteger,yAsInteger,zAsIntegerDimmaxAsInteger,middAsInteger,minAsIntegerx=InputBox("请输入x的值:")y=InputBox("请输入y的值:")z=InputBox("请输入z的值:")Ifx>yThenmax=xElsemax=yIfz>maxThenmax=zIfx<yThenmin=xElsemin=yIfz<minThenmin=zmidd=x+y+z-max-minPrintmax;midd;minEndSub程序2.界面设计略,过程设计如下:PrivateSubForm_Click()DimxAsSingle,yAsSinglex=InputBox("请输入x的值:")Ifx>3Theny=x+3ElseIfx>=1Theny=x*xElseIfx>0Theny=Sqr(x)Elsey=0EndIfPrintyEndSub程序3.界面设计略,过程设计如下:PrivateSubForm_Click()DimiAsInteger,jAsIntegerFori=1To9Forj=1To9PrintTab((j-1)*4);i*j;NextjPrintNextiEndSub程序4.界面设计略,过程设计如下:PrivateSubForm_Click()DimxAsSingle,sAsSingle,tAsSingleDimiAsInteger,nAsIntegerx=InputBox("请输入x的值:")n=InputBox("请输入n的值:")t=x/2:s=tFori=3Tont=t*x/is=s+tNextiPrintsEndSub程序5.界面设计略,过程设计如下:PrivateSubForm_Click()DimeAsSingle,tAsSingle,iAsIntegere=2:t=1:i=1Whilet>=0.0001i=i+1:t=t/i:e=e+tWendPrinteEndSub程序6.界面设计略,过程设计如下:OptionBase1PrivateSubForm_Click()DimnAsInteger,a(9,9)AsInteger,iAsInteger,jAsIntegerOnErrorGoTok'下列代码中若出现错误,转到标号为K的语句执行。n=InputBox("请输入n,0<n<10")Fori=1Ton:a(i,1)=1:a(i,i)=1:NextiFori=3TonForj=2Toi-1a(i,j)=a(i-1,j-1)+a(i-1,j)Nextj,iFori=1TonPrintTab(30-2*i);Forj=1ToiPrintSpace(4-Len(Trim(Str(a(i,j)))));Trim(Str(a(i,j)));NextjPrintNextiExitSubk:MsgBox"输入n值小于1或大于10,数组下标超界。"EndSub第4章函数与过程一、判断题1.×2.√3.×4.×5.√6.×7.×8.√二、填空题1.按地址传送2.b()AsLong3.64.按值传递5.按地址传递6.PublicxAsSingle7.StaticxAsInteger8.Form2.y三、程序阅读题(写出下列程序的运营结果)程序1.s=2程序2.1程序3.112112122223s=511s=9121133114641四、程序填空题1.(1)ByeVal (2)kModi (3)k=k\i (4)Callpp(i)2.(1)a()AaDouble (2)n-1 (3)a(j)<a(k)3.(1)a()AsDouble,nAsInteger (2)t=t*x (3)f=s五、程序设计题程序1.界面设计略,过程设计如下:PrivateFunctionfsum(x()AsDouble,nAsInteger)AsDoubleDimiAsIntegerFori=1Tonfsum=fsum+x(i)Nextifsum=fsum/nEndFunction程序2.界面设计略,过程设计如下:PrivateSubff(a()AsSingle,nAsInteger)DimiAsInteger,xAsSingleFori=1Ton\2x=a(n-i+1):a(n-i+1)=a(i):a(i)=xNextiEndSub程序3.界面设计略,过程设计如下:PrivateSubfind(x()AsSingle,mAsbyte,nAsByte,_xmaxAsSingle,kiAsByte,kjAsByte)xmax=x(1,1):ki=1:kj=1Fori=1TomForj=1TonNextj,iEndSub第5章常用控件一、判断题1.×2.×3.×4.√5.×6.√7.×8.√9.√10.√11.×12.×13.√14.√15.×16.×17.×18.√19.√20.×21.√22.×23.√24.×25.√二、选择题1.C2.D3.B4.B5.B6.C7.B8.B9.B10.A11.D12.C13.B14.B15.A16.D17.B18.B19.B20.A三、填空题1.上、下、左、左2.缇、无关3.&、<Alt>+<Y>4.Enabled5.MaxLength6.Text1.SetFocus7.MultiLine8.Visible9.Alignment10.AutoSize11.ForeColor12.0或113.True14.115.AddItem16.117.List1.Clear18.文本框、列表框19.下拉式组合框、简朴组合框、下拉式列表框20.Scroll21.Value22.Change23.定期器不起作用24.Timer25.65535四、程序阅读题程序1.116程序2.8程序3.23451程序4.小,你好!程序5.您好34512小李,你好!欢迎使用VisualBasic!程序6.李子程序7. y=6程序8. n=1苹果 y=14 n=3橘子 n=5葡萄柚子香蕉五、程序填空题1.(1)a(i)=Mid(str1,i,1)或a(i)=Mid(Text1.Text,i,1)(2)p=j(3)a(i)=a(p)(4)Command2.Enabled=True1To2*i–1(2)Command2.Enabled=True(3)Command2.Enabled=False3.(1)Text2.Enabled=False(2)p=2(3)Printi(4)Val(Text1.Text)<2或Val(Text1.Text)<=1(5)KeyAscii=13(1)List1.ListCount(2)List1.RemoveItemI(3)i=i+1(1)Timer1.Enabled=True(2)x\3600(3)(xMod3600)\60或(x-3600*h)\60(4)x=x+16.(1)Label1.Left(2)Label1.Left=-Label1.Width六、程序设计题程序1.界面设计略,过程设计如下:PrivateSubCommand1_Click()IfCommand1.Caption="显示"ThenPrint"欢迎使用VisualBasic!":Command1.Caption="清除"ElseForm1.Cls:Command1.Caption="显示"EndIfEndSubPrivateSubCommand2_Click()EndEndSubPrivateSubForm_Load()Form1.Cls:Command1.Caption="显示":Command2.Caption="退出"EndSub程序2.界面设计略,过程设计如下:PrivateSubForm_Load()Text1.MaxLength=1:Text1.Text=""EndSubPrivateSubText1_KeyPress(KeyAsciiAsInteger)Label1.Caption=CStr(KeyAscii)EndSub程序3.界面设计略,过程设计如下:ConstpwdAsString="123456"'预设密码为123456PrivateSubCommand1_Click()Cls:Print"欢迎进入!"EndSubPrivateSubForm_Load()Command1.Caption="进入":Command1.Enabled=FalsewText1.Text="":Text1.PasswordChar="*"EndSubPrivateSubText1_KeyPress(KeyAsciiAsInteger)IfKeyAscii=13ThenIfText1.Text=pwdThenm=MsgBox("口令对的,欢迎进入!"):Command1.Enabled=TrueElsem=MsgBox("口令错误,请重新输入!"):Text1.Text=""EndIfEndIfEndSub程序4.界面设计略,过程设计如下:DimnumAsInteger,mAsInteger,recAsIntegerPrivateSubForm_Load()Command1.Caption="出题":Command1.Enabled=TrueText1.Text="":Text1.Enabled=False:rec=0EndSubPrivateSubCommand1_Click()Randomize:num=Int(Rnd*100)+1:Text1.Enabled=TrueLabel1.Caption="":Command1.Enabled=FalseEndSubPrivateSubCommand2_Click()EndEndSubPrivateSubText1_KeyPress(KeyAsciiAsInteger)IfKeyAscii=13Thenm=Val(Text1.Text):rec=rec+1:Text1.SelStart=0Text1.SelLength=Len(Text1.Text):Text1.SetFocusIfrec>10ThenLabel1.Caption="差!重新开始":CallForm_LoadElseIfm>numThenLabel1.Caption=Str(m)&"大了!"ElseIfm<numThenLabel1.Caption=Str(m)&"小了!"ElseIfrec<5ThenLabel1.Caption="好!猜对了。"ElseLabel1.Caption="还行!猜对了。"EndIfCallForm_LoadEndIfEndIfEndIfEndSub程序5.界面设计如图10-3所示,过程设计如下:PrivateSubForm_Load()Command1(0).Enabled=False:Command1(1).Enabled=FalseCommand1(2).Enabled=False:Label1.Caption=""EndSubPrivateSubCommand1_Click(IndexAsInteger)SelectCaseIndexCase0Clipboard.Clear:Clipboard.SetTextText1.SelTextText1.SelText="":Label1.Caption="请选择要粘贴的位置!"Command1(0).Enabled=False:Command1(1).Enabled=FalseCommand1(2).Enabled=TrueCase1Clipboard.Clear:Clipboard.SetTextText1.SelTextLabel1.Caption="请选择要粘贴的位置!":Command1(0).Enabled=FalseCommand1(1).Enabled=False:Command1(2).Enabled=TrueCaseElseText1.SelText=Clipboard.GetText():Form_LoadLabel1.Caption="粘贴完毕!"EndSelectEndSubPrivateSubText1_MouseUp(ButtonAsInteger,ShiftAsInteger,_XAsSingle,YAsSingle)DimnAsIntegern=Text1.SelLengthIfn>0ThenLabel1.Caption="选择了"&n&"个字,请选择下一步操作!"Command1(0).Enabled=True:Command1(1).Enabled=TrueElseLabel1.Caption=""EndIfEndSub程序6.界面设计如图10-4所示,过程设计如下:PrivateSubForm_Load()Label1.Caption="当前日期:":Text1.Text=DateOption1(0).Caption="显示日期":Option1(1).Caption="显示时间"Option1(0).Value=True:Command1.Caption="退出"EndSubPrivateSubOption1_Click(IndexAsInteger)SelectCaseIndexCase0Label1.Caption="当前日期:":Text1.Text=DateCase1Label1.Caption="当前时间:":Text1.Text=TimeEndSelectEndSubPrivateSubCommand1_Click()EndEndSub程序7.过程设计如下:PrivateSubForm_Load()Label1.Caption="当前日期:":Text1.Text=DateOption1(0).Caption="显示日期":Option1(1).Caption="显示时间"Option1(0).Value=True:Command1.Caption="退出"Combo1.AddItem"年-月-日":Combo1.AddItem"月-日-年"Combo1.AddItem"日-月-年":Combo1.Text="年-月-日"EndSubPrivateSubCombo1_Click()DimnAsStringSelectCaseCombo1.ListIndexCase0:n="yyyy-mm-dd"Case1:n="mm-dd-yyyy"Case2:n="dd-mm-yyyy"EndSelectText1.Text=Format(Date,n)EndSubPrivateSubOption1_Click(IndexAsInteger)SelectCaseIndexCase0:Label1.Caption="当前日期:":Text1.Text=DateCase1:Label1.Caption="当前时间:":Text1.Text=TimeEndSelectEndSubPrivateSubCommand1_Click()EndEndSub程序8.界面设计如图10-5所示,过程设计如下:PrivateSubForm_Load()List1.AddItem"happy":List1.AddItem"apple"List1.AddItem"student":List1.AddItem"computer"EndSubPrivateSubCommand1_Click()List1.AddItemText1.Text:Text1.SetFocusText1.SelStart=0:Text1.SelLength=Len(Text1.Text)EndSubPrivateSubCommand3_Click()List1.ClearEndSubPrivateSubCommand4_Click()EndEndSubPrivateSubCommand2_Click()IfList1.ListIndex<>-1ThenList1.RemoveItemList1.ListIndexEndSub9.界面设计如图10-6所示,过程设计如下:PrivateSubForm_Load()Option1(0).Caption="八进制":Option1(1).Caption="十六进制"Option1(2).Caption="二进制"EndSubPrivateFunctiontran(kAsLong,nAsInteger)AsStringDimxAsInteger,yAsString*1,k1AsLongtran="":k1=Abs(k)DoWhilek1>0x=k1ModnIfx>=10Theny=Chr(Asc("A")+x-10)Elsey=CStr(x)tran=y+trank1=k1\nLoopIfk<0Thentran="-"+tranEndFunctionPrivateSubOption1_Click(IndexAsInteger)DimkAsLong,nAsIntegerk=Val(Text1.Text)SelectCaseIndexCase0Label2.Caption="八进制":n=8Case1Label2.Caption="十六进制":n=16Case2Label2.Caption="二进制":n=2EndSelectText2.Text=tran(k,n)EndSub10.界面设计如图10-7所示,过程设计如下:PrivateSubForm_Load()Label1.Left=Width/2-Label1.Width/2Label1.AutoSize=TrueHScroll1.Min=1:HScroll1.Max=1000HScroll1.SmallChange=10:HScroll1.LargeChange=100HScroll1.Value=500:Timer1.Interval=500EndSubPrivateSubHScroll1_Change()Timer1.Interval=HScroll1.ValueEndSubPrivateSubHScroll1_Scroll()CallHScroll1_ChangeEndSubPrivateSubTimer1_Timer()Label1.FontSize=Label1.FontSize+2Label1.Left=Width/2-Label1.Width/2IfLabel1.FontSize>=72ThenTimer1.Enabled=FalseEndSub第6章图形控件和图形方法一、判断题1.√2.×3.√4.×5.√6.×7.×8.×9.√10.√二、选择题1.C2.B3.C4.A5.A6.C7.A8.C9.C10.B11.A12.B13.B14.C15.C三、填空题1.Circle(ScaleLeft+ScaleWidth/2,ScaleTop+ScaleHeight/2),8002.LoadPicture3.AutoSize、Stretch、False、False4.选中、属性5.形状、矩形6.Picture1.Picture=LodePicture("C:\Windows\Cloud.bmp")7.图片框、其他控件8.缇、SclaeMode9.颜色10.颜色、圆弧起点处转角、圆弧终点处转角、椭圆纵轴与横轴长度之比四、程序阅读题程序1.转动一条红色直线,其轨迹形成一个圆程序2.在窗体上随机的位置、用随机的颜色、半径绘制1000个空心的圆。程序3.在图片框内绘制多个黄色边框矩形,填充样式在“实心”、“透明”间交替变换。五、程序填空题1.(1)Combo1.ListIndex(2)Shape1.BorderStyle(3)Combo2.AddItemStr(i)2.(1)Callpic(2)False (3)n=n+1(4)LoadPicture("c:\windows\1.bmp") (4)LoadPicture(fn)六、程序设计题程序1.界面设计略,过程设计如下:PrivateSubForm_Load()Picture1.ScaleMode=3EndSubPrivateSubCommand1_Click()Dimx1AsSingle,y1AsSingle,x2AsSingle,y2AsSinglex1=InputBox("x1="):y1=InputBox("y1=")x2=InputBox("x2="):y2=InputBox("y2=")Picture1.Line(x1,y1)-(x2,y2),,BEndSub程序2.界面设计略,过程设计如下:PrivateSubForm_click()DimrAsSingle,xoAsSingle,yoAsSingleIfForm1.ScaleHeight<Form1.ScaleWidthThenr=Form1.ScaleHeight/3Elser=Form1.ScaleWidth/3EndIfxo=Form1.ScaleLeft+Form1.ScaleWidth/2yo=Form1.ScaleTop+Form1.ScaleHeight/2Form1.FillStyle=0:Form1.FillColor=vbBlueForm1.DrawWidth=2:Form1.ScaleMode=6Form1.Circle(xo,yo),r,vbYellowEndSub程序3.界面设计略,过程设计如下:PrivateSubForm_Load()DimiAsIntegerFori=1To7:List1.AddItemi:NextiForm1.ScaleMode=1EndSubPrivateSubList1_Click()Form1.Cls:Form1.ScaleMode=List1.TextForm1.Circle(Form1.ScaleLeft+Form1.ScaleWidth/2,_Form1.ScaleTop+Form1.ScaleHeight/2),50EndSub第7章对话框与菜单程序设计一、判断题1.√2.√3.√4.×5.×6.×7.√8.√9.√10.√二、选择题1.D2.A3.C4.C5.B6.D7.A8.B9.D10.B三、填空题1.窗体控制菜单、下拉式菜单、快捷菜单2.ShowFont3.打开文献、另存为、颜色、字体、打印对话框4.工程、部件5.CommonDialog1.Action=3、CommonDialog1.ShowColor6.提醒信息、对话框类型、对话框标题7.Click8.工具9.代码窗口、Click10.相同、正四、程序阅读题程序1.显示提醒信息为“5”、标题为“na的输出结果”、有一个“拟定”按钮的消息框。程序2.显示提醒信息为“您选择了第1项”、标题为“第一项”、有一个“拟定”按钮的消息框。五、程序填空题1.(1)Int(Rnd*100) (2)Str(i) (3)ExitFor2.(1)False (2)Date (3)CommonDialog1.Color(4)m1六、程序设计题程序1.界面设计略,过程设计如下:PrivateSubCommand1_Click()CommonDialog1.ShowOpenList1.AddItemCommonDialog1.FileNameEndSub程序2.界面设计略,过程设计如下:PrivateSubCommand1_Click()CommonDialog1.ShowSaveList1.AddItemCommonDialog1.FileNameEndSub程序3.界面设计如图10-9、表10-2所示,过程设计如下:PrivateSubSqr_Click()Shape1.Shape=1EndSubPrivateSubRec_Click()Shape1.Shape=0EndSubPrivateSubOval_Click()Shape1.Shape=2EndSubPrivateSubCircle_Click()Shape1.Shape=3EndSubPrivateSubRrec_Click()Shape1.Shape=4EndSubPrivateSubRSqr_Click()Shape1.Shape=5EndSubPrivateSubShp_Click()Shape1.FillStyle=2EndSubPrivateSubShzh_Click()Shape1.FillStyle=3EndSubPrivateSubXiex_Click()Shape1.FillStyle=4EndSubPrivateSubShPJ_Click()Shape1.FillStyle=6EndSubPrivateSubXJ_Click()Shape1.FillStyle=7EndSubPrivateSubFillColor_Click()CommonDialog1.ShowColorShape1.FillColor=CommonDialog1.ColorEndSubPrivateSubExit_Click()EndEndSub第8章文件一、判断题1.×2.√3.×4.√5.√6.×7.√8.×9.√10.√11.×12.×13.√14.×15.×二、选择题1.A2.C3.B4.B5.A6.C7.C8.B9.C10.B11.D12.B13.B三、填空题1.ChDir2.FileLen3.Change4.EOF5.LineInput四、程序阅读题程序1. y=1a=1程序2.NO.13程序3. y=3a=2NO.24窗体:362516941 y=6a=3NO.37文献:149162536 y=10a=4 NO.411程序4.程序5.1程序6.1窗体上显示内容:202212文献中内容:4681012333123444455555五、程序填空题1.(1)DimnAsInteger(2)"C:\windows\calc.exe" (3)Output(4)End2.(1)ForOutputAs#2(2)0 (3)"temp.dat"As"c:\a1.dat"3.(1)Open"e:\dataout.txt"ForOutputAs#1(2)t1Modt2=0(3)IfflagThen (4)Printcoun六、程序设计题程序1.界面设计如图10-10所示,过程设计如下:DimfnAsStringPrivateSubDrive1_Change()Dir1.Path=Drive1.DriveEndSubPrivateSubDir1_Change()File1.Path=Dir1.PathEndSubPrivateSubFile1_Click()IfRight(File1.Path,1)="\"Thenfn=File1.Path+File1.FileNameElsefn=File1.Path+"\"+File1.FileNameEndIfEndSubPrivateSubCommand1_Click()DimyesnoAsByteyesno=MsgBox("确认要删除吗?",vbYesNo,"删除文献")Ifyesno=vbYesThenKillfnFile1.RefreshEndSub程序2.建立4个文本框控件依次输入姓名、出生年月、外语、计算机成绩,按“确认”按钮追加该记录到磁盘文献d:\student.dat。过程设计如下:PrivateSubCommand1_Click()DimbAsDate,mAsByte,eAsByteOpen"d:\student.dat"ForAppendAs#1b=Text2.Text:m=Text3.Text:e=Text4.TextWrite#1,Text1.Text,b,m,eText1.Text="":Text2.Text="":Text3.Text="":Text4.Text=""Close#1EndSub程序3.界面设计如图10-11所示,过程设计如下:PrivateSubForm_Load()DimssAsStringOpen"e:\student.txt"ForAppendAs#1 '如文献不存在则先建立该文献Close#1Open"d:\student.dat"ForInputAs#1'将文献中所有记录在列表框中显示WhileNotEOF(1)LineInput#1,ss:List1.AddItemssWendClose#1'在选中表项之前“删除”、“修改”按钮不可用Command2.Enabled=False:Command3.Enabled=FalseEndSubPrivateSubList1_Click()'选中表项后可“删除”或“修改”,不可“追加”。Command1.Enabled=False:Command2.Enabled=TrueCommand3.Enabled=True:Text1.Text=List1.TextEndSubPrivateSubCommand1_Click()'追加记录IfTrim(Text1.Text)<>""ThenList1.AddItemText1.TextText1.Text=""EndSubPrivateSubCommand2_Click()'修改记录List1.AddItemText1.Text,List1.ListIndexList1.RemoveItemList1.ListIndexCommand1.Enabled=True:Command2.Enabled=FalseEndSubPrivateSubCommand3_Click()'删除记录List1.RemoveItemList1.ListIndex'删除后,不可“删除”、“修改”Command1.Enabled=True:Command2.Enabled=FalseCommand3.Enabled=False:Text1.Text=""EndSubPrivateSubCommand4_Click()'保存文献,将列表框中所有表项输出到文献DimiAsIntegerOpen"d:\student.dat"ForOutputAs#1Fori=0ToList1.ListCount-1:Print#1,List1.List(i):NextiClose#1EndSubPrivateSubCommand5_Click()'退出之前先保存文献CallCommand4_Click:EndEndSub第9章数据库与数据访问技术一、判断题1.√2.√3.×4.√5.×6.×7.√8.√9.×10.×11.√12.√13.√14.√15.√16.×17.×18.×19.√20.√21.√22.×二、选择题1.A2.D3.C4.B5.C6.A7.C8.D9.D10.C11.A12.D13.A14.B15.B16.C三、程序设计题程序1.(1)数据访问控件以及数据绑定控件的相关属性设立如下Text1:DataSource("Data1")、DataField("学号")Text2:DataSource("Data1")、DataField("姓名")Check1:DataSource("Data1")、DataField("性别")Text3:DataSource("Data1")、DataField("出生日期)Text4:DataSource("Data1")、DataField("奖学金")Text5:DataSource("Data1")、DataField("简历")OLE1:DataSource("Data1")、DataField("照片")Adodc1:ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False")CommandType("1-adCmdText")、RecordSource("select*from成绩")DataGrid1:DataSource("Adodc1")(2)重要事件过程代码OptionExplicitPrivateSubForm_Load()Caption="学籍信息编辑浏览"Label1.Caption="学号:":Label2.Caption="姓名:"Label3.Caption="出生年月:":Label4.Caption="奖学金:"Label5.Caption="简历:":Label6.Caption="照片:"Check1.Caption="性别(选中表达男,否则为女)"Label7.Caption="成绩信息查询显示":Adodc1.Visible=FalseEndSubPrivateSubData1_Reposition()Label7.Caption=Trim(Data1.Recordset("姓名"))&"成绩信息查询显示"Adodc1.RefreshEndSub程序2.(1)数据访问控件以及数据绑定控件的相关属性设立如下:Adodc1:ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False"CommandType("1-adCmdText")、RecordSource("select*from学生)DataGrid1:DataSource("Adodc1")(2)重要事件过程代码OptionExplicitPrivateSubForm_Load()DimiAsIntegerCaption="学籍信息查询浏览":Adodc1.Visible=FalseLabel1.Caption="选择查询方式:":Combo1.Text="所有都显示"Label2.Caption="所有表文献数据浏览表格:":Label3.Visible=FalseText1.Visible=False:Text1.Text=""Fori=0To2Combo1.AddItemMid("所有都显示按学号查询按姓名查询",5*i+1,5)NextiEndSubPrivateSubCombo1_Click()SelectCaseCombo1.ListIndexCase0Text1.Visible=False:Label3.Visible=FalseAdodc1.RecordSource="select*from学生"Label2.Caption="所有表文献数据浏览表格:":Adodc1.RefreshCase1Label3.Caption="输入查询条件(学号):":Text1.Visible=TrueLabel3.Visible=True:Text1.SetFocusCase2Label3.Caption="输入查询条件(姓名):":Text1.Visible=TrueLabel3.Visible=True:Text1.SetFocusEndSelectEndSubPrivateSubText1_KeyDown(KeyCodeAsInteger,ShiftAsInteger)IfKeyCode=vbKeyReturnThenIfCombo1.ListIndex=1ThenAdodc1.Recordset.MoveFirstAdodc1.Recordset.Find"学号='"&Text1.Text&"'"IfAdodc1.Recordset.EOFThenAdodc1.RecordSource="select*from学生"Label2.Caption="所有表文献数据浏览表格:"Adodc1.Refresh:MsgBox"查无此人!"ElseAdodc1.RecordSource="select*from学生"&"where_学号='"&Text1.Text&"'"Label2.Caption="学生"+Text1.Text+"的数据浏览表格:"EndIfElseAdodc1.Recordset.MoveFirstAdodc1.Recordset.Find"姓名='"&Text1.Text&"'"IfAdodc1.Recordset.EOFThenAdodc1.RecordSource="select*from学生"Label2.Caption="所有表文献数据浏览表格:"Adodc1.Refresh:MsgBox"查无此人!"ElseAdodc1.RecordSource="select*from学生"&_"where姓名='"&Text1.Text&"'"EndIfEndIfAdodc1.RefreshEndIfEndSub程序3.(1)数据访问控件以及数据绑定控件的相关属性设立如下:Adodc1(xs):ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False")CommandType("2-adCmdTable")、RecordSource("学生")Adodc2(kc):ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False")CommandType("2-adCmdTable")、RecordSource("课程")Adodc3(cjcx):ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False")CommandType("1-adCmdText")RecordSource("select成绩.学号,学生.姓名,成绩.课程号,课程.课程名,_成绩.成绩from学生,课程,成绩where成绩.课程号=课程.课程号_and成绩.学号=学生.学号"DataGrid1:DataSource("cjcx")DataList1:RowSource("xs")、ListField

("姓名")、BoundColumn("学号")(2)重要事件过程代码OptionExplicitDimpAsBytePrivateSubForm_Load()DimiAsIntegerFori=0To4Label1(i).Caption=Mid("优秀良好中档及格差等",2*i+1,2)Text1(i).Text="":Text1(i).BackColor=RGB(205,205,192)Text1(i).Locked=TrueNexti&"成绩.成绩from学生,课程,成绩"&_"where成绩.课程号=课程.课程号and成绩.学号=学生.学号"cjcx.Refresh:Label2.Caption="成绩信息列表"Label3.Caption="选择学生姓名:":Label4.Caption="选择课程名:"xs.Visible=False:kc.Visible=False:cjcx.Visible=FalseCaption="学籍信息查询":p=0EndSubPrivateSubDataList1_Click()p=0:CallcjdctjEndSubPrivateSubDataList2_Click()p=1:CallcjdctjEndSubPrivateSubcjdctj()Dimcjdcjs(5)AsInteger,dcaseAsByte,iAsByteIfp=0Thencjcx.RecordSource="select成绩.学号,学生.姓名,成绩.课程号,"_&"课程.课程名,成绩.成绩from学生,课程,成绩"_&"where成绩.学号='"&DataList1.BoundText&"'"_&"and(成绩.课程号=课程.课程号and"_&"成绩.学号=学生.学号)orderby成绩.课程号"Frame1.Caption="单位:门"Label2.Caption=Trim(DataList1.Text)&"成绩信息列表"Elsecjcx.RecordSource="select成绩.学号,学生.姓名,成绩.课程号,"_&"课程.课程名,成绩.成绩from学生,课程,成绩"_&"where成绩.课程号='"&DataList2.BoundText&"'"_&"and(成绩.课程号=课程.课程号and"_&"成绩.学号=学生.学号)orderby成绩.学号"Frame1.Caption="单位:人"Label2.Caption=Trim(DataList2.Text)&"成绩信息列表"EndIfcjcx.RefreshIfNotcjcx.Recordset.EOFThencjcx.Recordset.MoveFirstWhileNotcjcx.Recordset.EOFIfcjcx.Recordset("成绩")<60Thendcase=0Elsdcase=(cjcx.Recordset("成绩")\10)–5 EndIfSelectCasedcaseCase4,5:cjdcjs(0)=cjdcjs(0)+1Case3:cjdcjs(1)=cjdcjs(1)+1Case2:cjdcjs(2)=cjdcjs(2)+1Case1:cjdcjs(3)=cjdcjs(3)+1Case0:cjdcjs(4)=cjdcjs(4)+1EndSelectcjcx.Recordset.MoveNextWendFori=0To4:Text1(i).Text=cjdcjs(i):NextiEndSub程序4.(1)数据访问控件以及数据绑定控件的相关属性设立如下:Adodc1:ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False")CommandType("2-adCmdTable")、RecordSource("学生")LockType("4-adBatchOptimistic)Adodc2:ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False")CommandType("2-adCmdTable")、RecordSource("课程")LockType("4-adBatchOptimistic")Adodc3:ConnectionString("Provider=Microsoft.Jet.OLEDB.4.0;_DataSource=E:\GYH\VB\学籍1b.mdb;PersistSecurityInfo=False")CommandType("2-adCmdTable")、RecordSource("成绩")LockType("4-adBatchOptimistic")Text1:用于显示编辑"学号",但是本字段不设立数据绑定属性,输入或修改后的"学号"数据通过代码方式写入数据源中。Text2:DataSource("Adodc1")、DataField("姓名")Check1:DataSource("Adodc1")、DataField("性别")Text3:DataSource("Adodc1")、DataField("出生日期")Text4:DataSource("Adodc1")、DataField("奖学金")Text5:用于显示编辑"课程号",但是本字段不设立数据绑定属性,输入或修改后的"课程号"数据通过代码方式写入数据源中。Text6:DataSource("Adodc2")、DataField("课程名")Text7:DataSource("Adodc2")、DataField("学时数")Text8:DataSource("Adodc2")、DataField("学分数")Text9:DataSource("Adodc2")、DataField("开课学期")Text10:DataSource("Adodc2")、DataField("考试考察标志")Text11:用于显示编辑成绩表中的"学号",但是本字段不设立数据绑定属性,输入或修改后的"学号"数据通过代码方式写入数据源中。Text12:用于显示编辑成绩表中的"课程号",但是本字段不设立数据绑定属性,输入或修改后的"课程号"数据通过代码方式写入数据源中。Text12:DataSource("Adodc3")、DataField("成绩")(2)重要事件过程代码OptionExplicitDimvltAsBoolean,

温馨提示

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

评论

0/150

提交评论