首页 > 试题广场 >

箭形图案

[编程题]箭形图案
  • 热度指数:25762 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的箭形图案。

输入描述:
本题多组输入,每行一个整数(2~20)。


输出描述:

针对每行输入,输出用“*”组成的箭形。

示例1

输入

2

输出

    *
  **
***
  **
    *
示例2

输入

3

输出

      *
    **
  ***
****
  ***
    **
      *
示例3

输入

4

输出

        *
      **
    ***
  ****
*****
  ****
    ***
      **
        *
while True:
    try:
        n = int(input())
        for i in range(0, n + 1):
            temp = "*" * (i) + "*"
            m = 2 * (n - i)
            temp = " " * m + temp
            print(f"{temp:<{n**2+2}}")  #  ^居中,>居右,<居左对齐
        for i in range(n-1, -1, -1):
            temp = "*" * (i) + "*"
            m = 2 * (n - i)
            temp = " " * m + temp
            print(f"{temp:<{n**2+2}}")  #  ^居中,>居右,<居左对齐

    except Exception as e:
        break


发表于 2024-09-28 19:19:17 回复(0)
while True:
    try:
        a = int(input())
        for i in range(-a, a + 1):
            print(" " * 2*abs(i) + "*"*(a-abs(i)+1))
    except:
        break

编辑于 2024-02-05 14:46:02 回复(0)
while True:
    try:
        n=int(input())
        for i in range(n):
            print('  '*(n-i)+'*'*(i+1))
        print('*'*(n+1))
        for i in range(n):
            print('  '*(i+1)+'*'*(n-i))
    except:
        break            

发表于 2023-01-20 11:26:19 回复(0)
while True:
    try:
        n = int(input())
        
        for i in range(-n,n+1):
            print(' '*abs(i)*2+'*'*(n-abs(i)+1))
    except:
        break

发表于 2022-10-07 22:20:50 回复(0)