Python程序开发之简单小程序实例
(3)-打印99乘法口诀表
一、项目功能
二、项目分析
按九九乘法口诀的运算顺序,打印的口诀表共有9行9列,第1行只有1列,第2行有2列……,第9行共有9列,如下所示:
1 1
1 2 2 2
1 3 2 3 3 3
……
……
1 9 2 9 3 9 4 9 5 9 6 9 7 9 8 9 9 9
要按格式控制输出,需定义2个循环,其中一个循环(我们称其为外循环,在其内定义变量i)嵌套另一个循环(我们称其为内循环,在其内定义变量j),外循环(变量i)控制行,循环次数大于等于1且小于10,内循环(变量j)控制列,循环次数取决于外循环变量i的值。
三、程序源代码
#!/usr/bin/python3.6
# -*- coding: GBK -*-
print("九九乘法口诀表")
for i in range(1, 10):
print()
for j in range(1, i+1):
print ("%d*%d=%d" % (j, i, i*j), end=" " )
四、代码解释:
在程序的第一行为引用python版本,本实例为python3.6
第二行是程序编码引用,因为在程序中包含有中文字符,所以必须引用GBK,否则就会报错。
第三行为输出标题“九九乘法口诀表”
第四行至第七行为程序主体,由两个循环嵌套组成,在循环内的第五行,为一个控制行格式输出语句print(),用于换行操作。
五、运行后的输出结果
下一篇:《Python程序开发之简单小程序实例(4)》
for a in range(1,10):
for b in range(1,a+1):
print(f'{a}*{b}={a*b}',end=' ')
print('')
亲测有效。
自己写的,亲测可行,望采纳:
def plus_table():
for i in range(1, 10): # 设置被乘数i,同时也是行号,第一行不打印空行,其他行当被乘数变化时换行
if i >1: # 第一行不打印空行,其他行当被乘数变化时换行
print()
for j in range(1, i + 1): # 设置乘数,同时也是列号,需要每个被乘数算式同列,所以不能默认print,需要加默认参数end为空
print("%d X %d = %-2d " % (i, j, i * j), end="") # 由于结果存在1位数和2位数的可能,为对齐,设置结果为%-2d,即保留2位空间,且左对齐
现在百度没有插入代码功能了,为了清晰缩进,请看贴图
执行结果如下:
如果为了跟经常见到的乘法表显示一致,可以将最后一行的i,j位置互换即可,如下:
print("%d X %d = %-2d " % (j, i, i * j), end="")
执行结果如下: