Zealotlies 2022-01-28 22:14 采纳率: 0%
浏览 29

PTA1014福尔摩斯的约会

img


求大佬帮忙看一下,这个是只有10分

#include <stdio.h>
int main()
{
    int i,j,k=0,l=0;
    char s[4][60],a[2],D[7][10]={"MON","TUE","WED","THU","FRI","SAT","SUN"};
    for(i=0;i<4;i++)
    {
        for(j=0;j<60;j++)
        {
            scanf("%c",&s[i][j]);
            if(s[i][j]=='\n')
                break;
        }
    }
    for(i=0;;i++)
    {
        if(s[0][i]=='\n'||s[1][i]=='\n')
            break;
        if((s[0][i]>='a'&&s[0][i]<='z')||(s[0][i]>='A'&&s[0][i]<='Z')){
            if(s[0][i]==s[1][i]){
                a[k]=s[0][i];
                k++;
            }
        }
        if(k==2)
            break;
    }
    for(i=0;i<60;i++){
        if(s[2][i]=='\n'||s[3][i]=='\n')
            break;
        if((s[2][i]>='a'&&s[2][i]<='z')||(s[2][i]>='A'&&s[2][i]<='Z')){
            if(s[2][i]==s[3][i]){
                l=i;
                break;
            }
        }
    }
    printf("%s ",D[a[0]-'A']);
    if(a[1]>='0'&&a[1]<='9')
        printf("%02d:",a[1]-'0');
    else
        printf("%02d:",a[1]-'A'+10);
    printf("%02d",l);
    return 0;
}
  • 写回答

1条回答 默认 最新

  • _GX_ 2022-01-28 22:51
    关注
    #include <stdio.h>
    #include <ctype.h>
    
    int main()
    {
        const char *days[] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
        char a[4][61];
        for (int i = 0; i < 4; i++)
            scanf("%s", &a[i][0]);
        const char *p = &a[0][0];
        const char *q = &a[1][0];
        int i = 0;
        while (*p && *q)
        {
            if (*p == *q && isalpha(*p))
            {
                if (i == 0)
                {
                    printf("%s ", days[*p - 'A']);
                    i++;
                }
                else
                {
                    printf("%02d:", *p - 'A' + 10);
                    break;
                }
            }
            p++;
            q++;
        }
        p = &a[2][0];
        q = &a[3][0];
        while (*p && *q)
        {
            if (*p == *q && isalpha(*p))
            {
                printf("%02d", (int)(p - &a[2][0]));
                break;
            }
            p++;
            q++;
        }
        return 0;
    }
    
    评论

报告相同问题?

问题事件

  • 创建了问题 1月28日

悬赏问题

  • ¥100 如何修改别人网站内的数字,各位接单的私我
  • ¥15 poi怎么在指定位置之后生成多个表格
  • ¥15 nginx在location设置了client_max_body_size依旧报错413
  • ¥15 C#添加WCF服务引用客户端调用方法没有反应
  • ¥15 stm32f103c8t6与esp8266
  • ¥15 使用Hadoop的MapReduce program
  • ¥15 Python发生IndexError错误如何解决?
  • ¥15 如何用matlab搭建激光器
  • ¥15 51单片机两路互补SPWM输出全桥逆变
  • ¥15 outlook左边用户名下拉为啥打不开了