列表

详情


NC22051. 带空格直角三角形图案

描述

KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的带空格直角三角形图案。

输入描述

多组输入,一个整数(2~20),表示直角三角形直角边的长度,即“*”的数量,也表示输出行数。

输出描述

针对每行输入,输出用“*”组成的对应长度的直角三角形,每个“*”后面有一个空格。

示例1

输入:

5

输出:

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

示例2

输入:

4

输出:

      * 
    * * 
  * * * 
* * * *

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++11(clang++ 3.9) 解法, 执行用时: 4ms, 内存消耗: 372K, 提交时间: 2019-12-10 19:15:08

#include <stdio.h>
int main()
{int a,b,c,d;
 while((scanf("%d",&a))!=EOF)
 {for(b=0;b<a;b++)
 {for(c=(a-b-1)*2;c>0;c--)
 { printf(" ");}
for(d=0;d<=b;d++)
{printf("* ");}
  printf("\n");}}}

C(clang11) 解法, 执行用时: 2ms, 内存消耗: 376K, 提交时间: 2020-11-15 22:42:40

#include<stdio.h>
main ()
{int a,i,j;
while(scanf("%d",&a)!=EOF)
for(i=0;i<a;i++)
{for(j=0;j<a-i-1;j++)
printf("  ");
for(;j<a;j++)
printf("* ");
printf("\n");}
    }

Python3(3.5.2) 解法, 执行用时: 18ms, 内存消耗: 3340K, 提交时间: 2020-07-22 19:10:28

import sys

for line in sys.stdin:
    for i in range(1, int(line) + 1):
        print('  ' * (int(line) - i) + '* ' * i)

上一题