VB语言基础编程练习.docx
- 文档编号:26653313
- 上传时间:2023-06-21
- 格式:DOCX
- 页数:20
- 大小:411.03KB
VB语言基础编程练习.docx
《VB语言基础编程练习.docx》由会员分享,可在线阅读,更多相关《VB语言基础编程练习.docx(20页珍藏版)》请在冰豆网上搜索。
VB语言基础编程练习
第二章VB语言基础编程练习
一、编程:
1.试分别用块结构语句与SelectCase语言实现符号函数。
程序参考界面如图2-1所示,属性要求如表2-1所示。
图2-1
表2-1
控件
属性名称
属性值
控件
属性名称
属性值
窗体
Caption
文本框2
Name
Text
标签1
Caption
命令按钮1
Name
Caption
标签2
Caption
命令按钮2
Name
Caption
文本框1
Name
Text
命令按钮3
Name
Caption
2.编写程序,利用文本框检查用户口令。
程序界面如图2-2所示,主要属性如表2-2所示。
图2-2
表2-2
控件
属性名称
属性值
控件
属性名称
属性值
标签1
Caption
命令按钮1
Name
Caption
文本框1
Text
PasswordChar
命令按钮2
Name
Caption
3.根据学生的考试成绩,只要满足如下条件之一即可给予奖励:
(1)所考5门课程的成绩超过450分。
(2)每门课程的成绩均在85分以上。
(3)前3门课程(主课)的成绩在95分以上,后两门课程(非主课)的成绩都在80分以上。
程序界面如图2-3所示。
图2-3
4.小麦税款与粮款的计算程序。
编程要求:
(1)程序参考界面如图2-4所示,其中Label1对象用于显示“小麦的收购价格是:
1.10元/公斤”、“农业税额:
55元/亩”等提示信息。
编程时不能增加或减少界面对象或改变对象的种类,但界面元素的大小、位置可随意设置。
(2)实现以下功能。
①单击“计算”按钮,可根据输入的小麦数量以及所拥有的土地亩数,求出应缴税款和应得粮款(应得粮款=小麦总金额-应缴税款),并显示在相应的文本框中。
图2-4
②单击“清除”按钮,清除4个文本框中的内容。
③单击“结束”按钮,结束程序的运行。
5.从键盘输入任意3个数,将它们从大到小进行排序。
界面如图2-5所示。
图2-5
编程要求:
将需要排序的3个数输入X、Y、Z文本框中,单击“比较”按钮后,中间3个文本框中显示排序后从大到小的3个数,下面3个文本框用于显示在进行交换时中间变量的值。
控件的属性可自行确定。
6.从键盘输入一个学生的学号与考试成绩,然后输出该学生的学号与考试成绩,并根据成绩,按下面的规定输出对该学生的评语。
成绩:
85~10060~8450~5940~490~39
评语:
VeryGoodGoodFairPoorFail
编程要求:
(1)程序界面如图2-6所示。
图2-6
(2)成绩判定采用SelectCase语句结构。
7.设计一个程序,从键盘输入若干个学生的分数,计算并输出及格、不及格的人数及总平均分。
编程要求:
单击“输入”按钮时,用输入框输入学生人数与各学生的成绩。
在输入成绩时,应提示输入的第几个学生的成绩。
输入完毕后,单击“计算”按钮显示计算结果,同时标签上显示有多少个学生参加考试。
程序界面如图2-7所示。
图2-7
8.字符类型统计。
编程要求:
从键盘输入任意字母或数字至文本框中,单击“统计”按钮对其进行分类统计(分别按大小写字母、奇数、偶数进行统计),统计结果显示在4个相应得标签中。
界面如图2-8所示。
图2-8
9.打印1~20之间的数的平方、平方根、自然对数、e指数的数学用表。
要求按如图2-9所示的界面输出。
10.从键盘输入10个数,打印其中的负数,并分别计算正数的和与负数的和。
编程要求:
(1)10个数通过输入框函数输入。
(2)程序运行时,将正数与负数分别放置在两个文本框中,在文本框的下方分别显示正数的和与负数的和。
程序运行界面如图2-10所示。
图2-10
11.打印九九乘法表(要求只输出下三角)。
编程要求:
要求程序运行的界面如图2-11所示。
图2-11
12.设计一个程序,根据输入数组元素的下标输出对应元素的值。
编程要求:
(1)程序运行后的界面如图2-12所示。
(2)数组为二维数组,上、下界由输入框输入。
数组元素的值为该元素所在行号与列号的乘积。
(3)程序能判断下标值是否正确,若越界则给出错误信息,同时将光标置于“行号”文本框内。
图2-12
13.有一个n×m的矩阵,找出其中最大的元素所在的行和列,并输出其值、列号和行号。
编程要求:
(1)使用动态数组,n与m的值由用户通过文本框输入。
(2)数组的值通过随机函数产生,范围在3~200之间。
(3)运行后的界面如图2-13所示。
图2-13
14.编写程序实现矩阵的转置,即将n×m矩阵变为m×n矩阵。
编程要求:
(1)数组可通过随机函数产生。
(2)转置前、后的数组分别显示在两个图片框中。
(3)程序的运行界面如图2-14所示。
15.设计一个简易的记事本,要求能够实现“复制”、“剪切”、“粘贴”、“退出”功能。
编程要求:
(1)程序的运行界面如图2-15所示。
图2-14
(2)运行窗体没有“最大化”、“最小化”按钮,也不可以改变大小。
(3)复制、剪切、粘贴可以使用文本框的SelText、SelStart属性。
(4)命令按钮采用控件数组。
图2-15
16.编写一个大奖赛统计选手得分的程序。
编程要求:
(1)程序参考界面如图2-16所示,其中文本框Text1用于显示得分得情况.。
编程时不能增加或减少界面对象或改变对象的种类,但界面元素的大小、位置可随意设置。
图2-16
(2)单击“得分显示”按钮,可利用随机函数生成15个70~99之间的随机整数(可放入数组中)作为某选手的得分,并将其得分添加到文本框中。
(3)单击“计算最后得分”按钮,可计算该选手的最后得分,计算方法是去掉一个最高分和一个最低分,然后将剩下的得分求平均,即为该选手的最后得分,并将最后得分显示到相应的文本框中。
(4)单击“清除”按钮,清除文本框中所有的内容。
二、改错或填充
1.个人所得税的计算程序。
从2006年1月1日起,个人所得税起征点调整为1600元。
设超过1600元的部分为x,x在20000元以下的个人所得税如表2-3所示。
税额的计算公式为:
应纳税=x×税率-速算扣除数
表2-3
级数
全月应纳税所得额x
税率/%
速算扣除数
1
不超过500元
5
0
2
500~2000
10
25
3
2000~5000
15
125
4
5000~20000
20
375
“计算”按钮的事件过程是:
从键盘输入某人一个月的总收入,计算其应交所得税,并将其显示在相应的文本框中。
试将该程序填写完整。
程序界面如图2-17所示。
PrivateSubcmdJs_Click()
DimxAsLong,yAsLong
X=Val(txtSr.Text)-1600
Ifx<=0Then
txtSe.Text=”本月不需要交税!
”
Else
SelectCasex
CaseIs<=500
y=x*0.05
CaseIs<=2000
y=
CaseIs<=5000图2-17
y=
CaseIs
y=
EndSelect
txtSe.Text=y
EndIf
EndSub
2.编写程序,验证输入的正3位数是否为同构数。
若x出现在自己平方数的末3位,则x是同构数,如625的平方是,则625为同构数。
编程要求:
(1)程序参考界面如图2-18(a)所示。
编程时不能增加或减少界面对象或改变对象的种类,但界面元素的大小、位置可随意设置。
(2)单击“验证”按钮,验证输入的数是否为同构数,根据验证结果给出如图2-22(b)所示的信息提示。
(3)单击“结束”按钮,结束程序的运行。
试修改以下程序中的错误。
OptionExplicit
PrivateSubCommand1_Click()
DimyAsLong,xAsInteger
x=Text1.Text
y=x
IfyMod100Then
MsgBoxText1.Text+”是同构数”
Else
MsgBoxText1.Text+”不是同构数”
EndIf
EndSub
PrivateSubCommand2_Click()
End
EndSub
(a)(b)
图2-18
3.编写程序求出所有100以内的自然数对。
自然数对是指自然数的和与差都是平方数(如8与17的和25是平方数,其差9也是平方数,则8与17为自然数对)。
在窗体上设置一个命令按钮,名称为cmdJs,然后将以下代码输入并补充完整。
PrivateSubcmdJs_Click()
Fori=1To100
Forj=1To
IfThen
EndIf
Nextj
Nexti
EndSub
4.求1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。
将以下代码输入到窗体的Click事件过程中,并改正其中的错误。
PrivateSubForm_Click()
DimnAsInteger,sAsLong
s=1
n=InputBox(“请输入需要计算的数N”)
Fori=1Ton
Forj=1Ton
s=s+j+i
Nextj
Nexti
Prints
EndSub
5.编写程序,判断从键盘输入的正整数(>2)是否为素数。
在窗体上有一个命令按钮cmdJuge,其对应的代码如下,上机验证并修改其中的错误。
PrivateSubcmdJuge_Click()
DimnAsInteger
n=InputBox(“请输入一个大于2的正整数”)
k=n^2
Fori=2Ton
Ifn\i=Int(n/i)ThenExitFor
Nexti
Ifi<=kThen
Print“N是素数!
”
Else
Print“N不是素数!
”
EndIf
EndSub
6.打印如下的数字金字塔:
1
121
12321
……
将以下代码输入到窗体的Click事件过程中,并改正原程序中的错误。
PrivateSubForm_Click()
Fori=1To9
PrintTab(10);
Forj=1Toi
Printj;
Nextj
Forj=iTo1
PrintStr(j);
Nextj
Nexti
EndSub
7.勾股定理中3个数的关系为a2+b2=c2。
编写程序,输出30以内的满足上述关系的整数组合。
在窗体的Click事件中输入以下代码,并将其补充完整。
PrivateSubForm_Click()
Fori=1To
Forj=To30
Fork=1To30
IfThenPrinti,j,k
Nextk
Nextj
Nexti
EndSub
8.百鸡问题:
100元购买100只鸡,公鸡5元1只,母鸡3元1只,小鸡3只1元,问公鸡、母鸡、小鸡各多少只?
在窗体的Click事件中输入以下代码,并将其补充完整。
PrivateSubForm_Click()
PrintTab(5);”公鸡”;Tab(15);”母鸡”;Tab(25);”小鸡”
Fori=0To
Forj=0To
IfThen
PrintTab(5);i;Tab(15);j;Tab(25);
EndIf
Nextj
Nexti
EndSub
9.通过随机函数产生10个10~100之间的整数,用冒泡法对其进行从大到小的排序。
试上机验证并修改以下代码:
PrivateSubForm_Click()
Dima(1To10)AsInteger
DimtmpAsInteger
Fori=1To10
a(i)=Int(100*Rnd)
Nexti
Fori=1To9
Forj=iTo10
Ifa(i)>=a(j)Then
tmp=a(j)
a(i)=a(i)
a(j)=tmp
EndIf
Nextj
Nexti
Fori=1To10
Printa(i);
Nexti
EndSub
10.计算表达式:
要求计算精度为第n项的值小于10-5。
程序的运行界面如图2-19所示。
“计算”按钮的事件过程如下所示,试补充完整。
PrivateSubcmdJs_Click()
DimxAsInteger,nAsInteger
DimsAsSingle,tAsSingle
s=1
x=Val(txtX.Text)
n=1
Do
n=
t=n*x/x^n
If
Loop图2-19
txtY.Text=s
EndSub
11.密码翻译程序。
程序运行界面如图2-20所示。
要求输入的原码一律转换为大写字母进行译码,若出现字母以外的其他字符,则显示出错信息。
译码规则如表2-4所示。
图2-20
表2-4
原码(输入码)
A
B
C
D
E
…
X
Y
Z
译码(输出码)
G
H
I
J
K
…
D
E
F
上机验证并改正以下代码:
PrivateSubcmdTran_Click()
DimxAsString,yAsString
DimiAsInteger,tAsInteger
x=Ucase(txtIput.Text)
i=1
DoWhilei>=Len(x)
t=Mid(x,i,1)
Ift>90Andt<65Then
MsgBox“输入错误”
ExitFor
Else
Ift+6>90Then
t=t-26
Else
t=t+6
EndIf
EndIf
y=Chr(t)
i=i+1
Loop
txtOutput.Text=y
EndSub
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 语言 基础 编程 练习