使用循环的嵌套结构编程输出以下图形。 python的题目

如题所述

【请问是什么书里有这道题目?麻烦提供书名和作者,感谢】

第1个代码:

for i in range(0,4):
    for j in range(0,7):
        print("*",end="")
    print()

说明:

内循环用变量 j,每行打印7个*:

即:当j=0时,打印第1个 *,j=1时,打印第2个 *,......, j=6时,打印第7个*。

外循环用变量 i,一共打印4行:

即:当i=0时,打印第1行7个*,i=1时,打印第2行7个*,......, i=3时,打印第4行7个*。

输出结果:

*******
*******
*******
*******

第2个代码:

for i in range(1,8,2):
    for j in range(i):
        print("*",end="")
    print()

说明:

i=1时,j循环range(1),打印1个*;

i=3时,j循环range(3),打印3个*;

i=5时,j循环range(5),打印5个*.......

输出结果:

*
***
*****
*******


第3个代码:

for i in range(1,8,2):
    print(int((7-i)/2)*" ",end="")
    for j in range(i):
        print("*",end="")
    print()

说明:

要在每一行的*前面打印空格,空格的循环并不是在内循环中,因为如果在*号打印中混合空格,会出现一个*号一个空格的输出错误。所以空格循环应在外循环中,根据行数的打印而进行循环增加。

输出结果:

   *
  ***
 *****
*******

第4个代码直接写在第6个代码中。

第6个代码:

for i in range(1,8,2):
    print(int((7-i)/2)*" ",end="")
    for j in range(i):
        print("*",end="")
    print()
 for i in range(5,0,-2):
    print(int((7-i)/2)*" ",end="")
    for j in range(i):
        print("*",end="")
    print()


说明:

在第3个代码中,增加依次递减。

输出结果:

   *
  ***
 *****
*******
 *****
  ***
   *


第5个代码:

for i in range(1,8,2):
    for j in range(i):
        print("*",end="")
    print()

for i in range(5,0,-2): 
    for j in range(i):
        print("*",end="")
    print()

说明:

同代码2,只是增加下方的递减循环打印。

输出结果:

*
***
*****
*******
*****
***
*

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-04-12

亲,我帮你实现前3个,剩下的希望能够触类旁通。


代码一:

for i in xrange(0,4):
    print ('*'*8)

代码二:

for i in xrange(0,4):
    print ('*'*(2*i+1))

代码三:

for i in xrange(0,4):
    print (' '*(4-i) + '*'*(2*i+1))

本回答被网友采纳
相似回答