《2022年c语言多重循环教案 .pdf》由会员分享,可在线阅读,更多相关《2022年c语言多重循环教案 .pdf(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、课程名称多重循环 文本作图问题教材分析重点熟练掌握循环的嵌套,并能用双重循环结构编写有关文本作图的程序难点对双重循环的外循环和内循环的理解与应用教学目标知识目标:巩固循环的嵌套,掌握利用循环嵌套解决文本作图问题的程序设计方法能力目标:培养学生分析问题、解决问题的能力,训练学生逻辑思维和判断能力发展目标:教给学生灵活的思维方法,培养学生的学习兴趣和勇于探索、勇于创新的精神,提高综合素质教法讲授、演示与学生自己编程并演示教具多媒体( ppt)教学过程一、复习多重循环1、循环的嵌套一个循环体内包含另一个完整的循环结构,称为循环的嵌套。while 语句、 do-while 语句和 for 语句都可以互
2、相嵌套,甚至可以多层嵌套。例如:while( ) for( ) for( ) for( ) 2、 二重循环假设外循共循环m 次,内循环共循环n 次,则:? 内外循环用到的循环变量名不能相同? 外循环每循环1 次,内循环需要完成整个n 次循环? 内循环的循环体共执行m n 次二、新课引入给出各种图片,引发学生的兴趣。* * * * * 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 6 页 - - - - - - - - - - * * * * * * * * * * * * * * 1 22
3、333 999999999 1 121 12321 1234321 12345678987654321 三、新课内容1、 现场编程例 1、输出以下图形* * * * 分析1、该问题用二重循环实现2、外循环控制输出行数,for(i=1;i=n;i+) 内循环实现输出列数,for(j=1;j=m;j+) 3、该题行数i 与列数 j 的关系是 j=i 代码#include main() int i,j; for(i=1;i=4;i+) for(j=1;j=i;j+) printf(*); printf(n); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师
4、归纳 - - - - - - - - - -第 2 页,共 6 页 - - - - - - - - - - 例 2、输出以下图形* * * * 分析1、该问题用二重循环实现2、外循环控制输出行数内循环中第一部分用循环打印空格确定打印字符的初始位置,第二部分确定每行打印符号的个数3、该题行数i 与列数 j 的关系是 j=i 代码#include main() int i,j; for(i=1;i=4;i+) for(j=1;j=4-i;j+) printf( ); for(j=1;j=i;j+) printf(*); printf(n); 例 3、输出以下图形* * * * 分析1、该问题用二重
5、循环实现2、外循环控制输出行数内循环中第一部分用循环打印空格确定打印字符的初始位置,第二部分确定每行打印符号的个数3、本题图形的规律:每行“* ”的个数与行数i 的关系是2*i-1 代码#include main() int i,j,k; for(i=1;i=4;i+) for(j=1;j=4-i;j+) printf( ); for(k=1;k=2*i-1;k+) printf(*); printf(n); 2、 拓展练习输出以下图形精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 6 页 -
6、 - - - - - - - - - 1 121 12321 12345678987654321 行数( i)空格数( 9-i)前半段数字 (i) 后半段数字 (i-1) 1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 代码#include void main() int i,j; for(i=1;i=9;i+) for(j=1;j=9-i;j+) printf( ); for(j=1;j=1;j-) printf(%d,j); printf(n); 例 2、输出以下图形* * * * * * *
7、行数(i)空格数(abs(i) )字 符 个 数 (2*(n-abs(i)-1 -3 -2 -1 0 1 2 3 3 2 1 0 1 2 3 1 3 5 7 5 3 1 代码#include #include void main() 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 6 页 - - - - - - - - - - int i,j; for(i=-3;i=3;i+) for(j=1;j=abs(i);j+) printf( ); for(j=1;j=2*(4-abs(i)-1;j+
8、) printf(*); printf(n); 四、课堂总结1、外循环控制图形的行数2、内循环的第一部分控制输出字符的首位置,第二部分控制输出字符的个数3、用 printf(n) 语句换行4、如果关于x 轴或 y 轴对称,循环变量从-(n-1)/2 到(n-1)/2,n 为行数或列数。五、课后作业利用双重循环结构打印所示图形* * * * 9 8 7 6 5 4 3 2 1 0 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 6 页 - - - - - - - - - - 文档编码:KDHSIBDSUFVBSUDHSIDHSIBF-SDSD587FCDCVDCJUH 欢迎下载 精美文档欢迎下载 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 6 页 - - - - - - - - - -