湖南省计算机二级考试VB题库Word文档下载推荐.docx

上传人:b****1 文档编号:1032660 上传时间:2023-04-30 格式:DOCX 页数:35 大小:35.46KB
下载 相关 举报
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第1页
第1页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第2页
第2页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第3页
第3页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第4页
第4页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第5页
第5页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第6页
第6页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第7页
第7页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第8页
第8页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第9页
第9页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第10页
第10页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第11页
第11页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第12页
第12页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第13页
第13页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第14页
第14页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第15页
第15页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第16页
第16页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第17页
第17页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第18页
第18页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第19页
第19页 / 共35页
湖南省计算机二级考试VB题库Word文档下载推荐.docx_第20页
第20页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

湖南省计算机二级考试VB题库Word文档下载推荐.docx

《湖南省计算机二级考试VB题库Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《湖南省计算机二级考试VB题库Word文档下载推荐.docx(35页珍藏版)》请在冰点文库上搜索。

湖南省计算机二级考试VB题库Word文档下载推荐.docx

211314

【试题3】设某四位数的各位数字的平方和等于100,共有多少个这种四位数?

PrivateSubcmdFourSqr_Click()

DimaasInteger,basInteger,casInteger,dasInteger

DimiasInteger,countAsInteger

count=0

i=1000

DoUntil________________

a=i\1000

b=(iMod1000)\100

c=Int((i–a*1000–b*100)\10)

d=iMod10

If100=a*a+b*b+c*c+d*dThen___________________

i=i+1

Loop

PrintTab(5);

"

满足条件的四位数数目为:

"

;

count

【答案】i>

=10000,count=count+1结果:

49

【试题4】求方程51X-21Y=3,在|X|≤201,|Y|≤81内共有多少组整数解?

PrivateSubcmdIntegerRoot_Click()

DimcountAsInteger

Forx=-201To201

Fory=-81To81

If_________________Thencount=count+1

Next________________

“符合条件的数的数目为:

”;

count

【答案】51*x-21*y=3,y,x结果:

10

【试题5】利用公式ex≈1+x+x2/2!

+x3/3!

+x4/4!

…+xn/n!

求ex的近似值。

设x=9,n=25。

PrivateSubForm_click()

DimnAsInteger,xAsInteger,iAsInteger

DimxpowerAsSingle,yAsSingle

x=int(InputBox("

请输入x:

))

