VB程序设计例题程序改错程序填空程序设计.docx

上传人:b****1 文档编号:14919261 上传时间:2023-06-28 格式:DOCX 页数:19 大小:18.57KB
下载 相关 举报
VB程序设计例题程序改错程序填空程序设计.docx_第1页
第1页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第2页
第2页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第3页
第3页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第4页
第4页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第5页
第5页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第6页
第6页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第7页
第7页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第8页
第8页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第9页
第9页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第10页
第10页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第11页
第11页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第12页
第12页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第13页
第13页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第14页
第14页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第15页
第15页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第16页
第16页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第17页
第17页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第18页
第18页 / 共19页
VB程序设计例题程序改错程序填空程序设计.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

VB程序设计例题程序改错程序填空程序设计.docx

《VB程序设计例题程序改错程序填空程序设计.docx》由会员分享,可在线阅读,更多相关《VB程序设计例题程序改错程序填空程序设计.docx(19页珍藏版)》请在冰点文库上搜索。

VB程序设计例题程序改错程序填空程序设计.docx

VB程序设计例题程序改错程序填空程序设计

'以下程序段用于输出杨辉三角:

结果样式如图1

'

PrivateSubForm_Click()

Constn=10

Dimarr(n,n)AsInteger

ForI=1Ton

arr(I,I)=1

'**********SPACE**********

【arr(I,1)=1】

NextI

ForI=3Ton

Forj=2ToI-1

'**********SPACE**********

arr(i,j)=arr(i-1,j-1)+arr(i-1,j)

Nextj

NextI

ForI=1Ton

Forj=1ToI

'**********SPACE**********

【printarr(I,j)】

Nextj

Print

NextI

EndSub

OptionExplicit

'------------------------------------------------

'【程序改错】

'------------------------------------------------

'题目:

用自定义函数的方法求sum(x),求当-1≤x≤1时,

'sum(x)=x/2!

+x^2/3!

+x^3/4!

+……+x^n/(n+1)!

'当x〉1或x〈-1时,函数值为0。

当n〈=0时,输入数

'据错误。

X、N都是由用户输入。

'------------------------------------------------

'注意:

不可增加或删除程序行,也不可以更改程序结构

'------------------------------------------------

PrivateSubCommand1_Click()

DimsAsSingle

DimnAsInteger,xAsSingle,kAsInteger

