2数组程序汇总.docx

上传人:b****5 文档编号:8635010 上传时间:2023-02-01 格式:DOCX 页数:13 大小:134.30KB
下载 相关 举报
2数组程序汇总.docx_第1页
第1页 / 共13页
2数组程序汇总.docx_第2页
第2页 / 共13页
2数组程序汇总.docx_第3页
第3页 / 共13页
2数组程序汇总.docx_第4页
第4页 / 共13页
2数组程序汇总.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

2数组程序汇总.docx

《2数组程序汇总.docx》由会员分享,可在线阅读,更多相关《2数组程序汇总.docx(13页珍藏版)》请在冰豆网上搜索。

2数组程序汇总.docx

2数组程序汇总

目录

1、将10个1到100的随机数存放在数组中,并输出。

2

2、打印输出Fibonacci数列的前20项,该数列定义为1,1,2,3,5,8,13,…..2

3、编写一个用来统计某班级英语成绩的程序。

3

4、冒泡排序(升序):

生成10个元素数组,按升序排序,分别输出排序前后所有元素。

4

5、比较排序(降序):

生成10个元素数组,按降序排序,分别输出排序前后所有元素。

4

6、交换排序(降序):

生成10个元素数组,按降序排序,分别输出排序前后所有元素。

5

7、打印输出以下图形。

6

8、计算输出以下公式的值,X、N的值为输入:

7

9、用户从键盘上输入股票30天的收盘价,程序计算并显示滑动平均价(每行显示五天滑动平均价)。

说明:

当天的滑动平均价为前五天收盘价的平均值,前四天的滑动平均价按当天收盘价计算。

8

10、定义动态数组,可根据用户需要确定数组元素个数,随机生成数组元素的值(100以内整数);再提示用户输入一个100以内整数,查找此数是否在这组元素中,显示结果以及生成的数组部元素。

9

11、定义一个长度为20的数组,随机生成10个100以内整数存于数组并按降序排列;再提示用户输入一个100以内整数,将此数插入排序后的数组中输出显示数组全部元素。

10

1、将10个1到100的随机数存放在数组中,并输出。

OptionBase1

PrivateSubForm_Click()

DimA(10)asinteger

Randomize

Fori=1To10

A(i)=Int(Rnd*100)

Next

Fori=1To10

PrintA(i)

Next

EndSub

2、打印输出Fibonacci数列的前20项,该数列定义为1,1,2,3,5,8,13,…..

【分析】Fabonacci数列的特点是:

1n=1

Fib(n)1n=2

fib(n-2)+fib(n-1)n>=3

【设计】定义一个数组FAB(1TO20)

赋初值:

fib

(1)=1:

fib

(2)=1

计算Fib(n)=fib(n-2)+fib(n-1)(3<=n<=20)

输出Fib(n)(1<=n<=20)

PrivateSubForm_Click()

DimiAsInteger,fib(1To20)AsInteger

fib

(1)=1:

fib

(2)=1

Fori=3To20

fib(i)=fib(i-1)+fib(i-2)

Next

Fori=1To20

Printfib(i),

IfiMod4=0ThenPrint'打印换行

Next

EndSub

3、编写一个用来统计某班级英语成绩的程序。

解题思路:

在通用模块中使用Optionbase1

(0)定义数组DIMS[45]存放学生成绩

定义数组DIMb[5]存放分数段的个数

定义变量Sum存放全班成绩之和

(1)使用循环FOR循环输入学生成绩(固定循环次数):

fori=1to45

利用InputBox()函数输入学生成绩S[i]

Select语句判断S[i]的范围,

例如:

S[i]>90B[1]=B[1]+1

90>S[i]>80B[2]=B[2]+1

…..

OptionBase1

Dima(45),b(5)

PrivateSubForm_Click()

Randomize

Fori=1To10

a(i)=Int(Rnd*100)'a(i)=InputBox("输入成绩")

Printa(i);

SelectCasea(i)

CaseIs>=90

b

(1)=b

(1)+1

CaseIs>=80

b

(2)=b

(2)+1

CaseIs>=70

b(3)=b(3)+1

CaseIs>=60

b(4)=b(4)+1

CaseElse

b(5)=b(5)+1

EndSelect

Next

Print

Print"优秀的有",b

(1):

Print"优良的有",b

(2)

Print"中等的有",b(3):

Print"及格的有",b(4)

Print"不及格的有",b(5)

EndSub

4、冒泡排序(升序):

生成10个元素数组,按升序排序,分别输出排序前后所有元素。

PrivateSubCommand1_Click()

Dimx(1To10)

n=10

Randomize

Fori=1To10

x(i)=Int(Rnd*100+1)

Label1.Caption=Label1.Caption+Str(x(i))

Next

Fori=1Ton-1

Forj=iTo1Step-1

Ifx(j+1)

temp=x(j)

x(j)=x(j+1)

x(j+1)=temp

EndIf

Nextj

Nexti

Fori=1Ton

Label2.Caption=Label2.Caption+Str(x(i))

Nexti

EndSub

5、比较排序(降序):

生成10个元素数组,按降序排序,分别输出排序前后所有元素。

PrivateSubCommand1_Click()

Dimx(1To10)

n=10

Randomize

Fori=1To10

x(i)=Int(Rnd*100+1)

Label1.Caption=Label1.Caption+Str(x(i))

Next

Fori=1Ton-1

Forj=i+1Ton

Ifx(i)

temp=x(i):

x(i)=x(j):

x(j)=temp

EndIf

Nextj

Nexti

Fori=1Ton

Label2.Caption=Label2.Caption+Str(x(i))

Nexti

EndSub

6、交换排序(降序):

生成10个元素数组,按降序排序,分别输出排序前后所有元素。

