嵌套循环.ppt

上传人:b****3 文档编号:2680616 上传时间:2022-11-07 格式:PPT 页数:22 大小:350KB
下载 相关 举报
嵌套循环.ppt_第1页
第1页 / 共22页
嵌套循环.ppt_第2页
第2页 / 共22页
嵌套循环.ppt_第3页
第3页 / 共22页
嵌套循环.ppt_第4页
第4页 / 共22页
嵌套循环.ppt_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

嵌套循环.ppt

《嵌套循环.ppt》由会员分享,可在线阅读,更多相关《嵌套循环.ppt(22页珍藏版)》请在冰豆网上搜索。

嵌套循环.ppt

VB嵌套循环“九九乘法表”程序运行界面:

代码PrivateSubForm_click()Dimi,jAsIntegerDimsAsStringPrintTab(34);九九乘法表Fori=1To9Forj=1Tois=j&i&=&i*jPrintTab(j-1)*9+1);s;NextjPrintNextiEndSub复习:

复习:

循环结构也称重复结构,它的作用是使一段程序能重复执行,被重复执行的部分称为循环体。

但重复一般都是有条件的,即在满足FOR语句中的条件下才执行循环体,否则退出循环体。

“FORNEXT”语句的语句格式语句的语句格式:

For循环变量循环变量=初值初值to终值终值step步长步长循环体循环体Next循环变量循环变量应用循环结构的具体实例应用循环结构的具体实例:

1、完善程序,使得程序运行时,单击命令按钮后在窗体中、完善程序,使得程序运行时,单击命令按钮后在窗体中显示显示1到到100之间的奇数和:

之间的奇数和:

Privatesubcommand1_click()DimSasintegerDimiasintegerS=_Fori=1to100step_NextiprintsEndsub2、编写程序,实现一行、编写程序,实现一行“*”的打印(如下):

的打印(如下):

*Privatesubform_click()DimjasintegerForj=_to_Print“*”;(;有什么作用?

)NextjEndsub提出问题提出问题:

若要在若要在VB窗体输出如下的图形,该如何实现?

窗体输出如下的图形,该如何实现?

*提示:

提示:

把把每行每行看做一个看做一个“整体整体”,问题就转化为:

问题就变成打印问题就转化为:

问题就变成打印4个个“整体整体”,每打印完一个,需换一,每打印完一个,需换一行。

行。

即:

即:

Fori=1to4打印打印“一行一行*”PrintNexti把把打印打印“一行一行*”,用复习题,用复习题2所编写的代码代所编写的代码代替替.Fori=1to4Forj=1to5Print“*”;NextjPrintNexti由此总结二重循环语句格式:

由此总结二重循环语句格式:

for循环变量循环变量=初值初值to终值终值step步长步长for循环变量循环变量=初值初值to终值终值step步长步长循环体循环体next循环变量循环变量next循环变量循环变量进一步分析程序代码:

进一步分析程序代码:

Fori=1to4Forj=1to5Print“*”;NextjPrintNexti进一步分析进一步分析i的变化范围是的变化范围是1到到4,即为外循环变量,用来,即为外循环变量,用来控制打印的行数;控制打印的行数;j的变化范围是的变化范围是1到到5,即为内循环变量,即为内循环变量,用来控制每行打印的字符数,这样内外循环变量(用来控制每行打印的字符数,这样内外循环变量(i,j)就有了实际意义,即就有了实际意义,即i控制行数,控制行数,j控制每行字符数。

控制每行字符数。

二重循环执行过程:

外循环每执行一次,内循环执行一遍二重循环执行过程:

外循环每执行一次,内循环执行一遍二重循环执行过程:

外循环每执行一次,内循环执行一遍二重循环执行过程:

外循环每执行一次,内循环执行一遍1、请大家上机练习,用二重循环打印一个、请大家上机练习,用二重循环打印一个6行行5列的列的“*”图形图形Privatesubform_click()DimiasintegerDimjasintegerFori=_to_Forj=_to_Print“*”;NextjPrintNextiEndsub显然这里的矩阵图形是一个规则的图形(每显然这里的矩阵图形是一个规则的图形(每行字符数相同),如果是一个三角形(每行行字符数相同),如果是一个三角形(每行字符数不同)如何打印呢字符数不同)如何打印呢?

*2、在VB窗体上打印如下的图形(每行字符每行字符数不同数不同):

*Privatesubform_click()DimiasintegerDimjasintegerFori=_to_Forj=_to_Print“*”;NextjPrintNextiEndsub3、在VB窗体上打印如下的图形(每行字符每行字符数不同,每行起始数不同,每行起始*位置不同位置不同):

*这里要用到一个这里要用到一个Tab函数,此函数用来控函数,此函数用来控制输出字符的位置制输出字符的位置跟刚才分析方法一样,建立变量间的关系跟刚才分析方法一样,建立变量间的关系式,如下表:

式,如下表:

i起始*位置(n)j141232323414根据此表,用数学中一次函数思想(根据此表,用数学中一次函数思想(i为自变量,为自变量,j为函数值,为函数值,n为函数值)来建为函数值)来建立立j和和i关系表达式,关系表达式,n和和i的关系表达式。

从而得到的关系表达式。

从而得到j=i,n=5i具体代码如下:

具体代码如下:

Privatesubform_click()DimiasintegerDimjasintegerFori=_to_PrintTab(5-i)Forj=_to_Print“*”;NextjPrintNextiEndsub练习:

1、在vb窗体打印如下图形:

*Privatesubform_click()DimiasintegerDimjasintegerFori=_to_PrintTab()Forj=_to_Print“*”;NextjPrintNextiEndsub2、在vb窗体打印如下图形:

*Privatesubform_click()DimiasintegerDimjasintegerFori=_to_PrintTab()Forj=_to_Print“*”;NextjPrintNextiEndsub2i-13、打印如下图形:

*Privatesubform_click()DimiasintegerDimjasintegerFori=_to_PrintTab()Forj=_to_Print“*”;NextjPrintNextiEndsub4、打印如下图形:

Privatesubform_click()DimiasintegerDimjasintegerFori=_to_PrintTab()Forj=_to_Print“*”;NextjPrintNextiEndsub5、设计一个程序,打印下面所示图案、设计一个程序,打印下面所示图案:

*思考提示:

思考提示:

(1)如果我们以图形的第6行为X轴的话,图形的上半部分是否是关于下半部分对称。

(2)由于图案上下对称,上下对应的起始位置和字符个数完全一致,所以控制输出行数的循环变量是否也可以对称呢?

(3)以哪一行作为对称轴,外循环变量i的取值范围应为多少?

(4)第i行的起始位置还可以为tab(i+6)吗?

要用到什么函数?

(5)第i行的字符个数为多少,能否写成2*(6-i)-1的形式。

如果写成上述形式会出现什么情况,应该用哪个函数?

代码如下:

Privatesubform_click()DimiAsIntegerDimjAsIntegerFori=-5To5PrintTab(Abs(i)+6);Forj=1To2*(6-Abs(i)-1Print*;NextjPrintNextiEndsub小结:

小结:

本节课重在掌握循环的嵌套,通过各种图案的输出,让学生掌握嵌套循环的应用,要学会分析复杂的程序设计问题,并能综合运用vb的三种程序控制结构:

顺序结构、分支结构和循环结构的运用。

(七)课后思考练习(七)课后思考练习由学生课后单独思考并写好开头“九九乘法表”的程序及课本第40页实践

(1)的程序。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 信息与通信

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1