<span style="font-size:24px;">#include <stdio.h> #include<string.h> #define MAX 1000 //读取字符串函数 int getline(char line[],int max)//max为数组剩余长度 { char ch; int i=0; while(max>0 && (ch=getchar())!=EOF && ch!='\n') { line[i]=ch;//读取字符放到数组Line中 i++; max--; } if(ch=='\n') line[i++]='\n'; line[i]='\0'; if(i>0) //如果读取成功,返回1,读取不成功,返回0 return 1; else return 0; } //匹配字符串 int match(char line[],char *mat) { int i=0; int j=0; for(i=0;i<strlen(line);i++) { for(int k=i,j=0;j<strlen(mat);j++,k++) { if(line[i]!=*(mat+j)) break; } if(*(mat+j)=='\0'&& k>0)//匹配成功 return 1; } } int main() { char line[MAX]; char *mat="ould"; while(getline(line,MAX)) { if(match(line,mat)) printf("%s\n",line); } return 0; }</span>
时间: 2024-11-05 01:58:16