中国海洋大学VB上机试题Word格式.docx

上传人:b****1 文档编号:13684574 上传时间:2022-10-12 格式:DOCX 页数:20 大小:21.06KB
下载 相关 举报
中国海洋大学VB上机试题Word格式.docx_第1页
第1页 / 共20页
中国海洋大学VB上机试题Word格式.docx_第2页
第2页 / 共20页
中国海洋大学VB上机试题Word格式.docx_第3页
第3页 / 共20页
中国海洋大学VB上机试题Word格式.docx_第4页
第4页 / 共20页
中国海洋大学VB上机试题Word格式.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

中国海洋大学VB上机试题Word格式.docx

《中国海洋大学VB上机试题Word格式.docx》由会员分享,可在线阅读,更多相关《中国海洋大学VB上机试题Word格式.docx(20页珍藏版)》请在冰豆网上搜索。

中国海洋大学VB上机试题Word格式.docx

j=21-i

t=a(i):

a(i)=a(j):

a(j)=t

Fori=1To20

Nexti

EndSub

2.从数组中删除一个数。

先定义一个一维数组,大小、数组的值自定。

从键盘上输入一个数,若这个数在数组当中,就把它删除;

若这个数不在数组中,提示“该数不在数组中”

注意:

1)如果数组中存在多个与该数相同的元素,每一个都能删除;

2)能实现多次删除

Dima()AsInteger

PrivateSubCommand1_Click()

DimiAsInteger,jAsInteger,nAsInteger,kAsInteger,mAsInteger,flagAsBoolean

n=InputBox("

查找的数是:

i=0:

flag=False

Do

Ifa(i)=nThen

j=i:

flag=True

Fork=jToUBound(a)-1

a(k)=a(k+1)

Nextk

ReDimPreservea(UBound(a)-1)

i=i-1

EndIf

i=i+1

LoopWhile(i<

=UBound(a))

Ifflag=FalseThen

MsgBox(n&

"

不在该数组中"

Else

删除"

&

n&

后的数组是:

Fori=0ToUBound(a)

EndIf

DimiAsInteger

ReDima(9)AsInteger

Show

原来数组为:

Fori=0To9

a(i)=Int(Rnd*99+1)

3.数组a中存放着升序排列的数据,使用array赋值,将inputbox输入的新数插入到数组中,插入后数组仍有序。

要求利用动态数组,能够实现多次插入

OptionBase1

Dima()AsInteger,iAsInteger,kAsInteger,mAsInteger,nAsInteger

随机产生的原数组:

ReDimPreservea(10)

n=10

Fori=1Ton

a(i)=Int(Rnd*99+1)

Next

Fori=1Ton-1

Forj=i+1Ton

Ifa(i)>

a(j)Then

Nextj

Printa(n)

EndSub

PrivateSubCommand2_Click()

n=n+1

ReDimPreservea(n)

m=InputBox("

输入一个正整数"

插入"

;

m;

后的数组为"

Ifa

(1)<

mAnda(n-1)>

mThen

Fori=2Ton-2

Ifa(i)<

=mAnda(i+1)>

=mThenj=i:

ExitFor

a(j+1)=m

Printa(i);

Ifm<

=a

(1)Then

Fori=nTo1Step-1

a(i+1)=a(i)

Next

a

(1)=m

Ifm>

=a(10)Then

a(n)=m

Fori=1Ton

Dima()AsInteger,iAsInteger,kAsInteger,mAsInteger,nAsInteger,jAsInteger,tAsInteger

m=Val(InputBox("

请输入要插入的数据"

))

a(i)ThenExitFor

Fork=nToi-1Step-1

a(k)=a(k-1)

Nextk

a(k)=m

n=8

ReDima(n)

a

(1)=5:

a

(2)=10:

a(3)=15:

a(4)=20:

a(5)=30:

a(6)=90:

a(7)=108:

a(8)=1025

4.6个评委为4位歌手打分,分数介于1-100之间。

去掉一个最高分,一个最低分,求出每位选手的最后得分。

将4位歌手得分从高到低排列输出,同时输出该选手的编号。

如:

歌手395分

歌手187分

歌手480分

歌手270分

PrivateTypecj'

自定义类型

naAsString*3

fsAsInteger

EndType

Dima(4,6)AsSingle

DimiAsInteger,jAsInteger

Fori=1To4

Forj=1To6

a(i,j)=InputBox("

请第"

j&

位评委给第"

i&

位选手打分"

DimiAsInteger,jAsInteger,b(4)Ascj

DimmaxAsSingle,sumAsSingle,minAsSingle,aveAsSingle,tAscj

max=a(i,1):

sum=0

min=a(i,1):

ave=0

Ifa(i,j)>

maxThenmax=a(i,j)

Ifa(i,j)<

minThenmin=a(i,j)

sum=sum+a(i,j)

ave=(sum-max-min)/4

b(i).na="

歌手"

i:

b(i).fs=ave

Fori=1To3

Forj=i+1To4

Ifb(i).fs<

b(j).fsThen

t=b(i):

b(i)=b(j):

b(j)=t

Printb(i).na;

Spc

(1);

b(i).fs&

分"

Printb(4).na;

b(4).fs&

5.编写函数求一元二次方程ax2bxc=0的解。

要求考虑方程有两相等实根、两不等实根和两个虚根的情况。

a=CSng(InputBox("

请输入二次项系数"

b=CSng(InputBox("

请输入一次项系数"

c=CSng(InputBox("

请输入常数项"

Printgetresult(a,b,c)

PublicFunctiongetresult(ByValaAsSingle,ByValbAsSingle,ByValcAsSingle)AsString

Ifb^2-4*a*c>

0Then

X1=((-1)*b+(b^2-4*a*c)^0.5)/(2*a)

X2=((-1)*b-(b^2-4*a*c)^0.5)/(2*a)

getresult="

x1="

CStr(X1)&

Chr(9)&

x2="

cstr(X2)

X=(-1)*b/(2*a)

Ifb^2=4*a*cThen

x="

CStr(X)

Else

y=(4*a*c-b^2)^0.5

CStr(X)&

+"

CStr(y)&

i"

-"

EndFunction

6.任意输入一组字符,统计出大写字母多少

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

当前位置:首页 > 初中教育 > 理化生

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

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