秋VBWord文件下载.docx
- 文档编号:22553757
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:49
- 大小:197.60KB
秋VBWord文件下载.docx
《秋VBWord文件下载.docx》由会员分享,可在线阅读,更多相关《秋VBWord文件下载.docx(49页珍藏版)》请在冰豆网上搜索。
D.可以像调用Sub过程一样调用Function过程
28.以下Case语句中,错误的是___28_____。
A.Case0To10B.CaseIs>
10
C.CaseIs>
10AndIs<
50D.Case3,5,Is>
29.下面的表达式中,运算结果为True的是29。
A."
abcrd"
<
="
ABCRD"
B.Int(134.69)<
=CInt(134.69)
C.3>
2>
1D.Mid("
Visual"
1,4)=Right("
lausiV"
4)
30.设计界面时,要使一个文本框具有水平和垂直滚动条,应先将其30属性置为True,再将ScrollBar属性设置为3。
A.MultiLineB.AutoSizeC.AlignmentD.RightToLeft
二、填空题(请将答案填写在答题纸的相应答题号内,每个答案只占一行)
1.执行下面程序,单击Command1,则数组元素a(1,2)的数值是
(1),a(3,3)的数值是
(2),图片框中最后一行显示的是(3)。
OptionExplicit
PrivateSubCommand1_Click()
Dima(4,4)AsInteger,iAsInteger,jAsInteger
DimkAsInteger,numAsInteger
num=0
Fork=1To4
Fori=1Tok-1
num=num+1
a(i,k)=num
Nexti
Forj=kTo1Step-1
a(k,j)=num
Nextj
Nextk
Fori=1To4
Forj=1To4
Picture1.PrintRight("
"
&
a(i,j),3);
Picture1.Print
EndSub
2.执行下面程序,单击Command1,窗体上显示的第一行是(4),第二行是(5),第四行是(6)。
DimaAsInteger,bAsInteger,iAsInteger
a=2:
b=5
Fori=aToa*bStepa
Callsub1(i,a,b)
Printa,b
Printa,b,i
PrivateSubsub1(iAsInteger,aAsInteger,bAsInteger)
i=i+1
a=a+1
b=b+1
3.运行下面的程序,单击Command1,在窗体上显示的变量a的值为(7),变量b的值为
(8),变量c的值为(9)。
DimaAsInteger,bAsInteger,cAsInteger
a=5:
b=10:
c=15
Printfun(a,b,c)+fun(a,b,c)
Printa,b,c
PrivateFunctionfun(xAsInteger,yAsInteger,zAsInteger)AsInteger
z=x
x=x+y
y=y+z
fun=x+y
EndFunction
4.执行下面的程序,单击Command1,窗体上显示的第一行是(10),第二行是(11),第四行是(12)。
DimaAsInteger,bAsInteger
a=1:
b=1
Callsub1(a,b)
PrivateSubsub1(aAsInteger,bAsInteger)
a=a+b:
b=b+a
Ifa>
10Then
a=a+b
Else
EndIf
5.运行下列程序,单击Command1,在窗体上显示的第一行内容是(13),第二行的内容是
(14),第三行的内容是(15)。
DimsAsString
s="
Basic"
Calltrans(s)
PrivateSubtrans(sAsString)
DimjAsInteger,tAsString
DimkAsInteger
k=3
Do
j=InStr(s,"
a"
)
t=LCase(Right(s,j))
s=Right(t,Len(s)-k)&
Left(s,Len(t))
k=k-1
Prints
LoopUntilk=0
6.下面程序的功能是计算
的值。
请完善如下程序:
DimnAsInteger,stAsString,iAsInteger
DimkAsSingle,sAsSingle,jAsInteger
n=Text1
s=1
Fori=2Ton
(16)
Forj=1Toi
st=st&
CStr(i)
k=(17)
s=s+k
Text2=s
7.下面程序的功能是:
将输入的2位16进制数的每一位转换为一个四位的2进制数,再组合成为一个8位的2进制数。
DimhAsString,h1AsString*1,h2AsString*1
h=Text1
h1=Left(h,1):
h2=Right(h,1)
Text2=h2b(h1)&
h2b(h2)
PrivateFunctionh2b(pAsString)AsString
DimstAsString,iAsInteger
st="
0123456789ABCDEF"
Fori=1ToLen(st)
If(18)ThenExitFor
i=i-1
h2b=(19)
i=i\2
LoopUntili<
=0
h2b=(20)
8.下面程序的功能是:
输入一个n位的整数(n≤10),求出由这n个数字组成的最大整数和最小整数。
OptionBase1
DimnAsLong,a()AsInteger,iAsInteger
DimlargeAsString,smallAsString
Callchange(n,a)
Callsort(a)
Fori=1ToUBound(a)
large=a(i)&
large
small=(21)
Text2=large
Fori=1ToLen(small)
If(22)ThenExitFor
Ifi<
>
1Then
small=Mid(small,i,1)&
Left(small,i-1)&
Right(small,Len(small)-i)
Text3=small
PrivateSubsort(a()AsInteger)‘冒泡法排序
DimiAsInteger,jAsInteger,tAsInteger
Fori=1ToUBound(a)-1
Forj=1ToUBound(a)-i
If(23)Then
t=a(j)
a(j)=a(j+1)
a(j+1)=t
PrivateSubchange((24))
k=k+1
ReDimPreservea(k)
a(k)=nMod10
n=(25)
LoopUntiln=0
9.下面程序的功能是:
在文本框1中输入若干以空格分隔的整数(末尾无空格),程序自动将输入的数据分解并存储到一个一维数组,再把数组中所有重复的元素删除(只保留一个),并输出到文本框2。
Dima()AsInteger,iAsInteger,stAsString
DimkAsInteger,pAsInteger
st=Text1
p=InStr(st,"
)
Ifp<
0Then
(26)
a(k)=Val(Left(st,p-1))
st=Right(st,Len(st)-p)
(27)
a(k+1)=Val(st)
LoopUntil(28)
Calldel(a)
Text2=Text2&
Str(a(i))
Text2=LTrim(Text2)
PrivateSubdel(a()AsInteger)
DimiAsInteger,jAsInteger,kAsInteger
j=i+1
DoWhilej<
=UBound(a)
If(29)Then
Fork=jToUBound(a)-1
a(k)=a(k+1)
ReDimPreservea(UBound(a)-1)
(30)
Loop
LoopUntili>
UBound(a)
2008秋上机VB01
【考试须知】
1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;
2.考试结束后,文件必须存放在指定位置,否则适当扣分;
考试盘中若无指定文件,则不予评分;
3.程序代码书写应呈锯齿形。
一、改错题(14分)
【题目】本程序的功能是:
随机生成一个有n个元素的数组(n由InputBox函数输入),找出其中的最大元素并将它删除,再输出删除后的数组。
Dima()AsInteger,nAsInteger
DimiAsInteger
n=InputBox("
请输入数组个数"
,10)
ReDima(n)
Fori=1Ton
a(i)=Int(Rnd*100)+1
Text1=Text1&
CallLookup(a)
Fori=1Ton
PrivateSubLookup(a()AsInteger)
DimMaxvAsInteger,maxpAsInteger,iAsInteger
Maxv=a
(1):
maxp=1
Ifa(i)>
MaxvThen
Maxv=a(i):
maxp=i
Callmove_f(a,maxp)
PrivateSubmove_f(a()AsInteger,kAsInteger)
Fori=k+1ToUBound(a)
a(i)=a(i+1)
ReDima(UBound(a)-1)
【要求】
1.新建工程,输入上述代码,改正程序中的错误;
2.改错时,不得增加或删除语句,但可适当调整语句位置;
3.将窗体文件和工程文件分别命名为F1和P1,并保存到T盘的根目录下。
二、编程题(26分)
【题目】编写程序,找出指定范围[a,b]之间所有能构成幻影素数的数。
所谓幻影素数是指自身为素数,其反序数也是素数的数。
例如107与701都是素数,所以107是幻影素数。
【编程要求】
1.程序参考界面如图所示,编程时不得增加或减少界面对象或改变对象的种类,窗体及界面元素大小适中,且均可见;
2.
运行程序,在文本框A和文本框B中输入指定数据范围,再按“运行”按钮,将找出的幻影素数存放在列表框中(若指定区间无幻影素数,则输出“本区间无幻影素数”)。
按“清除”按钮,将文本框和列表框清空,焦点置于文本框A上;
3.程序中应定义一个名为prime的函数过程,用于判断一个整数是否为素数;
再定义一个求一个整数的反序数的通用过程。
将窗体文件和工程文件分别命名为F2和P2,并保存到T盘的根目录下。
VB02
1.改错题的界面不作要求,主要用来调试程序,若题目中有参考界面,则仅作参考;
3.
程序代码书写应呈锯齿形。
【题目】本程序的功能是查找80~150范围内的特殊十进制数据,其特点是该十进制数对应的8进制数为回文数(指从左向右读与从右向左读是一样的数)。
例如十进制数据105对应八进制数为151,151属于回文数,所以105就是符合要求的数。
DimiAsInteger,hwAsString,fgAsBoolean
DimstAsString
Fori=80To150
fg=False
Callhw8(i,hw,fg)
IffgThen
st=CStr(i)&
==>
"
hw&
&
O"
List1.AddItemst
PrivateSubhw8(nAsInteger,hwAsString,fAsBoolean)
DimkAsInteger,st()AsString*1,iAsInteger
hw="
ReDimPreservest(k)
st(k)=nMod8
hw=st(k)&
hw
n=n\8
LoopUntiln<
0
Fori=1ToUBound(st)/2
Ifst(i)<
st(UBound(st)-i+1)ThenExitFor
f=True
【题目】编写程序,验证任意一个不超过9位的自然数,经过下述的反复变换最终得到123。
变换方法是:
统计该数的偶数(0算偶数)个数记为a,奇数个数记为b,该数位数记为c;
以a为百位数、b为十位数、c为个位数,得到一个新数(若a=0,则以b为百位数、a为十位数),若这个新数不是123,再按上述步骤进行变换,直到出现123为止。
123被称为陷阱数。
运行程序,在文本框1中任意输入一个不超过9位的自然数后,按“验证”按钮,则根据变换规则生成新数,将其输出到列表框,重复变换操作,直到得到123为止,最后输出“验证成功”信息;
按“清除”按钮,将文本框和列表框清空,焦点置于文本框上;
按“结束”按钮,结束程序运行;
3.程序中应定义一个名为Validate的通用过程,用于对数据进行变换操作。
VB03
【题目】本程序的功能是将密文解密。
密文中被非数字字符分隔的连续的数字是5进制数,每个5进制数对应一个明文字符的ASCII代码。
例如5进制数242对应的ASCII代码值是72,也就是字母“H”,密文末尾以非数字字符结束。
DimmwAsString,stAsString,iAsInteger
DimpAsString,t()AsString,kAsInteger
mw=Text1
Fori=1ToLen(mw)
p=Mid(mw,i,1)
Ifp>
0"
Andp<
4"
Then
p
ElseIfLen(st)<
ReDimt(k)
t(k)=st
Fori=1ToUBound(t)
k=convert(t(i))
Chr(k)
Text2=st
PrivateFunctionconvert(pAsString)AsInteger
DimiAsInteger,kAsInteger,nAsInteger
Fori=Len(p)To1
n=n+Val(Mid(p,i,1))*5^k
convert=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB
![提示](https://static.bdocx.com/images/bang_tan.gif)