




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 求10个数中的最大值及其下标首先定义包含10个元素的一维数组,然后赋初值(两种方法,一是通过随机函数,二是用inputbox函数)Private Sub Form_Click()Dim a(1 To 10) As Integer, max As Integer, i%, p% 'max存放10个数中的最大值,p存放当前最大值的下标Print "这10个数分别是"PrintFor i = 1 To 10 a(i) = Int(Rnd * 91) + 10 '给一维数组赋初值,为10到100之间的随机值 'a(i) = InputBox("
2、请输入10个数") Print a(i);Next i max = a(1) p = 1For i = 2 To 10 If a(i) > max Then max = a(i) p = i End IfNext iPrintPrint "这10个数中最大值和下标为:"Print max, pEnd Sub2. 将包含10个元素的数组倒置(逆序),说明,即第一元素和最后一个元素交换,第二个元素和倒数第二个元素交换,一致类推,可以推导出两个要交换的数的下标之和为11(如果是n个数下标之和为n+1),如对10个数逆序输出交换的次数为5次,如果是n个数交换的次数为
3、n/2次Private Sub Form_Click()Dim a(1 To 10) As Integer, i%, t%Print "交换前这10个数分别是"PrintFor i = 1 To 10 Randomize a(i) = Int(Rnd * 91) + 10 '给一维数组赋初值,为10到100之间的随机值 Print a(i);Next iFor i = 1 To 5t = a(i)a(i) = a(11 - i)a(11 - i) = tNext iPrintPrint "交换后这10个数分别是"PrintFor i = 1 To
4、 10 Print a(i);Next iEnd Sub3. 从键盘输入10个数,然后求其偶数之和与奇数之和Private Sub Form_Click()Dim a(1 To 10) As Integer, i%, sum1%, sum%sum1 = 0 '存放偶数之和sum2 = 0 '存放奇数之和Print "交换前这10个数分别是"PrintFor i = 1 To 10 Randomize a(i) = Int(Rnd * 91) + 10 '给一维数组赋初值,为10到100之间的随机值 Print a(i);Next iFor i = 1
5、 To 10If a(i) Mod 2 = 0 Then sum1 = sum1 + a(i)Else sum2 = sum2 + a(i) End IfNext iPrintPrint "这10个数中偶数之和为:" & sum1Print "这10个数中奇数之和为:" & sum2End Sub4 排序问题一是冒泡法:Private Sub Form_Click()Dim a(1 To 10) As IntegerDim i As IntegerDim t As IntegerDim j As IntegerPrint "这1
6、0个数为:"RandomizeFor i = 1 To 10 Step 1a(i) = Int(Rnd * 91) + 10Next iFor i = 1 To 10 Step 1 Print a(i); Space(5);Next iPrintFor i = 1 To 9For j = 1 To 10 - iIf a(j + 1) < a(j) Then t = a(j) a(j) = a(j + 1) a(j + 1) = t End If Next jNext iPrint "从小到大排序后这10个数为:" For i = 1 To 10 Step 1
7、 Print a(i); Space(5);Next iEnd Sub方法二选择法排序Private Sub Form_Click()Dim a(1 To 10) As IntegerDim i As IntegerDim k As IntegerDim t As IntegerDim j As IntegerFor i = 1 To 10 Step 1 Randomize a(i) = Int(Rnd * 91) + 10Next iFor i = 1 To 10 Step 1 Print a(i); Space(5);Next iPrintFor i = 1 To 9k = iFor j
8、= i + 1 To 9If a(j) < a(k) Then k = jNext j t = a(i) a(i) = a(k) a(k) = tNext iPrint For i = 1 To 10 Step 1 Print a(i); Space(5);Next i End Sub5. Fibonacci序列,序列为1,1,2,3,5,8.输入该序列的前30项,并且五个一行输出Private Sub Form_Click()Dim a!(1 To 30), i%a(1) = 1a(2) = 1Print a(1); a(2);For i = 3 To 30 Step 1a(i) =
9、a(i - 1) + a(i - 2)Print a(i);If i Mod 5 = 0 Then PrintNext iEnd Sub6.有一个已经按升序排序好的一维数组,另输入一个数,按原来的规律插入到该数组中说明:找到该数num要插入的位置是关键,因为是升序,所以一旦该数第一次大于数组中的元素是,这个时候就是该数插入数组中的位置,记为k的话,那么就要把该位置腾出来,此时只要从最后一个元素开始到第K个元素往后移动一个位置,第k个元素的位置腾出,就可将数据num插入Private Sub Form_Click()Dim a%(1 To 11), i%, j%, t%, n%i = 1Prin
10、t "这10个数分别是"PrintFor i = 1 To 10 a(i) = i * 2 '给一维数组赋初值 Print a(i);Next in = InputBox("请输入一个数:")For i = 1 To 10If n < a(i) Then Exit For i即是num要插入的位置Next i For j = 10 To i Step -1 a(j + 1) = a(j) Next j a(i) = n Print For i = 1 To 11 Print a(i);Next iEnd Sub大家想想如果题目改成如下,怎么
11、做?设有一个已排序好的数组,另输入一个数,要求按原来的规律将它插入到数组中说明:这样的话就应该分两种情况,判断是升序还是降序,然后再找出该数需要插入的位置Private Sub Form_Click()Dim a%(1 To 11), i%, j%, t%, n%Print "这10个数分别是"PrintFor i = 1 To 10 a(i) = i * (-2) '给一维数组赋初值 Print a(i);Next in = InputBox("请输入一个数:")If a(1) < a(2) Then '判断是升序还是降序,如果第
12、一个元素小于第二元素,说明是升序,否则降序i = 1 Do While n > a(i) i = i + 1 Loop For j = 10 To i Step -1 a(j + 1) = a(j) Next j a(i) = n Else i = 1 Do While n < a(i) i = i + 1 Loop For j = 10 To i Step -1 a(j + 1) = a(j) Next j a(i) = n End If Print For i = 1 To 11 Print a(i);Next iEnd Sub7.编一程序,从一个已排序好的数组中删去某个位置上
13、的元素说明:要找到欲删除的元素的位置k;然后从k+1到n个位置开始向前移动;最后将数组元素的个数减1Private Sub Form_Click()Dim a%(1 To 10), i%, j%, t%, n%i = 1Print "这10个数分别是"PrintFor i = 1 To 10 a(i) = i * 2 '给一维数组赋初值 Print a(i);Next in = InputBox("请输入要删除元素的位置:") For j = n + 1 To 10 a(j - 1) = a(j) Next j Print Print "
14、;删除第" & n & "个位置元素后为" For i = 1 To 9 Print a(i);Next iEnd Sub8.假设有一个整型数组,另输入一个整数,编程查找这个整数是否在数组中出现过,如出现,则输出第一次出现的位置,否则,输出no foundPrivate Sub Form_Click()Dim a%(1 To 10), i%, flag%, num, nflag = 0Print "一维数组的值如下:"For i = 1 To 10a(i) = Int(Rnd * 91) + 10 '假定给一维数组赋10
15、到100之间的随机值Print a(i);Next inum = InputBox("请输入一个数:")For i = 1 To 10If a(i) = num Thenflag = 1n = iExit ForEnd IfNext iPrintIf flag = 1 ThenPrint num & "在一维数组中出现的位置是" & nElsePrint " no found"End IfEnd Sub9. 二维数组元素求所有元素中最大值及其下标Private Sub Form_Click()Dim a%(1 To 2
16、, 1 To 3), max%, i%, j%, r%, c% '其中i和j分别控制行和列,r和c存放当前最大元素的行下标和列下标For i = 1 To 2For j = 1 To 3Randomizea(i, j) = Int(Rnd * 10) + 90 '用随机函数给二维数组赋值'a(i, j) = InputBox("请输入6个数") '用inputbox给二维数组赋值Print a(i, j);Next jPrintNext ir = 1c = 1max = a(1, 1)For i = 1 To 2For j = 1 To 3I
17、f a(i, j) > max Thenmax = a(i, j)r = ic = jEnd IfNext jNext iPrint "二维数组中最大的元素及其行下表和列下标为:" & max, r, cEnd Sub10. 编写一程序,在一个二维数组中,查找第一次出现的负数,并输出该数及其所在的行和列号说明:假设这个二维数组包含3行4列,有两种情况,一种是出现负数,一种情况是没有出现负数,我们首先假定没有出现负数,用flag=0记下这钟情况,那么如果找到的话,flag=1,此时就要退出内层循环并且推出外层循环。Private Sub Form_Click()Dim a%(1 To 3, 1 To 4), i%, j%, flag%, row%, column%flag = 0Print "二位数组如下:"For i = 1 To 3 For j = 1 To 4 a(i, j) = Int(Rnd * 41) - 20 '假定给二维数组赋-20到20之间的随机值 Print a(i, j); Next j PrintNext iFor i = 1 To 3 For j = 1 To 4 If a(i, j) < 0 Then flag = 1 row = i col
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030中国普萘洛尔行业发展趋势分析与未来投资战略咨询研究报告
- 2025至2030中国无线网络胎儿监护仪市场运营风险及发展潜力评估报告
- 2025至2030中国新型轻型客车行业市场需求分析及发展趋势与投资价值报告
- 2025至2030中国数字虚拟货币存管行业发展趋势分析与未来投资战略咨询研究报告
- 2025至2030中国手工壁纸行业发展趋势分析与未来投资战略咨询研究报告
- 2025至2030中国建筑废物管理行业发展趋势分析与未来投资战略咨询研究报告
- 2025至2030中国平衡型基金行业市场深度调研及竞争格局与产业运行态势及投资规划深度研究报告
- 2025至2030中国巧克力糖果行业发展趋势分析与未来投资战略咨询研究报告
- 个人车位转让合同书十
- 公园四季的变迁时序类作文(8篇)
- PICC尖端心腔内心电图定位技术
- 出租房合同责任免除协议书
- 中国科技课件
- 2025年希腊语A2等级考试官方试卷
- 地理-2025年中考终极押题猜想(全国卷)
- 2024年广东省新会市事业单位公开招聘辅警考试题带答案分析
- 广安2025年上半年广安市岳池县“小平故里英才”引进急需紧缺专业人才笔试历年参考题库附带答案详解
- 肺性脑病的护理
- 派特灵用于女性下生殖道人乳头瘤病毒感染及相关疾病专家共识(2025年版)解读
- 数字化转型背景下制造业产业链协同创新机制研究
- 老年外科患者围手术期营养支持中国专家共识(2024)解读课件
评论
0/150
提交评论