VB经典的程序设计题文档格式.docx

上传人:b****6 文档编号:19168940 上传时间:2023-01-04 格式:DOCX 页数:15 大小:29.08KB
下载 相关 举报
VB经典的程序设计题文档格式.docx_第1页
第1页 / 共15页
VB经典的程序设计题文档格式.docx_第2页
第2页 / 共15页
VB经典的程序设计题文档格式.docx_第3页
第3页 / 共15页
VB经典的程序设计题文档格式.docx_第4页
第4页 / 共15页
VB经典的程序设计题文档格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

VB经典的程序设计题文档格式.docx

《VB经典的程序设计题文档格式.docx》由会员分享,可在线阅读,更多相关《VB经典的程序设计题文档格式.docx(15页珍藏版)》请在冰豆网上搜索。

VB经典的程序设计题文档格式.docx

Constpi=3.1415926

r=Val(InputBox("

请输入圆的半径"

))

Print"

圆的周长为:

"

2*pi*r

输入两个整数mn,使得m>

=n,并输出mn

DimmAsInteger,nAsInteger,aAsInteger

m=Val(InputBox("

请输入m:

输入,"

m"

n=Val(InputBox("

请输入n:

n"

Ifn>

mThen

a=m

m=n

n=a

EndIf

m="

m

n="

n

计算sum=1/1!

+1/2!

......+1/10!

DimmAsInteger,nAsLong,sAsDouble

n=1

s=0

Form=1To10

n=n*m

s=s+1/n

Prints

定义一个下标上界为10的整型数组,并随机函数为其赋值(值处于【0,100】之间,计算数组中所有偶数的和

Randomize

Dima%(10)

Dimi%,s%

Fori=0To10

a(i)=101*Rnd()

Ifa(i)Mod2=0Then

s=s+a(i)

所有偶数的和为:

s

输入一个四位数,分别输出它的个位数字、十位数字、百位数字、和千位数字。

(待修改)

Dima%,i%,k%,m%,s$

a=Val(InputBox("

请输入一个四位数"

i=aMod10

j=(aMod100)\10

k=(aMod1000)\100

m=a\1000

s="

个位数字是:

&

i&

vbcrlf"

十位数字是:

j&

vbcrlf&

百位数字是:

k&

千位数字是:

m

计算sum=2!

+4!

+6!

+......+10!

Dima!

i%,sum!

i=1:

a=1

Do

a=2*i

IfiMod2=0Then

sum=sum+a

LoopWhilei<

=10

Printsum

用inputbox输入一个年份,判断该年份是否是闰年,若是则输出Yes,否则输出No

Dimj%

j=Val(InputBox("

请输入年份"

IfjMod4=0Then

MsgBox("

Yes"

Else

No"

计算并输出下面级数前n项(n=20)中奇数项的和。

1*2*3-2*3*4+3*4*5-4*5*6+........+(-1)……(n-1)*n*(n+1)*(n+2)+.....

Dims!

i%

Fori=1To20Step2

s=s+i*(i+1)*(i+2)

MsgBox(s)

如果一个三位数等于其各位数字的立方和,则称其为水仙花数。

请输入一个三位数,并判断其是否为水仙花数。

若是,用MsgBox输出“yes”,否则输出“no”

PrivateSubCommand1_Click()

Dima%,i%,j%,k%

a=InputBox("

请输入一个三位数!

i=a\100

j=a\10Mod10

k=aMod10

Ifa=i^3+j^3+k^3Then

yes"

no"

某分段函数描述如下:

(1)当x为偶数时,y的值为x的二分之一

(2)当x为奇数时,y的值为x的二倍

Dimx!

y!

x=Val(InputBox("

请输入X的值!

IfxMod2=0Then

y=x/2

y=2*x

MsgBox(y)

输入三个数,判断其是否能够构成三角形...........

DimiAsInteger,a

(2)AsInteger,pAsSingle,sAsSingle

Fori=0To20

a(i)=val(inputbox("

输入第"

条边的边长:

Nexti

Ifa(0)+a

(1)>

a

(2)Anda(0)+a

(2)>

a

(1)Anda

(1)+a

(2)>

a(0)Then

p=(a(0)+a

(1)+a

(2))/2

s=sqr(p*(p-a(0)*(p-a

(1))*(p-a

(2)))

不能形成三角形!

计算1*3*5....*9

DimsumAsLong,iAsInteger

sum=1

Fori=1To9Step2

sum=sum*i

MsgBox(sum)

编写程序,求下面级数前n项的和s=1/1!

-1/2!

+1/3!

-1/4………(-1)∧(n-1)*1/n!

+…..

求和过程当某一项的绝对值小于0.0001时结束(注意,该项参与求和),计算并输出所求的和s,要求保留6位小数

DimmAsDouble,nAsInteger,sAsDouble,fAsInteger

s=0:

n=-1:

m=1:

f=1

DoWhile1/m>

=0.0001

m=m*f

f=f+1

n=-n

s=s+n/m

s=Format(s,"

0.000000"

随即输出一个位于【0,100】之间的整数

Dims%

s=(101*Rnd)

 

编写程序,计算并输出下面级数前n项(n=50)中的偶数项的和

Fori=2To50Step2

s=s+i*(i+1)

《VB期末范围题总汇》

1.求随机10个整数的最大值、最小值、平均值以及和;

Dima(1To10)

Randomize

Picture1.Print"

产生的随机数为:

Fori=1To10

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

Picture1.Printa(i);

Nexti

Picture1.Print

PrivateSubCommand2_Click()

Dimmax,min,ave

max=a

(1)

min=a

(1)

ave=0.1*a

(1)

Fori=2To10

Ifa(i)>

maxThenmax=a(i)

Ifa(i)<

minThenmin=a(i)

ave=ave+0.1*a(i)

最大数为:

;

max

最小数为:

min

平均数为:

ave

2.求水仙花数

PrivateSubForm_Click()

Dima,b,cAsInteger'

a(个)b(十)c(百)

Fora=0To9

Forb=0To9

Forc=1To9

Ifa^3+b^3+c^3=a+10*b+100*cThen

MsgBox100*c+10*b+a

EndIf

Nextc

Nextb

Nexta

求1000以内的所有完数

一个按钮里调用的过程

OutputWanNumber1000

5.求各位数字之和

inputa:

'

输入任意数

do

b=amod10:

取a的末位数

sum=sum+b:

求和

a=a\10:

去掉末位数

loopuntila=0

print"

sum="

sum:

输出

end

(dimnasstring

inputn

fori=1tolen(n)

sum=sum+val(mid(n,i,1))

nexti

printsum)

6.求最小公倍数

PrivateSubForm_Load()

Form1.AutoRedraw=True

Dimn1%,m1%,m%,n%,r%

n1=InputBox("

输入n1"

m1=InputBox("

输入m1"

Ifm1>

n1Then'

为了求最小公倍数,增加m,n变量

m=m1:

n=n1

Else

m=n1:

n=m1

Do

r=mModn

Ifr=0ThenExitDo

m=n

n=r

Loop

Printn1;

"

"

m1;

的最大公约数为"

n

最小公倍数="

m1*n1/n

7.求逆序数(感觉题目类型太多)

9.求质因子问题

DimNAsInteger,IAsInteger

N=Val(InputBox("

请输入2的整数:

))

I=2

IfNModI=0Then

PrintI;

N=N\I

I=I1

LoopWhileN1

1.判定素数过程

Functionisprime(NumAsLong)AsBoolean

IfNum<

2Thenisprime=False:

ExitFunction

DimiAsLong

Fori=2ToSqr(Num)

If(NumModi)=0Then

isprime=False

ExitFunction

isprime=True

EndFunction

Fori=1To1000

Ifisprime(i)Then

Printi

2.求最大公约数过程;

FunctionMax公约数(AAsLong,BAsLong)'

求出两个数的最大公约数

DimXAsLong,YAsLong,KAsLong

X=IIf(A>

=B,A,B)'

x存入最大值

Y=IIf(A<

y存入最小值

Do'

辗转相除法

K=XModY:

IfK=0ThenExitDo

X=Y:

Y=K

Max公约数=Y

3.冒泡排序过程

Dima(9)AsInteger

DimiAsInteger

Fori=0To9

a(i)=InputBox("

输入整数"

Next

Sorta

Printa(i)

PrivateSubSort(ByRefa()AsInteger)

DimjAsInteger

DimtAsInteger

Fori=LBound(a)+1ToUBound(a)

Forj=UBound(a)ToiStep-1

Ifa(j-1)>

a(j)Then

t=a(j-1)

a(j-1)=a(j)

a(j)=t

4顺序查找过程

Dimi,j,t,a(1To10)

原数组:

a(i)=Rnd*10

a("

&

i&

)="

a(i)&

Space

(2),

IfiMod2=0ThenPrint

Print

Fori=1To9

Forj=i+1To10

Ifa(j)<

a(i)Then

t=a(i)

a(i

编程题(20分,正式试题为1题)

1、编写一个身份证号码转换程序:

(1)老身份证是15位,先要增加两位年份,变成17位,再计算校验位。

(2)校验位的计算方法是:

17位身份证号码Number每一位都乘上一个权值Weight,然后相加,再除以11,取其余数作为位置数Position。

(3)根据位置数Position查表,得到校验位CheckCode。

(4)Number[i]:

表示身份证号码第i位上的号码

Weight[i]:

表示第i位上的权值

Weight:

79105842163791058421

Position=∑(Number[i]*Weight[i])mod11

(5)Position:

012345678910

CheckCode:

10X98765432

其中罗马数字X表示10,所以在新标准的身份证号码中可能含有非数字的字母X。

2、利用递归函数编写打印杨辉三角形(参见教材第319页上的实验6.11)

(1)编写求Cn,m的递归函数,其递归公式为:

Cn,m=Cn,m-1+Cn-1,m-1

(2)递归条件是:

C0,m=1当n=0

C1,m=m当n=1

Cn,m=Cm-n,m当n>

m/2

(3)利用上述递归函数编写打印杨辉三角形的程序

C0,0

C1,0C1,1

C2,0C2,1C2,2

·

Cn,0Cn,1·

Cn,n-1Cn,n

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

当前位置:首页 > 高等教育 > 工学

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

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