VB小练习.docx

上传人:b****7 文档编号:8626451 上传时间:2023-02-01 格式:DOCX 页数:12 大小:189.74KB
下载 相关 举报
VB小练习.docx_第1页
第1页 / 共12页
VB小练习.docx_第2页
第2页 / 共12页
VB小练习.docx_第3页
第3页 / 共12页
VB小练习.docx_第4页
第4页 / 共12页
VB小练习.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

VB小练习.docx

《VB小练习.docx》由会员分享,可在线阅读,更多相关《VB小练习.docx(12页珍藏版)》请在冰豆网上搜索。

VB小练习.docx

VB小练习

1.在名称为Form1的窗体上,画一个名称为Label1的标签,其标题为“计算机等级考试”,字体为宋体,字号为12,且能根据标题内容自动调整标签的大小。

再画2个名称分别为Command1、Command2,标题分别为“缩小”和“还原”的命令按钮。

要求:

编写适当的事件过程,使得单击“缩小”按钮,Label1中所显示的标题内容自动减小2个字号;单击“还原”按钮,Label1中所显示的标题内容的大小自动恢复到12号。

PrivateSubCommand1_Click()

Label1.FontSize=Label1.FontSize-2

EndSub

PrivateSubCommand2_Click()

Label1.FontSize=12

EndSub

2.在名称为Form1的窗体上画1个名称为Text1,内容为“计算机”的文本框,且显示为小四号字,再画3个命令按钮,名称分别为“Command1”、“Command2”、“Command3”,标题分别是“居左”、“居中”、“居右”,使得单击“居左”按钮时,文本框的内容靠左对齐;单击“居中”按钮时,文本框的内容居中对齐;单击“居右”按钮时,文本框的内容靠右对齐。

运行效果如图所示。

PrivateSubCommand1_Click()

Text1.Alignment=0

EndSub

PrivateSubCommand2_Click()

Text1.Alignment=2

EndSub

PrivateSubCommand3_Click()

Text1.Alignment=1

EndSub

3.窗体上有一个单选按钮数组,请利用属性窗口,为单选按钮依次添加标题为“北京”、“上海”、“广州”;再添加一个标题为“显示”的命令按钮,如图2.18.3所示。

程序的功能是在运行时,如果选中一个单选按钮后,单击“显示”按钮,则根据单选按钮的选中情况,在窗体上显示“我的出生地是北京”、“我的出生地是上海”或“我的出生地是广州”。

创建option数组

PrivateSubCommand1_Click()

Fori=0To2

IfOption1(i)ThenPrint"我的出生地是"&Option1(i).Caption

Nexti

EndSub

4.在名称为Form1的窗体上画一个标签名称为L1,标题为“业余爱好”,再画一个名称为Ch1

的复选框数组,含3个复选框,它们的Index属性分别为0、1、2,标题依次为“体育”、“音乐”、“美术”,请设置复选框的属性,使其初始状态如下所示:

PrivateSubForm_Load()

Ch1(0).Value=1

Ch1

(1).Value=False

Ch1

(1).Enabled=False

EndSub5.在名称为Form1的窗体上画一个名称为HS的水平滚动条,最大值为100,最小值为1。

再画一个名称为List1的列表框,在属性窗口中输入列表项的值,分别是1000、1500、2000,如图2.1.2所示。

请编写适当的程序,使得运行程序时,当选择列表框中的某一项,将水平滚动条的长度改变为所选中的值。

PrivateSubForm_Load()

List1.Clear

List1.AddItem1000

List1.AddItem1500

List1.AddItem2000

EndSub

PrivateSubList1_Click()

IfList1.ListIndex>-1ThenHS.Width=Val(List1.Text)

EndSub

6.在名称为Form1的窗体上画一个名称为CD1的通用对话框,通过属性窗口设置CD1的初始路径为C:

\,默认的文件名为None,标题为“保存等级考试”, 如图2.5.1所示。

解题思路

  

启动VisualBasic系统,创建一个Form1窗体。

 在VB“工程”菜单栏中选择“部件”,选择microsoftcommondialogcontrol6.0

 在该窗体上画一个通用对话框控件,通过其属性窗口将名称设为CD1,DialogTitle属性设为“保存等级考试”,FileName属性设为None,InitDir属性设为c:

\。

  在PrivateSubForm_Load()事件过程中加入语句:

  PrivateSubForm_Load()

  CD1.ShowSave

  EndSub

7.在名称为Form1,标题为“菜单”的窗体上,设计满足如下要求的菜单。

 

1.产生20个0~1000的随机整数,然后统计出这20个整数中大于500的所有整数之和。

程序运行后,单击命令按钮,即可求出这些整数的和,并在窗体上显示出来。

OptionBase1

PrivateSubCommand1_Click()

Dima(20)AsInteger,sumAsInteger

Randomize

Fori=1To20

a(i)=Int(Rnd*1001)

Printa(i);

Ifa(i)>500Thensum=sum+a(i)

IfiMod5=0ThenPrint

Nexti

Print"大于500的所有整数为:

";sum

EndSub

2.编写程序,单击命令按钮,即可计算出0至1000范围内不能被7整除的整数的个数,并在文本框中显示出来。

PrivateSubCommand1_Click()

DimiAsInteger,nAsInteger

Fori=0To1000

IfiMod7<>0Thenn=n+1

