上机编程练习题选解Word格式文档下载.docx

上传人:b****7 文档编号:22171432 上传时间:2023-02-02 格式:DOCX 页数:40 大小:65.22KB
下载 相关 举报
上机编程练习题选解Word格式文档下载.docx_第1页
第1页 / 共40页
上机编程练习题选解Word格式文档下载.docx_第2页
第2页 / 共40页
上机编程练习题选解Word格式文档下载.docx_第3页
第3页 / 共40页
上机编程练习题选解Word格式文档下载.docx_第4页
第4页 / 共40页
上机编程练习题选解Word格式文档下载.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

上机编程练习题选解Word格式文档下载.docx

《上机编程练习题选解Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《上机编程练习题选解Word格式文档下载.docx(40页珍藏版)》请在冰豆网上搜索。

上机编程练习题选解Word格式文档下载.docx

PrivateSubText1_KeyUp(KeyCodeAsInteger,ShiftAsInteger)

Text1.Tag=Text1.Text

PrivateSubCommand1_Click()

Text1.Text=UCase(Text1.Tag)

PrivateSubCommand2_Click()

Text1.Text=LCase(Text1.Tag)

PrivateSubCommand3_Click()

Text1.Text=Text1.Tag

3-9参考代码:

ConstpiAsSingle=3.1415926

DimrAsInteger

Label1.Caption="

用滚动条获取不同半径的圆周长和面积"

Label2.Caption="

圆周长"

Label3.Caption="

圆面积"

Label4.Caption="

半径"

Label5.Caption=0

Label6.Caption=100

:

Text1.Locked=True

Text2.Text="

Text2.Locked=True

Text3.Text="

Text3.Locked=True

HScroll1.Min=0:

HScroll1.Max=100

PrivateSubHScroll1_Change()

r=HScroll1.Value:

Text3.Text=r

PrivateSubHScroll1_Scroll()

Text1.Text=2*pi*r:

Text2.Text=pi*r*r

4-6参考代码:

Label1.Caption=0

Label1.BorderStyle=1

Label1.FontName="

黑体"

Label1.FontSize=60

Timer1.Interval=1000

PrivateSubTimer1_Timer()

Label1.Caption=Label1.Caption+1

4-7参考代码:

DimCheCAsInteger

PrivateSubText1_KeyPress(KeyAsciiAsInteger)

IfChr(KeyAscii)="

("

Then

CheC=CheC+1

ElseIfChr(KeyAscii)="

)"

CheC=CheC-1

EndIf

SelectCaseCheC

CaseIs=0

左右括号配对"

CaseIs<

0

右括号多于左括号"

-CheC&

个"

CaseIs>

左括号多于右括号"

EndSelect

4-8建立应用程序用户界面如图附C-1所示,窗体上有一个框架,两个方本框(分别用于输入年号和月份),三个标签和一个命令按钮。

图附C-1判断闰年

参考代码:

DimyAsInteger,mAsInteger,daysAsInteger

DimjiAsString

DimLeapYearAsBoolean

y=Val(Text1.Text)

m=Val(Text2.Text)

If(yMod4=0AndyMod100<

>

0)Or(yMod400=0)Then

LeapYear=True

Else

LeapYear=False

SelectCasem

Case3To5

ji="

春季(Spring)"

Case6To8

复季(Summer)"

Case9To11

秋季(Autumn)"

Case12,1,2

冬季(Winter)"

Case1,3,5,7,8,10,12

days=31

Case4,6,9,11

days=30

Case2

IfLeapYearThen

days=29

days=28

Label3.Caption=Str(y)&

年"

IIf(LeapYear,"

是"

"

不是"

)&

闰年"

Str(m)&

月有"

Str(days)&

天,在"

ji

Text1.SetFocus

PrivateSubText1_GotFocus()

Text1.SelStart=0

Text1.SelLength=Len(Text1.Text)

5-1参考代码:

DimsAsSingle,iAsInteger

Show

Fori=1To100

s=s+1/(1+4*i)

Next

Prints

5-2参考代码:

DimpAsInteger,nAsInteger

Forn=100To999

a=Int(n/100)

b=Int((n-a*100)/10)

c=n-a*100-b*10

p=a^3+b^3+c^3

Ifp=nThenPrintp

5-5参考代码如下:

显示"

List1.Height=1770

List1.Width=1300

List1.FontName="

List1.FontSize=14

List1.AddItem"

表项1"

表项2"

表项3"

表项4"

表项5"

注:

列表框的MultiSelect属性在程序运行时是只读的,只能设计时在属性窗口中设置。

DimiAsInteger

Fori=0ToList1.ListCount-1

IfList1.Selected(i)Then

PrintList1.List(i)

5-6参考代码:

DimsAsString,yAsString

s=Trim(Text1)

y="

Fork=1ToLen(s)

x=Mid(s,k,1)

Ifx>

="

A"

Andx<

Z"

Orx>

a"

z"

y=y+x

Text2.Text=y

5-7参考代码:

DimxAsSingle,aAsSingle,tAsSingle

a=Val(InputBox("

请输入一个正数"

))

x=a

Do

t=x

x=(x+a/x)/2

LoopUntilAbs(x-t)<

0.00001

