(
课件网) 4.4.3-4 循环嵌套与循环控制 4.4.3 循环嵌套的应用(复杂问题的多重循环) 1、for-in 、while循环的嵌套 for 循环变量 in 序列: 语句或语句组 for 循环变量 in 序列: for 循环变量 in 序列: 语句或语句组 while (表达式): 语句或语句组 for 循环变量 in 序列: while (表达式): 语句或语句组 while (表达式): for 循环变量 in 序列: 语句或语句组 while (表达式): while (表达式): 语句或语句组 4.4.3 for 、while循环的嵌套 for x in range(3): print("我是外循环:",x) for y in range(2): print(" ",) print("到我这里嵌套循环才结束。") x= y x x< y y< 输出结果 x的取值 y的取值 4.4.3 for 、while循环的嵌套 若想输出结果如右图所示, 应怎么修改程序代码 for x in range(3): print("我是外循环:",x) for y in range(2): print(" ",) print("到我这里嵌套循环才结束。") 4.4.3 for、while循环的嵌套 构建嵌套的循环需要注意: 1.缩进关系要保证好,内部的循环该缩进的要缩进,保持好层级关系才能让程序正确运行。 2.内外循环使用的计数变量不能相同,这样才可以保证不同循环的独立性,不会互相错乱,比如这里的x、y。 for x in range(3): print("我是外循环:",x) for y in range(2): print(" ",) print("到我这里嵌套循环才结束。") 4.4.3 for、while循环的嵌套 x = 0 while x < 3: print("我是外循环:",x) x = x + 1 y = 0 while y < 2: print(" ") y = y + 1 print("到我这里嵌套循环才算结束了。") for x in range(3): print("我是外循环:",x) y = 0 while y < 2: print(" ") y = y + 1 print("到我这里嵌套循环才算结束了。") 4.4.3 循环嵌套的应用(复杂问题的多重循环) 【例1】请设计满足如下条件的程序。(打印三角形数) 1.输入一个数表示行数; 2.第i行从1开始递增打印i个数。 1 12 123 m=int(input('请输入一个正整数:')) for i in range(1,m+1): for j in range(1,i+1): print(j,end='') print() m=2 i j 输出结果 i的取值 j的取值范围 1 12 123 1234 12345 4.4.3 循环嵌套的应用(复杂问题的多重循环) 【例2】用循环嵌套实现九九乘法表的打印。 for i in range(1,10): for j in _____: if i>j: print(j,"x",i,"=",i*j,end=" ") else: print(i,"x",j,"=",i*j,end=" ") print() 4.4.4 循环控制的应用 1.break语句:当某个条件成立时,跳出当前循环体,中断循环 for i in "python": if i=='o': break print(i) print('结束循环') x=0 while x<6: x=x+1 if x==3: break print('当前的i值:',x) print('结束循环') 如果将break修改为continue, 则代码的运行结果为? 4.4.4 循环控制的应用 2.continue语句:当某个条件成立时,直接回到循环条件判断的部分,重新开始循环 for i in "python": if i=='o': continue print(i) print('结束循环') x=0 while x<6: x=x+1 if x==3: continue print('当前的i值:',x) print('结束循环') 4.4.4 循环控制的应用 【练习】下列程序的输出结果是? for i in range(5): if i==2: continue print(i) i= i i< 输出结果 for i in range(5): if i==2: break print(i) 4.4 综合练习 【练习1】下列程序的输出结果是? for i in range(1,4): print("我是外循环:",i,sep='') for j in range(1,4): if j==i: print('i=',i,',j=',j,'时,遇到break',sep='') break else: print('i=',i,',j=',j,sep='') print("循环结束") 4.4 综合练习 【练习1】下列程序的输出结果是? for i in range(1,4): print("我是外循环:",i,sep='') for j in range(1,4): if j==i: print('i=',i,',j=',j,'时,遇到continue' ... ...