
怎样输入一两个字符就能检索出与他匹配的字符串
展开全部
#include <stdio.h>
char newstr[80];
void main()
{
char str[80],c_begin,c_end;
char *fun(char *p,char c_begin,char c_end);
scanf("%s",str);
getchar();
c_begin=getchar();
getchar();
c_end=getchar();
puts(fun(str,c_begin,c_end));
}
char *fun(char *p,char c_begin,char c_end)
{
int n=0,i,j=0,k=0,m,b;
for(;p[n]!='\0';n++)
;
for(i=0;i<n;i++){
k++;
if(*(p+i)==c_begin)
break;
}
for(i=0;i<n;i++){
j++;
if(*(p+i)==c_end)
break;
}
b=k;
for(m=0;m<j-k+1;m++,b++){
newstr[m]=*(p+b-1);
}
newstr[m]='\0';
return newstr;
}
char newstr[80];
void main()
{
char str[80],c_begin,c_end;
char *fun(char *p,char c_begin,char c_end);
scanf("%s",str);
getchar();
c_begin=getchar();
getchar();
c_end=getchar();
puts(fun(str,c_begin,c_end));
}
char *fun(char *p,char c_begin,char c_end)
{
int n=0,i,j=0,k=0,m,b;
for(;p[n]!='\0';n++)
;
for(i=0;i<n;i++){
k++;
if(*(p+i)==c_begin)
break;
}
for(i=0;i<n;i++){
j++;
if(*(p+i)==c_end)
break;
}
b=k;
for(m=0;m<j-k+1;m++,b++){
newstr[m]=*(p+b-1);
}
newstr[m]='\0';
return newstr;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询