n=int(InputBox("

请输入n:

y=1

factor=1:

xpower=1

Fori=1Ton

factor=factor*i

xpower=

y=

Nexti

Printy

【答案】xpower*x,y+xpower/factor结果:

8103.059

【试题6】已知菲波纳契数列{X}中,X

(1)=1,X

(2)=1,X(n)=X(n-1)+X(n-2),编程求数列前30个数中,所有质数的和。

PrivateSubForm_Click()

DimsAsLong

DimIAsInteger

DimNo(30)AsLong

No

(1)=1

No

(2)=1

s=0

For

No(I)=No(I–1)+No(I–2)

j=2:

k=sqr(No(I))

DoWhilej<

=k

IfNo(I)Modj=0ThenExitDo

j=j+1

Ifj>

kThen

NextI

Print"

前三十个菲波纳契数中质数和是:

s

【答案】I=3To30,s=s+No(I)结果:

544828

【试题7】 

求27090,21672,11352,8127的最大公约数。

OptionBase1

FunctionGreatestCommonDivisor(ByValmAsLong,ByValnAsLong)AsLong

DimtAsLong

DimrAsLong

Ifm<

nThent=m:

m=n:

n=t

Do

r=mModn

m=n

n=r

LoopUntilr=0

GreatestCommonDivisor=

Dima,gcd&

iAsByte

a=Array(27090,21672,11352,8127)

gcd=a

(1)

Fori=2To

gcd=GreatestCommonDivisor(gcd,a(i))

Next

Printgcd

【答案】m,UBound(a)结果:

129

二、程序改错

【第1题】下面程序是输出100-200之间的所有素数个数,程序中有两行有错误。

改正错误,使它能输出正确的结果。

Number=0

Forx=101To199Step2

i=2

k=Int(x/2)

DoWhilei<

=k

IfxModi=0ThenExitFor

Ifi<

kThen

Number=Number+1

EndIf

Nextx

PrintNumber

【答案】

ExitFor改为ExitDo

Ifi<

kThen改为Ifi>

kThen

【第2题】下面程序是解决猴子吃桃问题。

猴子第1天摘下若干桃子,当即吃掉一半,又多吃一个,第二天将剩余的部分吃掉一半还多一个;

以此类推,到第10天只剩余1个。

问第1天共摘了多少桃子。

程序中有两行有错误。

OptionExplicit

DimdayAsInteger,sumAsInteger

day=10;

sum=1

DoWhileday>

0

sum=sum*2

day=day–1

Printsum

Day=10改为Day=9

sum=sum*2改为sum=(sum+1)*2

【第3题】一个两位数的正整数,如果将其个位数与十位数字对调所生成的数称为其对调数,如28是82的对调数。

现给定一个两位的正整数,请找到另一个两位的整数,使这两个数之和等于它们的各自的对调数之和。

这样的另一个两位数有多少个。

程序中有两行有错误(从键盘输入的两位数为46)改正错误,使它能输出正确的结果。

DimxAsInteger,yAsInteger,numberasInteger

DimxfAsInteger,yfAsInteger

请输入一个2位正整数:

LoopWhile(x<

9)Or(x>

99)

xf=(xMod10)*10+Int(y/10)

Fory=10To99

yf=yMod10+Int(y/10)

Ifx+y=xf+yfThen

Printx;

+"

y;

="

xf;

yf;

x+y

Nexty

xf=(xMod10)*10+Int(y/10)改为xf=(xMod10)*10+Int(x/10)

yf=yMod10+Int(y/10)改为yf=(yMod10)*10+Int(y/10)

【第4题】下面程序解决的问题是:

已知24有8个正整数因子(即:

1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。

求[100,300]之间能被其因子数目整除的数中最大的数。

PrivateSubCommand1_Click()

DimNAsInteger

DimsAsInteger

DimiAsInteger

ForN=300To100

Fori=1ToN

IfNModi=0Then

s=s+1

IfsModN=0Then

PrintN

ExitFor

NextN

ForN=300To100改为ForN=300To100Step-1

IfsModN=0Then改为IfNMods=0Then

【第5题】若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是“四位双平方数”。

求最小的四位双平方数。

程序中有行两有错误。

DimaAsInteger,bAsInteger,cAsInteger,dAsInteger,xAsInteger

Forx=1000To9999

a=Int(x/1000)

b=Int(x/100)–a*100

c=Int(x/10)–a*100–b*10

d=x–a*1000–b*100–c*10

IfSqr(x)=Int(Sqr(x))AndSqr(a+b+c+d)=Sqr(a+b+c+d)Then

b=Int(x/100)–a*100改为b=Int(x/100)–a*10

或b=x\100mod10

Sqr(a+b+c+d)=Sqr(a+b+c+d)改为:

Sqr(a+b+c+d)=Int(Sqr(a+b+c+d))

【第6题】下面程序的功能是:

用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止。

π/4=1-1/3+1/5-1/7+…

PrintFormat(fun(0.0001),"

#.####"

PrivateFunctionfun(numAsSingle)AsSingle

DimsAsInteger,nAsInteger

DimpiAsSingle,tAsSingle

pi=0:

t=1:

s=1:

n=1

While(t>

=num)

pi=pi+t

n=n+2

s=-s

t=s%n

pi=pi*4

fun=pi

pi=pi+t改为pi=pi+t*s

t=s%n改为t=1/n

【第7题】有这样一个三位数,其尾数不大于2。

若将尾数移到首位后(其余二个数字次序不变,依次后推),新三位数将是原三位数的两倍多。

求这个三位数。

程序中有错误,改正错误,使程序能输出正确的结果。

Dimi%,j%,k%,n%,m%

Fori=1To9

Forj=0To9

Fork=1To9

n=100*i+10*k+j

m=100*k+10*j+i

Ifn>

=2*mOrn<

=3*mThenPrintm

Nextk

Nextj

Fori=1To9改为Fori=1To2

=3*mThen改为:

=2*mandn<

=3*mThen

三、程序设计

【第1题】编写程序,求共有几组i、j、k符合算式ijk+kji=1333,其中i、j、k是0~9之间的一位整数。

【参考答案】

Functionfun()AsInteger

DimiAsInteger,jAsInteger,kAsInteger,nAsInteger

Forj=0To9

Fork=1To9

If101*(i+k)+20*j=1333Thenn=n+1:

Printi;

j;

k,

Next

Next

fun=n

EndFunction

【第2题】问[100,200]之间有奇数个不同因子的整数共有多少个?

分析:

因M=XY,故因子总是成对出现的,除非X=Y。

即:

只有完全平方数才有奇数个因子。

[100,200]之间平方数从102到142共5个。

【第3题】求[500,2500]之间按递增顺序的素数中的第25大的素数。

DimkAsLong,nAsLong,iAsLong

Fork=503To2500Step2

Fori=2ToSqr(k)

IfkModi=0ThenExitFor

Ifi>

Sqr(k)Then

n=n+1

Ifn=25ThenExitFor

EndIf

Printk

【第4题】A,B,C三个正整数,当满足1/A2+1/B2=1/C2关系时,称为倒勾股数。

求130<

A+B+C<

150的倒勾股数有多少组。

说明:

为避免分数运算产生误差,将1/A2+1/B2=1/C2等式转化为A2B2=(A2+B2)C2

DimaAsLong,bAsLong,cAsLong,nAsLong

Fora=2To150

Forb=2To150

Forc=1Tob-1

Ifa+b+c>

130Anda+b+c<

150Then

Ifa*a*b*b=c*c*(a*a+b*b)Thenn=n+1:

Printn

【第5题】已知正整数A,B(假定A<

B),满足A*B=5432,求S=A+B的最小值。

当AB为定值时,A与B越接近,A+B越小。

DimaAsLong

a=Sqr(5432)

While5432Moda

a=a+1

Printa+5432/a

【第6题】编程求四位数的偶数中,各位数字之和是6的倍数的数的和。

DimkAsLong,sAsLong

Fork=1000To9998Step2

If(k\1000+(k\100Mod10)+(k\10Mod10)+kMod10)Mod6=0Thens=s+k

Prints

【第7题】编程统计满足以下条件的四位数的个数。

该四位数是一个完全平方数,其第1位与第3位数字之和为12,第2位与第4位数字之积为24。

DimkAsLong,nAsLong,tAsLong

Fork=32To99'

四位数的平方数最小的是322,最大的是992。

t=k*k

Ift\1000+(t\10Mod10)=12And(t\100Mod10)*(tMod10)=24Thenn=n+1

【第8题】编写程序,统计200~300之间的所有满足三个数字之积为24,三个数字之和为10的数的个数。

这三个数字只能是2、2、6。

满足条件的数的个数为2个:

226、262。

Fort=200To300

If(t\100)*(t\10Mod10)*(tMod10)=24Then

If(t\100)+(t\10Mod10)+(tMod10)=10Thenn=n+1EndIf

【第9题】求一正整数等差数列前三项和,该数列前四项之和是26、之积是880。

880=2*5*8*11。

数列为2,5,8,11,14,17,…

DimaAsLong,dAsLong

Fora=1To5'

首项搜索:

前四项和为4a+6d=26,知a<

6

Ford=1To4'

公差搜索:

前四项和为4a+6d=26,知d<

5

If4*a+6*d=26Anda*(a+d)*(a+2*d)*(a+3*d)=880ThenGoToRR

RR:

Print3*a+3*d'

输出前三项和

【第10题】从100米高度落下一球,每次落地后反弹高度为上一次下落高度的3/4,求该球第10次落地时,前后所经过的路径长度.

设第k次反弹高度为h,第k次落地时经过的总路径为s,则第k+1次反弹高度为3h/4,第k+1次落地时经过的总路径为s+2h。

DimhAsSingle,sAsSingle,kAsLong

s=100:

h=100*3/4'

k=1时

Fork=2To10

s=s+2*h

h=h*3/4

【第11题】 

当n=20时,求S=1+(1+20.5)+(1+20.5+30.5)+…+(1+20.5+30.5+…+n0.5)的值。

要求:

按四舍五入的方式精确到小数点后第二位。

设第k项为x,则第k+1项为x+(k+1)0.5。

DimxAsSingle,sAsSingle,kAsLong

x=1:

s=1

Fork=2To20

x=x+Sqr(k)

s=s+x

PrintFormat(s,"

#.##"

注意:

不能使用round函数进行四舍五入。

Clng、Round之类的函数遇到5时总是使上一位为偶数。

如:

Clng(3.5)=Clng(4.5)=4;

Round(3.45,1)=Round(3.35,1)=3.4。

实数赋值给整型变量也有类似情况:

x=3.5:

y=4.5结果是x=y=4。

【第12题】 

已知Fibonacci数列:

1,1,2,3,5,8,……,它可由下面公式表述:

F

(1)=1 

 

F

(2)=1 

F(n)=F(n-1)+F(n-2)n>

2

试求F

(2)+F(4)+F(6)+……+F(50)值。

y=1:

Fork=1To24'

每次求两项

y=x+y:

x=y-x

s=s+y

循环部分也可写为:

x=x+y:

y=x+y

【第13题】求[500,1999]之间的十位数字为7的素数的个数。

DimiAsLong,kAsLong,nAsLong

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2