hdu 2565

来源:互联网 发布:数据分析范例 编辑:程序博客网 时间:2024/06/05 16:48

#include <stdio.h>
#include <string.h>
char str[82][82];
int main()
{
 int T;
 scanf("%d",&T);
 while(T--)
 {
  int i,j,n;
  scanf("%d",&n);
  //数组清零
  memset(str,0,sizeof(str));//
  //把 X放到数组中
  for(i=1;i<=n;i++)
  {
   for(j=1;j<=n;j++)
   {
    if(j==(n+1-i)||i==j)
    str[i][j]='X';
    else
    str[i][j]=' ';
   }
  }
  //输出 X,注意去掉多余的空格
  for(i=1;i<=n/2;i++)
  {
   for(j=1;j<=n;j++)
   {
    if(i+j>n+1)
    break;//去掉多余的空格
    printf("%c",str[i][j]);       
   }
   printf("\n");
  }
  for(;i<=n;i++)
  {
   for(j=1;j<=i;j++)
   {
    printf("%c",str[i][j]);    
   }
   printf("\n");
  }
  printf("\n");
 }
 return 0;
}

#include<stdio.h>
#include<string.h>
int main()
{
    int t,i,j;
    char str[82][82];
    scanf("%d",&t);
    while(t--)
    {
      int n;
      scanf("%d",&n);
      memset(str,0,sizeof(str));
      for(i=1;i<=n;i++)
      {
        for(j=1;j<=n;j++)
        {
          if(j==i||j==n-i+1)
          str[i][j]='X';
          else str[i][j]=' ';
        }
      }
      for(i=1;i<=n/2;i++)
      {
        for(j=1;j<=n;j++)
        {
          if(j>n-i+1) break;
          printf("%c",str[i][j]);
        }
        printf("\n");
      }
      for(;i<=n;i++)
      {
        for(j=1;j<=i;j++)
        printf("%c",str[i][j]);
        printf("\n");
      }
      printf("\n");      
    }
    return 0;
}
下面是一个能输出但没去掉空格的

#include<stdio.h>
#include<string.h>
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
      int i,j,k,n;
      //char str[90];
      scanf("%d",&n);
      for(i=1;i<=n;i++)
       {
         for(j=1;j<=n;j++)
         {
          if(j==i||j==n-i+1)
          printf("x");
          else printf(" ");
         }
         printf("\n");
       }
       printf("\n");
    }
    return 0;
}

0 0
原创粉丝点击