PAT乙级1014 福尔摩斯的约会一个测试点过不了

1014 福尔摩斯的约会 (20 分)

img

#include<stdio.h>
#include<string.h>
int main()
{
    char a[61],b[61],c[61],d[61];
    int i,j,lena,lenb,lenc,lend;
    gets(a);gets(b);gets(c);gets(d);
    lena = strlen(a);lenb = strlen(b);
    lenc = strlen(c);lend = strlen(d);
    if(lena > lenb) lena = lenb;
    for(i = 0 ; i < lena ; i++)
    {
        if(a[i] >= 'A' && a[i] <='G')
        {
            if(a[i] == b[i])
            {
                switch(a[i])
            {
                case 'A':printf("MON ");break;
                case 'B':printf("THE ");break;
                case 'C':printf("WED ");break;
                case 'D':printf("THU ");break;
                case 'E':printf("FRI ");break;
                case 'F':printf("SAT ");break;
                case 'G':printf("SUN ");break;
            }
                break;
            }
        }
    }
    for(j = i+1 ; j < lena ; j++)
    {
        if(a[j] >= 48 && a[j] <= 57)
        {
            if(a[j] == b[j])
            {
                printf("%02d:",a[j] - 48);
                break;
            }
        }
        else if(a[j] >= 'A' && a[j] <= 'N')
        {
            if(a[j] == b[j])
            {
                printf("%02d:",a[j] - 55);
                break;
            }
        }
    }
    if(lenc > lend) lenc = lend;
            for(i = 0 ; i < lenc ; i++)
            {
                if(c[i] >= 'a' && c[i] <= 'z'|| c[i] >= 'A' && c[i] <='Z')
                {
                    if(c[i] == d[i])
                      {
                              printf("%02d",i);
                              break;
                      }
                }
            }    
    return 0;
}


img

case 'B':printf("THE ");break;这句话中,THE应该改成TUE

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632