为什么while双重循环是这样的结果?
x=1 y=1 while True: while y<9: x=x+1 y=y+1 print x*10+y
上面是我的代码和结果,但是和它不应该是循环输出64个数出来吗?
x=1 y=1 while True: while y<9: x=x+1 y=y+1 print x*10+y
上面是我的代码和结果,但是和它不应该是循环输出64个数出来吗?
2017-11-13
这是你的程序执行流程:
x==2,y==2,x*10+y==22
x==3,y==3,x*10+y==33
...
x==9,y==9(y之前为8,符合内层循环条件y<9,进入内存循环执行y=y+1,y等于9),x*10+y==99
由于y==9,不满足内层循环条件y<9,所以跳出内层循环。由于内层循环后面已经没有代码了,所以程序然后判断是否符合外层循环条件,由于符合外层循环条件,所以继续执行下一条语句,即判断是否符合内层循环条件,由于不符合内层循环条件(y==9,不满足y<9),所以不能执行内层循环的打印语句。
可以改为:
x=1 y=1 while x<9: x=x+1 while y<9: y=y+1 print x*10+y y=0
举报