输出一个边长N的菱形图案,该菱形由大写字母组成,首字符为Z之后 Y 【1】 X W【2】 V U 【3】 T,数字处为空格数,以后依次递减。我的答案都是对的,为什么评测平台说格式错误呢?


#include<stdio.h>
int main()
{
    int i,j,k,n,flag,diff=0;
    scanf("%d",&n);
    for(i=1;i<=2*n-1;i++)
    {
        if(i<=n) k=i;
        else    k=2*n-i;
        for(j=1;j<=2*n-1;j++)
        {
            if(j==2*(n-k)+1){
                printf("%c",'Z'-diff%26);
                diff++;
            }
            else printf(" ");
        }
        for(;j<=4*n-3;j++)
        {
            if(j==2*(n+k)-3)
            {
                printf("%c",'Z'-diff%26);
                diff++;
            }
            else printf(" ");
        }printf("\n");
    }
    return 0;
}

输入
6
输出
           Z
        Y   X
      W       V
    U           T
  S               R
Q                   P
  O               N
    M           L
      K       J
        I   H
          G

供参考:

#include<stdio.h>
int main()
{
  int i,j,n;
  char ch  = 'Z';
  scanf("%d",&n);
  for(i = 0;i < n; i++)
  {
      for(j = i;j < n; j++)
          printf(" ");
      for(j = 0;j < 2*i+1; j++)
          printf("%c",(j==0||j==2*i)?ch--:' ');
      printf("\n");
  }
  for(i = n-2;i >= 0; i--)
  {
      for(j = i;j < n; j++)
          printf(" ");
      for(j = 0;j < 2*i+1; j++)
          printf("%c",(j==0||j==2*i)?ch--:' ');
      printf("\n");
  }
  return 0;
}