列表

详情


BC110. X形图案

描述

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

输入描述

多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。

输出描述

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

示例1

输入:

5

输出:

*   *
 * * 
  *  
 * * 
*   *

示例2

输入:

6

输出:

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

原站题解

C 解法, 执行用时: 1ms, 内存消耗: 172KB, 提交时间: 2022-03-12

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    int a;
    while(~scanf("%d",&a)){
        for(int i = 0;i<a;i++){
            for(int j = 0;j<a;j++){
                if(i == j||i+j == a-1) printf("*");
                else printf(" ");
            }
            printf("\n");
        }
    }
    return 0;
}

C 解法, 执行用时: 1ms, 内存消耗: 180KB, 提交时间: 2021-12-26

#include<stdio.h>

int main()
{
    int n = 0;
    while(~scanf("%d", &n))
    {
        int i = 0;
        int j = 0;
        for(i = 0; i < n; i++)
        {
            for(j = 0; j < n; j++)
            {
                if(i == j || j == n-1-i)
                {
                    printf("*");
                }
                else
                {
                    printf(" ");
                }
            }
            printf("\n");
        }
    }
    return 0;
}

C 解法, 执行用时: 1ms, 内存消耗: 180KB, 提交时间: 2021-12-14

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

C 解法, 执行用时: 1ms, 内存消耗: 180KB, 提交时间: 2021-11-22

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

C 解法, 执行用时: 1ms, 内存消耗: 180KB, 提交时间: 2021-08-26

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

上一题