2301_79802025 2023-10-21 13:03 采纳率: 64.3%
浏览 4
已结题

一串字符中是否出现abc

任意给一串字符 字符串中是否出现abc
abc可以不连续出现
但abc顺序不能颠倒
如 bca×

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-10-21 13:52
    关注
    #include <stdio.h>
    #include <string.h>
    int match(char s[])
    {
        int state = 0;
        for (int i = 0; i < strlen(s); i++)
        {
            if (s[i] == 'a' && state == 0)
                state = 1;
            if (s[i] == 'b' && state == 1)
                state = 2;
            if (s[i] == 'c' && state == 2)
                return 1;
        }
        return 0;
    }
    int main()
    {
        char s[100];
        while (scanf("%s", &s[0]) != EOF)
        {
            if (match(s))
                printf("yes\n");
            else
                printf("no\n");
                
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月29日
  • 已采纳回答 10月21日
  • 创建了问题 10月21日