pta判断机,第一和第三个判断点不对

R7-8 编程打印空心字符菱形 (10 分)
本题目要求读入菱形起始字母和菱形的高度,然后输出空心字符菱形。所谓“空心菱形”是指:每行由两端为字母、中间为空格的字符串构成,每行的字符串中心对齐;上半部分相邻两行字符串长度差2,且字母从给定的起始字母逐一递增;下半部分与上半部分对称。

输入格式:
输入在一行中给出起始字母(范围为英文大写字母A-G)和菱形的高度(为不超过10的奇数)。

输出格式:
输出空心字符菱形。

输入样例:

B 5
结尾无空行
输出样例:
B
C C
D D
C C
B
结尾无空行


#include<stdio.h>
int main()
{
    int i,j,n,c;
    char ch;
    ch=getchar();
    if(scanf("%d",&c)==1&&c%2!=0)
    {
        n=(c+1)/2;
        for(i=1;i<=n;i++)
        {

            for(j=1;j<=c;j++)
            {
                if(j==n-i+1||j==n+i-1)
                    printf("%c",ch);
                else if(j<=c)
                    printf(" ");
            }
            ch++;
            printf("\n");
        }
        ch-=2;
        for(i=1;i<=n-1;i++)
        {
            for(j=1;j<=c;j++)
            {
                if(j==i+1||j==c-i)
                    printf("%c",ch);
                else if(j<=c-2)
                    printf(" ");
            }
            ch--;
            if(i!=n-1)
                printf("\n");
        }
    }
    return 0;
}