第43讲 多重循环_第1页
第43讲 多重循环_第2页
第43讲 多重循环_第3页
第43讲 多重循环_第4页
全文预览已结束

下载本文档

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

文档简介

1、第43讲 多重循环的概念和使用一、循环结构语句使用复习上节课可我们讲了两种循环结构语句的格式(见下3、所示)1、运行For语句和Do语句的循环语句的功能示(注意步长为负时,如-1时For语句的运行情况讨论),掌握它们的功能; 2、例2:求S=1+1/2+1/3+1/n的循环结构程序如下:(演示:,再一次说明为什么要用第二种Do循环语句)S = 0n = Val() (因为条件表达式是数值比较,所以要把得到的字符串数字转为数值类型,例如:”100”à100)Do While n < 1 Or n <> Fix(n) Fix(x)是取整函数; n = InputBox(

2、"输入n不是自然数,请重新输入n=?") 输入框:InputBox Text1.Text = n n = Val(n) (因为条件表达式是数值比较,所以要把InputBox得到的Loop 字符串数字转为数值类型,例如:”100”à100)For k = 1 To n S = S + 1 / k 循环求S=1+1/2+1/3+1/n Next kText2.Text = S3、两种循环结构语句的格式: (1) For语句的一般格式: P79For 循环变量=初值 To 终值 Step 步长程序段Next循环变量 (当循环变量没超出终值时,执行程序段)(2) Do语句

3、的常用格式: P80Do While 条件表达式 (当条件成立时,进入循环,执行程序段) 程序段Loop (负责回到条件表达式,判断是否成立?)提问:程序段的结构是什么样的? 就是以前讲的程序有三种基本控制结构:顺序结构、(分支)选择结构、循环结构!这三种基本控制结构通常会被组合起来使用,以表达各种较为复杂的问题的算法。例如:1、 在(分支)选择模式内嵌入(分支)选择模式;2、 在循环模式内嵌入循环模式; 3、 在循环模式内嵌入在(分支)选择模式;在(分支)选择模式内嵌入循环模式;因此,循环内的程序段可以再包含选择模式和循环模式,今天我们先来讨论:循环内的程序段可以再包含循环模式多重循环的使用

4、!如果一层循环内只包含一层循环,我们把它叫做双重循环,掌握了双重循环的用法,那么多重循环也就容易使用掌握了。二、双重循环的使用: 1、一般结构:(以For语句为例)For 循环变量A=初值 To 终值 Step 步长外循环内循环For 循环变量B=初值 To 终值 Step 步长程序段Next循环变量BNext循环变量A 2、双重循环执行实例: 双重循环是如何执行的呢?我们来看下面:实例1:For i=1 To 3 Step 1For j=1 To 5 Step 1 Str(i) + "*" + Str(j) 复习列表框的作用, Next j Next i 运行、演示多重循

5、环程序; 从实际演示可知:当i=1时,j=1、2、3、4、5; 当i=2时,j= 2、3、4、5;当i=3时,j= 3、4、5;规律总结:先外循环,后内循环,内循环完成后,再进入外循环;For i=1 To 5 Step 1For j=a To b Step 1Print "*"NextjPrintNexti实例2:打印(输出)用“*”组成的图形;右边程序中,只要改变a、b的值,便打印出用“*”组成的各种图形;(演示) 注意:Print "*" 后分号“;” 表示不换行,下次循环打印还在同一行上。用立即方式验证如下: Print "3"

6、;;"+" ;"9=";3*93+9= 27 提问:输出 3*9=27 的语句有几种写法?(用立即方式展示) 实例3:修改实例2,可得到一个九九乘法表,程序如下: For i=1 To 9 Step 1For j=i To 9 Step 1Print Str(i) + "*" + Str(j)+ "="i*j;NextjPrint 打印空行,起到换行的作用!Next i讲解上程序,演示九九乘法表程序;注意:为了内、外循环程序结构层次清楚,上面程序的同一个循环语句For/Next上下对齐,而且内循环语句缩进2格书写;

7、小结:1、循环内的程序段可以再包含循环模式,我们称为多重循环;如果一层循环内只包含一层循环,我们把它叫做双重循环。2、双重循环的运行是先外循环,后内循环,内循环完成后,再进入外循环;(多重循环运行次序也一样类推,见课本P22-23(P96-97)的包装问题算法);三、练习1、 理解多重循环的概念;2、 以上实例1、2、3为操作实例,运行:和,掌握双重循环的用法;3、运行实例3程序(在中),打印(输出)用“*”组成的图形;修改程序(改变循环的初值a、终值b),打印出用“*”组成的各种图形。4、(机动题)理解P22-23(P96-97)的包装问题算法,运行,理解其程序代码(见P97或下面程序清单,这是个三重循环)。 2010/03/22Sub Command1_Click() Dim x, y, z, c As Integer c = 0 For x = 1 To 293For y = 1 To 118For z = 1 To 74If 2 * x + 5 * y + 8 * z = 600 ThenList1.AddItem

温馨提示

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

评论

0/150

提交评论