数组实验课练习题.ppt_第1页
数组实验课练习题.ppt_第2页
数组实验课练习题.ppt_第3页
数组实验课练习题.ppt_第4页
数组实验课练习题.ppt_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、程序设计 1、生成一个一维数组(10个数组元素依次为:15、23、72、43、96、23、3、65、88、17),写程序求出这个数组中的最大值、最小值和平均值,并输出在窗体上。将最大值,最小值,平均值分别存入变量Max,Min,Aver中,平均值保留整数部分。 、求二维数组中最大元素及其所在的行和列并将最大值存入变量Max中,将最大值的行位置存入row中,列位置存入变量column中。 3、在窗体上打印数列2/1,3/2,5/3,8/5,13/8的前10项和,将和保存在变量s中。 、求3行3列的矩阵主对角线元素和副对角线之和。,编程:在窗体上打印数列2/1,3/2,5/3,8/5,13/8的前

2、10项和,将和保存在变量s中。,Private Sub Form_Click() Dim f(1 To 11) As Long f(1) = 1 f(2) = 2 :s=2 print cstr(f(2) Next i Print x = InputBox(请输入要插入的整数) *SPACE* 【?】 i = 8 Do While a(i) x *SPACE* 【?】 i = i - 1 Loop *SPACE* If i 0 Then 【?】 Else a(1) = x For i = 1 To 9 Print a(i); Next i End Sub,、本程序用于实现:从键盘接收一数字,判

3、断其是否在数组中,如果在数组中则将其删除,否则显示该数字不在数组中。 Private Sub Form_Click() Dim a(10) As Integer, x As Integer For i = 1 To 10 a(i) = Int(Rnd * 90) + 10 : Print a(i); Next i x = InputBox(请输入要删除的整数) For i = 1 To 10 *SPACE* If a(i) = x Then 【?】 Next i *SPACE* If 【?】 Then For k = i To 9 *SPACE* 【?】 Next k Print 删除后的数组

4、: For i = 1 To 9 Print a(i); Next i Else : Print 该数字不在数组中 End If End Sub,、下面的程序段用于删除数组中指定位置的数字,如果位置错误给出提示,否则分别显示删除前后的数组元素 Private Sub Form_Click() Dim a(10) As Integer, x As Integer Dim i as integer,k as integer For i = 1 To 10 a(i) = Int(Rnd * 90) + 10 Print a(i); Next i Print x = InputBox(请输入要删除第几

5、位数字) *FOUND* If x 0 Then For k = x+1 To 10 *FOUND* a(k+1) = a(k ) Next k Print 删除后的数组: For i = 1 To 9 Print a(i); Next i *FOUND* End If Print 删除位置错误 End If End Sub,、下面程序运行后单击窗体,输出结果为1234。 Private Sub Form_Click() Dim a a = Array(1, 2, 3, 4) j = 1 *SPACE* For i = 【?】 s = s + a(i) * j *SPACE* j = 【?】

6、Next i *SPACE* Print 【?】 End Sub,、题目:以下程序段用于输出杨辉三角: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 ,Private Sub Form_Click() Const n = 10 Dim arr(n, n) As Integer For I = 1 To n arr(I, I) = 1 *SPACE* 【?】 Next I For I = 3 To n For j = 2 To I -

7、1 *SPACE* arr(i, j) =【?】 Next j Next I For I = 1 To n For j = 1 To I *SPACE* 【?】 Next j Print Next I End Sub,、编程求一个m*n矩阵中最大元素及其所在的行列号。 Private Sub Form_Click() Dim A() As Integer, max As Integer Dim M As Integer, N As Integer Dim i As Integer, j As Integer Dim col As Integer, row As Integer M = Inpu

8、tBox(输入矩阵的行数:) N = InputBox(输入矩阵的列数:) ReDim A(M, N) As Integer For i = 1 To M For j = 1 To N A(i, j) = InputBox( 输入数组元素:) Next j Next i,*FOUND* max = A(0, 0) For i = 1 To M For j = 1 To N If max A(i, j) Then max = A(i, j) *FOUND* row = j *FOUND* col = i End If Next j Next i Print Print 该矩阵元素的最大值:; m

9、ax Print 最大值所在的行:; row; 所在的列:; col End Sub,、运行程序时单击窗体,窗体将显示如下矩阵: 1 2 3 4 5 2 3 4 5 1 3 4 5 1 2 4 5 1 2 3 5 1 2 3 4 Private Sub Form_Click() Dim a(5, 5) For i = 1 To 5 *SPACE* a(【?】, i) = i Next,For i = 2 To 5 For j = 1 To 4 *SPACE* a(i, j) = 【?】 Next j a(i, j) = a(i - 1, 1) Next i For i = 1 To 5 *SP

10、ACE* For j =【?】 Print a(i, j); Next j Print Next i End Sub,、下面的程序段用于实现以下功能:利用冒泡法将一组整数从小到大排序。 Private Sub Form_Click() Const n = 15 Dim a(1 To n) As Integer, work As Boolean Dim i%, j As Integer, x As Integer Randomize For i = 1 To n a(i) = Int(90 * Rnd) + 10 Next i For i = 1 To n Print a(i); Next i

11、Print *SPACE* For i = n To 2 【?】 work = True For j = 1 To i - 1 If a(j) a(j + 1) Then x=a(j):a(j)=a(j+1): a(j+1)=x *SPACE* 【?】 End If Next j *SPACE* If work Then 【?】 Next i For i = 1 To n Print a(i); Next i End Sub,、随机生成10个数存入数组中,并将数组排序后输出 Private Sub Command1_Click() Dim a(10) As Integer Dim i, j,

12、t As Integer For i = 1 To 10 *SPACE* a(i) = CInt(10 【?】 Rnd + 1) Next For i = 1 To 9 *SPACE* For j = 【?】 To 10 *SPACE* If a(i) 【?】 Then t = a(i): a(i) = a(j): a(j) = t End If Next j Next i For i = 1 To 10 Print a(i) Next End Sub,、下面程序段将7个随机整数从小到大排序 Private Sub Form_Click() Dim t%, m%, n%, w%,a(7) as integer For m = 1 To 7 a(m) = Int(10 + Rnd() * 90) Print a(m); ; Next m Print For m = 1 To 6 t = m *FOUND* For n =2 To 7 *FOUND* If a(t) a(n) Then n = t Next n *FOUND* I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论