n=Val(InputBox("Pleaseinputaintegervalue:

"))

x=Val(InputBox("Pleaseinputasinglevalue:

"))

Ifn<=0Then

k=MsgBox("数据输入错误!

",vbRetryCancel+vbExclamation,"数据输入")

ExitSub

EndIf

s=Sum(x,n)

Prints

EndSub

FunctionSum(xAsSingle,nAsInteger)

DimiAsInteger,ssAsLong

ss=1

Sum=0

Ifx>1Orx<-1Then

'**********FOUND**********

ExitDo改为ExitFunction

Else

'**********FOUND**********

Fori=2Ton改为Fori=2Ton+1

ss=ss*i

'**********FOUND**********

Sum=x^(i-1)/ss改为Sum=sum+x^(i-1)/ss

Nexti

EndIf

EndFunction

OptionExplicit

'------------------------------------------------

'【程序改错】

'------------------------------------------------

'题目:

编程将一个数从已经有序(设从小到大排序)的数组

'中删除,使数组还继续保持有序而且其余元素按照下

'标连续存放。

'------------------------------------------------

'注意:

不可增加或删除程序行,也不可以更改程序结构

'------------------------------------------------

PrivateSubForm_Click()

DimA()AsInteger,NAsInteger,FlagAsInteger

DimiAsInteger,XAsInteger,PAsInteger

Flag=0

N=InputBox("输入元素个数")

'**********FOUND**********

DimA(N)改为ReDimA(N)

Fori=1ToN

A(i)=InputBox("输入数组的第"&i&"个元素")

Nexti

Print"删除某元素前的数组"

Fori=1ToN

PrintA(i);

Nexti

Start:

X=InputBox("输入要删除的元素:

")

Fori=1ToN

IfX=A(i)ThenP=i:

Flag=1

Nexti

IfFlag=0ThenMsgBox("没有此元素"):

GoToStart

Fori=PToN-1

'**********FOUND**********

A(i+1)=A(i)改为A(i)=A(i+1)

Nexti

'**********FOUND**********

N=N+1改为N=N-1

Print"删除元素后的数组:

"

Fori=1ToN

PrintA(i);

Nexti

EndSub

PrivateSubForm_Click()

'-------------------------------------------------

'【程序设计】

'-------------------------------------------------

'题目:

(事件)单击窗体。

'(响应)输出一个如图所示的由数字组成的倒三角形

'请将结果存入变量S中(要求利用msgbox函数

'显示结果,使用for...next语句完成程序)

'-------------------------------------------------

'注意:

请在指定的事件内编写代码。

'-------------------------------------------------

DimsAsString

'*****************Program**************

Dimi%,j%,w$

w=""

Fori=10To1Step-1

Forj=0Toi-1

w=w&CStr(j)

Next

w=w&vbCrLf

Next

MsgBoxw

s=w

'***************End*************************

CallYZJ(s)

EndSub

PrivateSubYZJ(iAsString)

DimOUTAsInteger

OUT=FreeFile

OpenApp.Path&"\out.txt"ForOutputAs#OUT

Print#OUT,i

Close#OUT

EndSub

PrivateSubForm_Click()

'-------------------------------------------------

'【程序设计】

'-------------------------------------------------

'题目:

(事件)单击窗体。

'(响应)求100到500之间奇数的和,将结果输出

'在窗体上并存入变量SUM中。

'使用do...loopuntil语句完成程序

'-------------------------------------------------

'注意:

请在指定的事件内编写代码。

'-------------------------------------------------

DimsumAsLong

'*****************Program**************

'***************End*************************

CallYZJ(sum)

EndSub

PrivateSubYZJ(iAsLong)

DimOUTAsInteger

OUT=FreeFile

OpenApp.Path&"\out.txt"ForOutputAs#OUT

Print#OUT,i

Close#OUT

EndSubOptionExplicit

'-------------------------------------------------------

'【程序填空】

'-------------------------------------------------------

'题目:

下面的程序用于求三个数中最大数

'请在【?

】处填入正确的内容

'-------------------------------------------------------

'

PrivateSubCommand1_Click()

Dima,b,c,max,minAsInteger

a=Val(InputBox("请输入第一个数:

"))

b=Val(InputBox("请输入第二个数:

"))

c=Val(InputBox("请输入第三个数:

"))

'**********SPACE**********

【?

】=a

min=a

'**********SPACE**********

Ifb>maxThen【?

Ifb

'**********SPACE**********

If【?

】Thenmax=c

Ifc

Print"最大数为:

";max

Print"最小数为:

";min

EndSub

'下面过程max()用于求3个数中最大值,利用这个过程求5个数中最大值。

'

PrivateSubForm_Click()

Print"5个数34、124、68、73、352的最大值是:

"

max1=max(34,124,68)

'**********SPACE**********

max1=【?

Printmax1

EndSub

PublicFunctionmax(ByVala%,ByValb%,ByValc%)

'**********SPACE**********

If【?

】Then

m=a

Else

m=b

EndIf

'**********SPACE**********

If【?

】Then

max=m

Else

max=c

EndIf

EndFunction

'-------------------------------------------------------

'【程序填空】

'-------------------------------------------------------

'题目:

本程序执行功能为,输入系列字符串,按递减次序排列。

'

(1)在文本框输入字符串,按回车键后存放到数组a()中;

'

(2)单击"排序"按钮(Command1)时,进行递减次序排列,并在图形框控件显示。

'请在【】处填入正确的内容

'-------------------------------------------------------

Dima()AsString,nAsInteger

PrivateSubCommand1_Click()

n=n-1

Fori=0Ton-1

imin=i

'**********SPACE**********

Forj=【?

】Ton

'**********SPACE**********

Ifa(imin)【?

】Thenimin=j

Nextj

t=a(i)

'**********SPACE**********

【?

a(imin)=t

Nexti

Fori=0Ton

Me.Picture1.Printa(i)

Nexti

EndSub

PrivateSubText1_KeyPress(KeyAsciiAsInteger)

IfKeyAscii=13Then

'**********SPACE**********

ReDim【?

'**********SPACE**********

a(n)=【?

Text1.Text=""

n=n+1

EndIf

EndSub

OptionExplicit

'------------------------------------------------

'【程序改错】

'------------------------------------------------

'题目:

下列程序进行-n阶乘运算,当阶乘的值超过-21147483648

'溢出报错,并将结果输出为-1。

'------------------------------------------------

'注意:

不可增加或删除程序行,也不可以更改程序结

'------------------------------------------------

'【程序改错】

'------------------------------------------------

'题目:

下列程序进行-n阶乘运算,当阶乘的值超过-21147483648

'溢出报错,并将结果输出为-1。

'------------------------------------------------

'**********FOUND**********

PrivateFunctionjc(ByValnAsInteger)AsInteger

DimIAsInteger

DimresultAsLong

result=1

I=1

DoWhileI<=n

Ifresult<2114748348/IThen

'**********FOUND**********

result=result

I=I+1

Else

lblerr.Caption="溢出"

'**********FOUND**********

jc=-I

ExitFunction

EndIf

Loop

jc=result

EndFunction

PrivateSubForm_Click()

MsgBoxjc(3)

EndSub

OptionExplicit

'------------------------------------------------

'【程序改错】

'------------------------------------------------

'题目:

给定三角形的三条边,计算三角形的面积。

要求

'程序首先判断给定的三条边能否构成三角形。

'------------------------------------------------

'注意:

不可增加或删除程序行,也不可以更改程序结构

'------------------------------------------------

PrivateSubForm_Click()

DimaAsSingle,bAsSingle,cAsSingle

DimsAsSingle,tAsSingle

start:

a=InputBox("输入1边长:

")

b=InputBox("输入2边长:

")

c=InputBox("输入3边长:

")

'**********FOUND**********

Ifa+b

MsgBox("不能构成三角形,请重新输入个边")

GoTostart

EndIf

'**********FOUND**********

t=(a+b)/2

'**********FOUND**********

s=Sqr((t-a)*(t-b)*(t-c))

Print"该三角形的面积:

";s

EndSub

OptionExplicit

'------------------------------------------------

'【程序改错】

'------------------------------------------------

'题目:

下面函数的功能是:

求变量s(s=a+aa+aaa+aaaa+……)

'的值。

其中,a是一个0-9的数字,总共累加a项。

列如,

'当a=3时,s=3+33+333(共累加3项)。

'------------------------------------------------

'注意:

不可增加或删除程序行,也不可以更改程序结构

'------------------------------------------------

PublicFunctionCalc(aAsInteger)

DimsAsLong

DimtAsLong

DimiAsInteger

s=a

'**********FOUND**********

t=1

Fori=2Toa

'**********FOUND**********

t=t+a

s=s+t

Nexti

Calc=s

Prints

EndFunction

PrivateSubCommand1_Click()

DimiAsInteger

i=InputBox("请输入数字(0-9):

")

'**********FOUND**********

Calc(i)

EndSub

OptionExplicit

'-------------------------------------------------

'【程序设计】

'-------------------------------------------------

'题目:

编写函数fun其功能是:

判断一个整数w的各位

'数字平方之和能否被5整除,可以被5整除则返

'回1,否则返回0

'-------------------------------------------------

'注意:

请在指定的事件内编写代码。

'-------------------------------------------------

PrivateFunctionfun(wAsInteger)AsBoolean

'**********Program*********

'**********End*************

EndFunction

PrivateSubForm_Load()

Show

Printfun(50)

WWJT

EndSub

PrivateSubWWJT()

DimiAsInteger

DimsAsString

DimlAsInteger

DimdAsDouble

Dima(10)AsString

DimfInAsInteger

DimfOutAsInteger

fIn=FreeFile

OpenApp.Path&"\in.dat"ForInputAs#fIn

fOut=FreeFile

OpenApp.Path&"\out.dat"ForOutputAs#fOut

Fori=1To10

LineInput#fIn,a(i)

l=Val(a(i))

Print#fOut,fun(l)

Next

Close#fIn

Close#fOut

EndSub

PrivateSubForm_Click()

'-------------------------------------------------

'【程序设计】

'-------------------------------------------------

'题目:

(事件)单击窗体。

'(响应)如果一个数的真因子之和等于这个数本身,

'则称这样的数为“完全数”。

例如,整数

'28的真因子为1、2、4、7、14,其和是28。

'因此28是一个完全数。

请编写一个程序,

'求出500以内最大的完全数。

并存入变量SUM中。

'使用for...next语句完成程序

'-------------------------------------------------

'注意:

请在指定的事件内编写代码。

'-------------------------------------------------

DimsumAsInteger

'*****************Program**************

Dimi%,a&,max&

Fori=1To500

max=i

Forj=1To500

IfiModj=0Then

Printj

EndIf

Nextj

Ifi=a+jThen

Print

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

当前位置:首页 > 幼儿教育

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

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