PrintFormat(x,"

0.00000"

5-8参考代码:

Print

Forn=1To5

PrintTab(2*n);

Form=nTo10-n

PrintSpc

(1);

*"

Nextm

PrintSpc(4);

Form=1To2*n-1

Nextn

6-3在窗体上建立两个列表框List1(处理前数据)和List2(处理后数据),以及标签Label1。

程序代码如下:

Dima(100)AsInteger,b(100)AsInteger

Randomize

n=100

Fori=1Ton'

输入数组a的n个元素

x=Int(20*Rnd)

List1.AddItemx

a(i)=x

Nexti

k=0

删除零元素

Ifa(i)<

0Then

k=k+1:

b(k)=a(i):

List2.AddItemb(k)

Label1.Caption="

数组中零元素个数:

+Str(n-k)

6-4参考代码:

Frame1.Caption=Space

(2)+"

数据"

+Space(3)+"

出现次数"

Randomize

Dims(40),g(40)

n=40

Fork=1To1000

x=Int(11+40*Rnd)

g(x-10)=g(x-10)+1'

统计各数出现的次数

Fork=1Ton

s(k)=k+10'

数组s

(1)s(40)存放11~50各数

Fork=1Ton-1'

对数组g(n)进行选择法排序

t=k'

保存较大数的位置

Forj=k+1Ton

Ifg(t)<

g(j)Then

t=j

m=g(t):

g(t)=g(k):

g(k)=m

m=s(t):

s(t)=s(k):

s(k)=m

t=Space

(2)&

s(k)&

Space(5)&

g(k)

List1.AddItemt

Next

6-5在窗体上建立4行3列共12个元素的文本框控件数组Text1(0)~Text1(11),参考代码:

Dimt(12)AsString

Fork=1To12

t(k)="

Empty"

'

初始安排12个位置均为"

Forh=65To74'

代表"

至"

J"

,每次随机安排一个字母

DoWhileTrue'

随机查找一个空位

p=Int(1+12*Rnd)'

产生1~12随机数

Ift(p)="

t(p)=Chr(h)

ExitDo

Loop

Text1(k-1).Text=t(k)'

显示座位分配情况

6-6参考代码:

PrivateSubForm_Activate()

Dims(9,9)AsInteger

Forn=0To9

Form=0To9

Ifn=mOrn=10-mThen

s(n,m)=1

s(n,m)=0

Picture1.PrintTab(1+m*3);

s(n,m);

6-7在窗体上添加两个图片框Picture1~Picture2(分别显示转置前、后的矩阵)和两个命令按钮Command1~Command2。

参考代码如下:

Dima(6,4)AsInteger,b(4,6)AsInteger

PrivateSubCommand1_Click()‘“重置”

Forn=1To6

Form=1To4

x=Int(Rnd*90)+10

a(n,m)=x

Picture1.Cls

Picture2.Cls

Picture1.CurrentX=80

Picture1.Printa(n,m);

Picture1.Print

PrivateSubCommand2_Click()‘“转置”

b(m,n)=a(n,m)

Picture2.CurrentX=80

Forn=1To4

Form=1To6

Picture2.Printb(n,m);

Picture2.Print

重置"

转置"

Picture1.BorderStyle=1

Picture2.BorderStyle=1

6-8定义二维数组a(1,1),a(0,0)表示两个正面,a(1,1)表示两个反面,a(0,1)和a(1,0)表示一反一正和一正一反。

在窗体添加一个命令按钮Command1。

Dima(1,1)AsInteger

DimnAsInteger,n1AsInteger,n2AsInteger

n=Val(InputBox("

n="

请输入投币次数"

投币次数:

n

RandomizeTime

Fori=1Ton

n1=Int(Rnd*2)

n2=Int(Rnd*2)

a(n1,n2)=a(n1,n2)+1

两个正面的次数为:

a(0,0)

两个反面的次数为:

a(1,1)

一正一反次数为:

a(0,1)+a(1,0)

输入次数"

7-3参考代码:

DimsAsString

s=Trim(Text1.Text)

List1.Clear

n=Getword(s)

Text2.Text=n

PublicFunctionGetword(sAsString)AsInteger

n=0

DoWhilen<

=Len(s)

p=InStr(s,Space

(1))

n=n+1

Ifp=0Then

List1.AddItems

s="

List1.AddItemLeft(s,p-1)

s=Mid(s,p+1)

Getword=n

EndFunction

7-4参考代码如下:

PublicFunctionPwoer(xAsSingle,nAsInteger)AsDouble

Ifn=0Then

Pwoer=1

Pwoer=x*Pwoer(x,n-1)

DimxAsSingle,nAsInteger

x=Val(InputBox("

输入一个实数:

输入一个正整数:

PrintPwoer(x,n)

7-6把两个窗体上的命令按钮分别定义为控件数组。

窗体Form1的代码:

随机数"

最大值"

Command1(0).Caption="

生成随机数"

Command1

(1).Caption="

求最大数"

Command1

(2).Caption="

打开排序窗口"

Command1(3).Caption="

结束"

PrivateSubCommand1_Click(IndexAsInteger)

SelectCaseIndex

Case0‘生成随机数

Fori=0To9

x=Int(Rnd*89+0.5)+11

yes=0

Forj=0Toi-1

Ifx=a(j)Thenyes=1:

ExitFor

LoopWhileyes=1

Text1.Text=Text1.Text&

x&

"

Text1.Text=Left(Text1.Text,Len(Text1)-1)

Case1

Text2.Text=Max(a())‘求最大数

Case2‘打开排序窗体

Form1.Hide

Form2.Show

Case3‘结束

UnloadForm1

UnloadForm2

窗体Form2的代码:

Case0‘排序

CallSort(a())

a(i)&

Text1.Text=Left(Text1.Text,Len(Text1.Text)-1)

Case1‘返回

Form2.Hide

Form1.Show

结果"

排序"

返回"

T

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

当前位置:首页 > 总结汇报 > 其它

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

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