wmy1212 发表于 2021-5-29 17:11:30

萌新问 倒着打印99乘法表

不知道错在哪里,求大佬们帮忙看看~
i = 9
j = 1
while i >= j:
    if i > 0:
      print(i,'*',j,'=',i*j,end=' ')
      i -= 1
    else:
      i = 9
      j += 1
      continue
https://xxx.ilovefishc.com/forum/202008/20/194315xixvgigti5ddklcg.png

肖-肖 发表于 2021-5-29 17:49:25

本帖最后由 肖-肖 于 2021-5-29 17:51 编辑

我写出了一个,解释再注释中哦
i = 9 #被乘数
j = 1 #乘数
while j<10:#修改乘数
    while i >= j:#修改被乘数
      print(i,'*',j,'=',i*j,end=' ')
      i -= 1
    j += 1
    i = 9 #重新赋值i的值
    print() #换个行

运行结果如下:
9 * 1 = 9 8 * 1 = 8 7 * 1 = 7 6 * 1 = 6 5 * 1 = 5 4 * 1 = 4 3 * 1 = 3 2 * 1 = 2 1 * 1 = 1
9 * 2 = 18 8 * 2 = 16 7 * 2 = 14 6 * 2 = 12 5 * 2 = 10 4 * 2 = 8 3 * 2 = 6 2 * 2 = 4
9 * 3 = 27 8 * 3 = 24 7 * 3 = 21 6 * 3 = 18 5 * 3 = 15 4 * 3 = 12 3 * 3 = 9
9 * 4 = 36 8 * 4 = 32 7 * 4 = 28 6 * 4 = 24 5 * 4 = 20 4 * 4 = 16
9 * 5 = 45 8 * 5 = 40 7 * 5 = 35 6 * 5 = 30 5 * 5 = 25
9 * 6 = 54 8 * 6 = 48 7 * 6 = 42 6 * 6 = 36
9 * 7 = 63 8 * 7 = 56 7 * 7 = 49
9 * 8 = 72 8 * 8 = 64
9 * 9 = 81

Twilight6 发表于 2021-5-29 17:54:16



while 循环把 i 直接改成 9,否则因为你循环过程中 i 值会改变导致小于 j 退出循环

else 下面加个 print 进行换行,if 多加个条件进行打印,不然会重复打印

continue 加没意义,因为运行到这里就是循环体中的最后一行代码,马上就直接开始下次循环

参考代码:

i = 9
j = 1
while 9 >= j:
    if i > 0 and j <= i:
      print(i,'*',j,'=',i*j,end=' ')
      i -= 1
    else:
      print()
      i = 9
      j += 1
页: [1]
查看完整版本: 萌新问 倒着打印99乘法表