C匹配模式与无限输入

时间:2017-10-20 16:11:22

标签: c input pattern-matching

我正在尝试编写一个无限接收输入的程序,每当输入序列与给定模式匹配时,它应该打印出已找到匹配并继续搜索其他模式的模式 我设法只是编码这个

    #include<stdio.h>
    #include<string.h>
    int main(){
      char ch;
      char pattern[4]="1234";
      int i=0;
      while(1){
        scanf("%c",&ch);
        if(ch==pattern[i]){
          count+=1;
          i+=1;
        }
        //printf("%c",ch);
      }
      return 0;
    }

帮我解决代码

1 个答案:

答案 0 :(得分:2)

你可以从这里开始,你明白了。

  #include<stdio.h>
    #include<string.h>
    int main(){
      char ch;
      char pattern[4]="1234";
      int i=0;
      while(1){
        scanf(" %c",&ch);
        if(ch==pattern[i]){
          i+=1;
        } else {
            i = 0;
        }
        if (i == 4) {
            printf("match found!\n");
            i = 0;
        }
        //printf("%c",ch);
      }
      return 0;
    }