敢子要进步 发表于 2025-3-23 13:52:53

while语句疑惑

各位大佬们:
在学习while语句打印99乘法表的时候:
我刚开始写的代码如下:
j = 1
i = 9
while j <= 9:
    while j <=i:
      print(i,"*",j,"=",j*i,end=" ")
      i = i-1
    print(end="\n")
    j = j + 1
print("OK")

得出的结果如下图:

在参考了之前作业的代码后,又做了修改:
j = 1
while j <= 9:
    i = 9
    while j <=i:
      print(i,"*",j,"=",j*i,end=" ")
      i = i-1
    print(end="\n")
    j = j + 1
print("OK")


得出结果正确
这两段代码唯一不同就是i=9放入第一循环内部,如果不放如第一个循环内部,第二个循环进不去,这是为什么?

fujinglun 发表于 2025-3-23 14:17:24

你的i值发生改变了不满足条件所以进不去第二层循环 第一层循环放i = 9相当于刷新了i值使他变为9

敢子要进步 发表于 2025-3-23 14:40:28

fujinglun 发表于 2025-3-23 14:17
你的i值发生改变了不满足条件所以进不去第二层循环 第一层循环放i = 9相当于刷新了i值使他变为9

OOOO!迷糊了迷糊了,谢谢{:10_257:}
页: [1]
查看完整版本: while语句疑惑