资源预览内容
第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
亲,该文档总共4页全部预览完了,如果喜欢就下载吧!
资源描述
第5章 数组第5章 习题参考答案一、判断题题号123456答案二、选择题题号123答案DAC三、程序填空1. Preserve a(n+1) a(i+1)=a(i) a(i+1)=mn+1或Ubound(a)2. Print K-1 t = a(k, j): a(k, j) = a(j, k): a(j, k) = t 3 Rnd*100 P=10 P = J P = 0 四、编写程序1.Private Sub Command1_Click()Dim A() As Integer, N As IntegerDim i As Integer, M As Integer, t As Integer, k As Integer N = Val(InputBox(请输入数组的大小N=?) M = Val(InputBox(请输入移位次数M=?) 输入循环次数的大小 If N = 0 Then Exit Sub ReDim A(N - 1) Print 原始数组值 For i = 0 To N - 1 给数组赋值 A(i) = Int(Rnd * 100) Print A(i); Next i Print移位 For i = 1 To M 循环体完成右移一位,循环完成右移j位 t = A(N - 1) For k = N - 1 To 1 Step -1 循环右移 A(k) = A(k - 1) Next k A(0) = t Next i打印右移后的数组值 Print 循环右移 & M & 位后的数组值 For i = 0 To N - 1 Print A(i); Next i PrintEnd Sub2.Const NM = 100Private Sub Command1_Click()Dim a(1 To NM) As Single, b(1 To NM) As Integer, max As IntegerDim i As Integer, j As Integer, k As Integer, t As Integer For i = 1 To NM 输入100个数值 a(i) = Val(InputBox(请输入a( & i & ) 的值) If Int(a(i) = a(i) Then 判断是否为整数 k = k + 1 整数个数加1 b(k) = a(i) 将这个整数存放到数组B End If Next i 选择排择 For i = 1 To k - 1 max = i For j = i + 1 To k If b(max) b(j) Then max = j Next j If max i Then t = b(max): b(max) = b(i): b(i) = t End If Next i 打印输出 For i = 1 To k Print b(i); If i Mod 5 = 0 Then Print Next iEnd Sub3.Private Sub Command1_Click() Dim a() As Integer Dim n%, i%, j% n = Val(InputBox(输入一个整数n=?) ReDim a(n) Form1.Cls Randomize Print 产生的30个随机整数: For i = 1 To n a(i) = Int(Rnd * 21) - 10 Print a(i); If i Mod 10 = 0 Then Print Next i Print 删除数组的相同数据 j = 2 Do While j n For i = 1 To j - 1 查找相同的元素 If a(j) = a(i) Then Exit For Next i If i j Then 如果第i个数与前面的数据相同,删除第i个元素 For i = j To n - 1 a(i) = a(i + 1) Next i n = n - 1 ReDim Preserve a(n) Else j = j + 1 End If Loop Print 删除后的数据: For i = 1 To n Print a(i); If i Mod 10 = 0 Then Print Next iEnd Sub4.Private Sub Command1_Click()Dim a(1 To 50) As Integer, i%, j%, t%, p%, n%, x% n = 0 已经产生的元素个数 Randomize Do While n n Then n = n + 1 a(n) = x End If Loop For i = 1 To 49 使用选择法排序 p = i For j = i + 1 To 50 If a(p) a(j) Then p = j Next j t = a(p): a(p) = a(i): a(i) = t Next i For i = 1 To 50 打印输出 Print a(i); If i Mod 10 = 0 Then Print Next iEnd Sub
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号