PrivateSubCommand1_Click()

Dimx(1To10)

n=10

Randomize

Fori=1To10

x(i)=Int(Rnd*100+1)

Label1.Caption=Label1.Caption+Str(x(i))

Next

Fori=1Ton-1

k=i

Forj=i+1Ton

Ifx(k)

k=j

EndIf

Nextj

Ifk<>iThen

temp=x(i):

x(i)=x(k):

x(k)=temp

EndIf

Nexti

Fori=1Ton

Label2.Caption=Label2.Caption+Str(x(i))

Nexti

EndSub

7、打印输出以下图形。

PrivateSubCommand1_Click()

Cls

Fori=5To1Step-1

PrintSpc(2*(5-i));

Forj=1To2*i-1

Print"*";

Nextj

Print

Nexti

EndSub

PrivateSubCommand2_Click()

Cls

Fori=1To4

PrintSpc(2*(5-i));

Forj=1To2*i-1

Print"*";

Nextj

Print

Nexti

Fori=5To1Step-1

PrintSpc(2*(5-i));

Forj=1To2*i-1

Print"*";

Nextj

Print

Nexti

EndSub

PrivateSubCommand1_Click()

DimIAsInteger,SAsString,NAsInteger

S="13579"

ForI=1ToLen(S)

N=Val(Mid(S,I,1))

Me.PrintString(6-Int(N/2+1),"")&String(N,"*")

NextI

EndSub

PrivateSubCommand2_Click()

DimIAsInteger,SAsString,NAsInteger

S="135797531"

ForI=1ToLen(S)

N=Val(Mid(S,I,1))

Me.PrintString(6-Int(N/2+1),"")&String(N,"*")

NextI

EndSub

8、计算输出以下公式的值,X、N的值为输入:

1+X/2!

+X2/4!

+X3/6!

+…+XN/2N!

PrivateSubCommand1_Click()

DimiAsInteger,nAsInteger

DimsAsDouble,xAsDouble

x=Val(InputBox("x="))

n=Val(InputBox("n="))

s=1

Fori=1Ton

m=1

Forj=2To2*i

m=m*j

Nextj

s=s+x^i/m

Nexti

Print"1+X/2!

+X2/4!

+X3/6!

+…+XN/2N!

=";s

EndSub

 

PrivateSubForm_Click()

DimiAsInteger,nAsInteger,m2AsLong

DimsAsDouble,xAsDouble,m1AsDouble

x=Val(InputBox("x="))

n=Val(InputBox("n="))

s=1

m1=1

m2=1

Fori=2To2*nStep2

m1=m1*x

m2=m2*(i-1)*i

s=s+m1/m2

Nexti

Print"1+X/2!

+X2/4!

+X3/6!

+…+XN/2N!

=",s

EndSub

9、用户从键盘上输入股票30天的收盘价,程序计算并显示滑动平均价(每行显示五天滑动平均价)。

说明:

当天的滑动平均价为前五天收盘价的平均值,前四天的滑动平均价按当天收盘价计算。

PrivateSubForm_Click()

Dima(1To30)

Dimb(1To30)

Fori=1To30

a(i)=int(rnd*1000)

‘a(i)=Val(InputBox("请输入第"&i&"天的收盘价"))

Next

Fori=1To4

b(i)=a(i)

Next

Fori=5To30

b(i)=(a(i)+a(i-1)+a(i-2)+a(i-3)+a(i-4))/5

Next

Fori=1To30

PrintLeft(Str(b(i))+Space(5),7);

IfiMod5=0Then

Print

EndIf

Next

EndSub

10、定义动态数组,可根据用户需要确定数组元素个数,随机生成数组元素的值(100以内整数);再提示用户输入一个100以内整数,查找此数是否在这组元素中,显示结果以及生成的数组部元素。

PrivateSubCommand1_Click()

DimchAsString

Dims()AsInteger

n=Val(Text1.Text)

ReDims(n+1)

Randomize

ch=""

Fori=1Ton

s(i)=Int(Rnd*100+1)

ch=ch+Str(s(i))

Next

x=Val(Text2.Text)

Fori=1Ton

Ifx=s(i)Then

ExitFor

EndIf

Nexti

Label1.Caption=ch

Ifx<=nThen

Label2.Caption="输入的数"+Str(x)+"在数组元素中!

"

Else

Label2.Caption="输入的数"+Str(x)+"不在数组元素中!

"

EndIf

EndSub

11、定义一个长度为20的数组,随机生成10个100以内整数存于数组并按降序排列;再提示用户输入一个100以内整数,将此数插入排序后的数组中输出显示数组全部元素。

Dimx(1To20)AsInteger

PublicnAsInteger

PrivateSubCommand1_Click()

n=10

Label1.Caption=""

Label2.Caption=""

Randomize

Fori=1To10

x(i)=Int(Rnd*100+1)

Label1.Caption=Label1.Caption+Str(x(i))

Next

Fori=1Ton-1

k=i

Forj=i+1Ton

Ifx(k)

k=j

EndIf

Nextj

Ifk<>iThen

temp=x(i)

x(i)=x(k)

x(k)=temp

EndIf

Nexti

Fori=1Ton

Label2.Caption=Label2.Caption+Str(x(i))

Nexti

EndSub

PrivateSubCommand2_Click()

Label7.Caption=""

num=Val(Text1.Text)

Fori=1Ton

Ifnum>x(i)Then

k=i

ExitFor

EndIf

Nexti

Printk

Ifi<=nThen

Fori=nTokStep-1

x(i+1)=x(i)

Nexti

Else

k=n+1

EndIf

x(k)=num

n=n+1

Fori=1Ton

Label7.Caption=Label7.Caption+Str(x(i))

Nexti

EndSub

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

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

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

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