Nexti

Text1.Text=Str(n)

EndSub

3.编写程序随机产生30个0至1000的整数,如果不采用数组,请找出其中的最小值。

界面如图所示。

PrivateSubCommand1_Click()

DimminAsInteger,iAsInteger,nAsInteger

Randomize

min=1000

Fori=1To30

n=Int(Rnd*1001)

Printn;

IfiMod5=0ThenPrint

Ifn

Nexti

Print"最小值为:

";min

EndSub

4.编写程序,单击“输入整数”按钮,利用InputBox函数输入一个整数,并在窗体上显示此整数的所有不同因子和因子个数。

图1是输入53后的结果,图2输入100的结果。

PrivateSubCommand1_Click()

Dimn%,i%,j%

n=InputBox("请输入一个整数")

Fori=1Ton-1

IfnModi=0Then

Printi

j=j+1

EndIf

Nexti

Print"因子数="&j

EndSub

5.程序功能是在文本框中输入一个整数n,单击命令按钮,则找出的数字按以下规律排列:

每个数是前面2个数之和,最后1个数是满足上述规律的最大的小于n的数,第一项和第二项的值为1。

如输入10,则显示的数字有:

1、1、2、3、5、8。

PrivateSubCommand1_Click()

n=Val(Text1.Text)

i=1

j=1

Printi

Printj

DoWhilei+j

k=i+j

i=j

j=k

Printk

Loop

EndSub6.最大公约数和最小公倍数。

输入两个整数,求出两者的最大公约数和最小公倍数。

PrivateSubForm_Click()

n1=InputBox("请输入一个正整数n")

m1=InputBox("请输入一个正整数m")

Ifm1>n1Then

m=m1:

n=n1

Else

m=n1:

n=m1

EndIf

r=mModn

DoWhiler<>0

m=n:

n=r:

r=mModn

Loop

Print"两数的最大公约数为:

";n

Print"两数的最小公倍数为:

";m1*n1/n

EndSub

7.输入一个正整数,判断其是否为素数(只能被1和自身整除的正整数)。

PrivateSubCommand1_Click()

n=Val(Text1.Text)

Fori=2Ton-1

IfnModi<>0Then

Label1.Caption=n&"是素数"

Else

Label1.Caption=n&"不是素数"

EndIf

Nexti

EndSub1.请设计窗体界面,实现排序。

单击“产生”按钮时,在Text1中显示10个10~50之间的随机数;单击“排序”后,在Text2中显示排序之后的结果。

要求:

定义一个sub子过程,用于实现对1维数组的排序功能。

Dima(10)AsInteger

Subpx(b%())

n=UBound(b)

Fori=nTo2Step-1

Forj=1Ton-1

Ifb(j)>b(j+1)Then

t=b(j)

b(j)=b(j+1)

b(j+1)=t

EndIf

Nextj

Nexti

EndSub

PrivateSubCommand1_Click()

Text1.Text=""

Randomize

Fori=1To10

a(i)=Int(Rnd*41+10)

Text1.Text=Text1.Text&a(i)&""

Nexti

EndSub

PrivateSubCommand2_Click()

Text2.Text=""

Callpx(a%())

Fori=1To10

Text2.Text=Text2.Text&a(i)&""

Nexti

EndSub2.请设计窗体界面,实现产生30个0~1000的整数,放入一个数组,然后输出其中的最小值。

要求:

定义一个函数过程Fmin,用于实现对一维数组最小值的查找。

FunctionFmin(aAsInteger,bAsInteger)AsInteger

Ifa

Fmin=a

Else

Fmin=b

EndIf

EndFunction

PrivateSubCommand1_Click()

DimxAsInteger,yAsInteger

Randomize

x=1000

Fori=1To30

y=Int(Rnd*1001)

x=Fmin(x,y)

Nexti

Printx

EndSub3.请在窗体上添加一个列表框,2个按钮和一个标签,实现:

单击“产生数据”:

在列表框中添加20个3位的随机整数。

单击“统计个数”:

在标签中显示其中水仙花的个数(一个数的值等于该数的各位数字的立方和时,此数被称为水仙花数,如153)。

要求:

定义一个过程judge,用于判断一个整数是否为水仙花数。

Dima(20)AsInteger

Subjudge(b%(),h%)

n=UBound(b)

Fori=1Ton

o=b(i)\100

p=(b(i)-100*o)\10

q=b(i)-100*o-10*p

Ifo^3+p^3+q^3=b(i)Then

h=h+1

EndIf

Nexti

EndSub

PrivateSubCommand1_Click()

List1.Clear

Randomize

Fori=1To20

a(i)=Int(Rnd*900+100)

List1.AddItem(a(i))

Nexti

EndSub

PrivateSubCommand2_Click()

DimxAsInteger

Calljudge(a(),x)

Label1.Caption="水仙花的个数是"&x

EndSub

4.假定在当前目录下有一个名为file1.txt文本文件,其中有若干行文本,请编写程序将文件中的内容按行显示在一个多行文本框中。

PrivateSubCommand1_Click()

Text1.Text=""

Open"D:

\file1.txt"ForInputAs#1

DoWhileNotEOF

(1)

LineInput#1,inputdata

Text1.Text=Text1.Text+inputdata+vbCrLf

Loop

Close#1

EndSub

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 预防医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1