c语言搜索子字符串
c字符串功能练习:
获取一行字符串,然后,在这行字符串中搜索是否包含一个小字符串
#include <cstdio> #include <cstring> #define N 100 using namespace std; int read_line(char str[],int n){ int ch,i=0; while((ch=getchar())!='\n'){ if(i<n){ str[i++]=ch; } } str[i]='\0'; return i; } int main(){ char s[N],s1[N]; int i,a,b,k; read_line(s,N); strncpy(s1,"you",N); k=0; a=strlen(s); b=strlen(s1); for(i=0;i<a-b+1;i++){ if((strncmp(s1,s+i,b))==0){ //主要是这个比较语句,s+i表示从0开始,一词递增,a-b+1,保证i最后一个值起始位置到字符串末尾的长度是b k++; } } printf("%d\n",k); return 0; }