计算机基础概论与vb程序设计课件版第三章c_第1页
计算机基础概论与vb程序设计课件版第三章c_第2页
计算机基础概论与vb程序设计课件版第三章c_第3页
计算机基础概论与vb程序设计课件版第三章c_第4页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

1、Visual Basic 6.0 程序设计教程 2第三章 结构化程序设计与数组(重点)选择结构IF结构、情况选择结构循环结构For/Next、While/Wend、Do/Loop循环多重循环双重循环数组一维和二维数组 3求算式 前40项的和求解步骤:分析、归纳、提炼、编程调试通项:ai=(-1)i+1/iDim sum As Single, n As Integer, f As Singlesum = 0 存放和For i = 1 To 40 f = (-1) (i + 1) * 1 / i f表示1/n sum = sum + fNext iPrint sum 4精度为0.000001,即当

2、= 0.000001 u = u * i t = (-1)(i+1)/u s = s + t i = i + 1 Wend Print s思考: 5例3-27 用随机函数产生n个两位整数,用选择排序法排序后将它们按值从小到大排序输出(P80)。选择排序算法思想:1)对有n个数的序列(存放在数组a(n)中),从中选出最小(升序)或最大(降序)的数,与第1个数交换位置;2)除第1 个数外,其余n-1个数中选最小或最大的数,与第2个数交换位置;3)依次类推,选择了n-1次后,这个数列已按升序排列原始数据:8 6 9 3 2 7第一轮后:2 6 9 3 8 7第二轮后:2 3 9 6 8 7第三轮后:

3、2 3 6 9 8 7第四轮后:2 3 6 7 8 9第五轮后:2 3 6 7 8 9核心思想n个数排序最多需要 n-1轮循环。第i次循环,从a(i)a(n)间选择最小(大)值与a(i)交换,使得a(i)位置上存放第i小(大)的数。代码中,k为a(i)a(n)间实际、真正最小(大)值的下标。 6 7Private Sub Command1_Click() Dim A(1 To 10) As Integer Dim n%, i%, j%, Min%, t%, k% n = 6 A(1) = 8: A(2) = 6: A(3) = 9: A(4) = 3: A(5) = 2: A(6) = 7 F

4、or i = 1 To n 1 k= i For j = i + 1 To n If A(j) A(k) Then k = j Next j t = A(i):A(i) = A(Min):A(k) = t For k = 1 To n Print A(k); Next k Print Next iEnd Sub原始数据:8 6 9 3 2 7第一轮后:2 6 9 3 8 7第二轮后:2 3 9 6 8 7第三轮后:2 3 6 9 8 7第四轮后:2 3 6 7 8 9第五轮后:2 3 6 7 8 9冒泡排序法:冒泡排序算法思想:1) 相邻两数比较,若发现逆序则立即交换两数。2) N个数排序最多

5、需要N-1轮。3) 从小到大排:第i轮排序将第i大的数移到 a(n-i+1)。3) 从大到小排:第i轮排序将第i小的数移到 a(i)。原始数据:8 6 9 3 2 7第一轮:6 8 9 3 2 7 6 8 3 9 2 7 6 8 3 2 9 7 6 8 3 2 7 9第二轮:6 3 8 2 7 9 6 3 2 8 7 9 6 3 2 7 8 9第三轮:3 6 2 7 8 9 3 2 6 7 8 9 3 2 6 7 8 9第四轮:2 3 6 7 8 9 2 3 6 7 8 9第五轮:2 3 6 7 8 9 9显示如下图所示的杨辉三角形。 10Private Sub Form_Click() Di

6、m n%, i%, j%, a() As Integer n = Val(InputBox(请输入一个整数n, 打印杨辉三角形) ReDim a(n, n) For i = 1 To n a(i, i) = 1: a(i, 1) = 1 Next i For i = 3 To n For j = 2 To i - 1 a(i, j) = a(i - 1, j - 1) + a(i - 1, j) Next j Next i For i = 1 To n For j = 1 To i Print a(i, j); Next j Print Next iEnd Sub 11 12Private Sub Form_Click() Dim n%, i%, j%, a() As Integer Const k as integer = 3 n = Val(InputBox(请输入一个整数n, 打印杨辉三角形) ReDim a(n, n) For i = 1 To n a(i, i) = 1: a(i, 1) = 1 Next i For i = 3 To n For j = 2 To n - 1 a(i, j) = a(i - 1, j - 1) + a(i - 1, j) Next j Next I For i = 1 To n Print Tab(n - i + 1)

温馨提示

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

评论

0/150

提交评论