一、基本操作题请根据以下各小题的要求设计Visual Basic应用程序(包括界面和代码)。
1、在名称为Form1的窗体上画一个名称为Chk1的复选框数组(Index属性从0开始),含三个复选框,其标题分别为“语文”、“数学”、“英语”。
利用属性窗口设置适当的属性,使“语文”未选,“数学”被选中,“英语”为灰色,再把窗体的标题设置为“选课”,程序运行时的窗体界面如图所示。
2、在名称为窗体上画一个命令按钮,其名称为Cmd1,标题为“清除”。
请编写适当的事件过程,使得程序运行后,窗体上的标题为“VB期末上机考试”,如图1所示,如单击命令按钮,则清除窗体的标题,程序运行时的窗体界面如图2所示。
图1 图23、在名称为Form1的窗体上画一个命令按钮,其名称为Cmd1,标题为“移到左上”。
编写适当的事件过程,使程序运行时,如单击命令按钮,则按钮移到窗体的左上角。
程序中不得使用任何变量。
程序运行时的窗体界面如图。
4、在名称为Form1的窗体上建立一个名称为L1的标签,标题为“选课”,其字号大小为4号;再建立三个复选框,名称分别为Chk1、Chk2、Chk3,标题分别为“操作系统”、“数据库原理”、和“概率论”,字体大小均为14,其中“概率论”被禁用,运行界面如图。
5、在Form1的窗体上画一个命令按钮,其名称为Cmd1,标题为“显示”;再画一个文本框,其名称为Txt1,编写适当的事件过程。
程序运行后,在窗体加载时使文本框不可见,如双击窗体,则文本框出现;此时如单击命令按钮,则在文本框中显示“期末考试”,如图所示。
6、在名称为Form1的窗体上,画一个组合框和一个命令按钮。
组合框的名称为Cbo1,初始内容为空,有“长跑”、“游泳”、和“跳远”三个可供选择项。
命令按钮的名称为Cmd1,Opt2,标题为“确定”。
编写适当的事件过程,使得程序运行时,选择组合框中的某项,单击命令按钮后,就会弹出一个对话框,内容为“您选择了(该项)”。
程序中不得使用任何变量。
程序运行时的窗体界面如图所示。
7、在名称为Form1的窗体上画一个名称为H1的水平滚动条,请在“属性”窗口中设置它的属性值,使之满足以下要求:它的最大刻度值为100,最小刻度值为1,在运行时鼠标单击滚动条上滚动框以外的区域(不包括两边的按钮),滚动框移动10个刻度。
再在滚动条下面画两个名称分别为L1和L2的标签,并分别显示1和100,运行时的窗体界面如图所示。
8、在名称为Form1的窗体上画两个文本框,无初始内容;再建立一个下拉菜单,菜单标题为“操作”,名称为M1,此菜单下有两个子菜单项,名称分别为Copy和Clear,标题分别为“复制”和“清除”。
请编写适当的事件过程,使得程序运行时,单击“复制”菜单项,则把Text1中的内容复制到Text2中,单击“清除”菜单项,则清除Text2中的内容。
程序运行时的窗体界面如图所示。
要求在程序中不得使用任何变量,每个事件过程中只能写一个语句。
9、在Form1的窗体上画一个文本框,其名称为Text1,程序运行时,在文本框中输入字符,文本框中的字符将赋值到窗体的标题栏中。
注意,本程序代码中不得使用任何变量。
程序运行时的窗体界面如图所示。
10、在窗体上有一个名称为text1的文本框,一个名称为C1,标题为“校验”的命令按钮。
其中文本框用来输入口令,要求在文本框中输入的内容都必须以“*”显示(通过属性窗口设置)。
要求程序运行后,输入口令,单击命令按钮后,对口令进行校验。
如果输入的内容是“ABC”这3个大写字母,则用MsgBox信息框输出“正确”,否则输出“错误”。
如图所示。
二、简单应用题1、在窗体Form1上已有两个文本框,一个命令按钮,命令按钮标题为“转换”。
要求在窗体上补充三个单选钮,名称分别为Opt1、Opt2、Opt3,标题分别为“大小写转换”、“全部大写”、“全部小写”。
要求补充完整代码窗口的代码后,在Text1中输入一段字符,选中“大小写转换”,单击转换按钮后,Text2中显示大小写相反的字符串;选中“全部大写”,单击转换按钮后,Text2中显示全部大写字符串,选中“全部小写”,单击转换按钮后,Text2中显示全部小写字符串。
界面如图。
Private Sub Command1_Click()Dim n As Integer, k As Integer, ch As String, a As Stringch = ""If Opt1.Value = True Thenn = Len(?)For k = 1 To na = Mid$(Text1, k, ?)If a >= "a" And a <= "z" Thench = ch + UCase(a)ElseIf a >= "A" And a <= "Z" Thench = ch + LCase(a)Elsech = ch + aEnd IfNext kEnd IfIf Opt2.Value = True Then ch = UCase(Text1)If Opt3.Value = True Then ch = ?(Text1)Text2 = chEnd Sub2、编写程序,演示列表框控件的基本操作。
在窗体上建立两个列表框,两个命令按钮。
程序运行后,在第一个列表框中选择所需要的项目,单击“添加”按钮,把所选择的项目移到第二个列表框中。
如果单击“删除”按钮,则执行相反的操作。
程序运行时的窗体界面如图。
3、在窗体上建立一个命令按钮,标题为“输出最大值”。
要求产生30个0~100的随机整数,放入一个数组中,然后输出其中的最大值。
请把程序中有“?”号的地方补充完整。
程序运行时的效果如图。
Option Base 1Private Sub Command1_Click()Dim arrn(30) As Integer, max As IntegerRandomizeFor i = 1 To 30arrn(i) = Int(Rnd * ?) 101Next i?= arrn(1) maxFor i = 2 To 30If ?Then max = arrn(i) arrn(i)>maxNext iPrint maxEnd Sub4、在Form1的窗体上有一个名称为Txt1的文本框和两个命令按钮,命令钮名称分别为Cmd1和Cmd2,标题分别为“显示A”和“显示B”。
要求程序运行后,如单击“显示A”命令按钮,则弹出对话框,输入要显示的个数,根据输入的数值在文本框中显示相应数量的字符串A;如单击“显示B”命令按钮,也弹出对话框,输入要显示的个数,根据输入的数值在文本框中显示相应数量的字符串B。
程序运行时的窗体界面如图所示。
5、在窗体上建立一个名称为Label1和Label2的2个标签,单击命令按钮command1,使Label1中的内容与Label2中的内容互换,按命令按钮Command2,结束程序。
6、在窗体Form1上有一个文本框,名称为Text1;请在窗体上画两个框架,名称分别为F1和F2,标题分别为“性别”和“身份”;在F1中画两个单选钮Op1和Op2,标题分别为“男”和“女”;在F2中画两个单选钮Op3和Op4,标题分别为“学生”和“教师”;再画一个命令按钮,名称为C1,标题为“确定”。
程序运行时的窗体界面如图所示。
请编写适当的事件过程,使得在运行时,在F1和F2中各选一个按钮,然后单击“确定”按钮,就可以照表中内容把结果显示在文本框中。
7、编写一个通用过程FindMax 求数组的最大值。
在窗体上的4个文本框中各输入一个整数作为各数组元素的值,然后单击命令按纽,即可求出数组的最大值,并在窗体显示出来,如图所示。
8、 有一文档不完整,在有“?”的地方把程序补完整orm 上有一个text1, 一个command1,要求在text1中添入文本,但用“*”显示,若文本是“ABC”,则msgbox"正确",否则msgbox"错误" 以给程序:Private Sub command1.Click()if text1.text="?" then msgbox"正确" Else msgbox"错误" ABC end sub9、在窗体Form1上画一个图像框,其高、宽分别为600,通过属性窗口把一个图像文件装入图像框;再画一个命令按钮,标题为“放大”。
请编写适当事件过程,程序运行后,单击“放大”按钮,则把图像框的高度、宽度均增加600,同时图像也随之自动放大。
程序运行后,窗体界面如图所示。
10、在窗体上建立一个名称为text1的文本框,然后建立两个主菜单,标题分别为“国家制度”和“帮助”,名称分别为vbmenu 和vbhelp ,其中“国家制度”菜单包括“君主制”、“民主制”、“混合制”三个子菜单,名称分别为vbmenu1、vbmenu2、vbmenu3。
要求程序运行后,如果在“国家制度”的下拉菜单中选择“君主制”,则在文本框内显示“伊拉克、英国”;如选择“民主制”则在文本框内显示“澳大利亚、加拿大”;如选择“混合制”,则在文本框内显示“芬兰、丹麦”(要求:不使用任何变量,直接显示字符串)。
程序运行时,选择“民性别 身份 文本框中显示的内容 男 学生 我是男学生 男 教师 我是男教师 女学生 我是女学生 女教师我是女教师主制”的效果如图。
三、综合应用题1、在窗体form1上有一个文本框,还有一命令按钮,名称为Cmd1,标题“计算”,如图所示。
并有一个函数isprime可以在程序中直接调用,其功能是判断参数a是否素数,如是,则返回true,否则返回false。
请编写适当的事件过程,使得在运行时,单击“确定”按钮,则找出小于3000的最大素数,并显示在text1中。
Private Function isprime(a As Integer) As BooleanDim flag As Booleanflag = Trueb% = 2Do While b% <= Int(a / 2) And flagIf Int(a / b%) = a / b% Thenflag = FalseElseb% = b% + 1End IfLoopisprime = flagEnd Function2、编写一程序,显示出所有的水仙花数。
所谓水仙花数,是指一个3位数,其各位数字立方和等于该数本身。
例如,153是水仙花数,因为153=13+53+333、在窗体form1上画两个命令按钮,名称分别为Cmd1和Cmd2,标题为“添加”和“清除”。