C语言编程:从键盘输入一个字符串,查找指定子串第一次出现的位置。求问题补充里的程序
原理类似于找素数,以下是具体代码(附注释):
成都创新互联是一家专注于成都网站设计、成都网站制作与策划设计,苏州网站建设哪家好?成都创新互联做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:苏州等地区。苏州做网站价格咨询:13518219792
#include stdio.h
#include stdlib.h
#include math.h
int SearchString(char s[], char d[]);
main()
{
char s[81]; //储存一串字符
char d[10]; //储存要查找的字符
int flag;
//输入一串字符
printf("Input a string:");
gets(s);
//输入想要查找的字符
printf("Input another string:");
gets(d);
//调用函数,输出结果
flag=SearchString(s,d);
if(flag==-1)
printf("Not found!\n");
else
printf("Searching results:%d\n",flag);
system("pause");
}
//函数功能:在字符数组s中查找子串d,返回d在s中首次出现的位置,若找不到,则返回-1
int SearchString(char s[], char d[])
{
int location=-1;
int i,j;
//第一层循环遍历被查找字符串
for(i=0;s[i]!='\0';i++)
{
//第二层循环遍历要查找的字符,若有不同的字符则退出该循环
for(j=0;d[j]!='\0';j++)
{
if(s[i+j]!=d[j])
break;
}
//判断第二层循环是否全部执行,若全部执行则表示字符相等,保存位置
if(d[j]=='\0')
{
location=i+1;
break;
}
}
return location;
}
c语言从文本文件中的字符串查找子串?
将文本文件中的字符串按行提取,用正则表达式获取固定字符串
C语言之求字符串的子串
#include stdio.h
#include stdlib.h
#include string.h
char *sub(char *s,int st,int len)
{char *s1;
int i;
s1=(char*)malloc(len);
for(i=0;ilen;i++)s1[i]=s[st+i-1];
s1[i]='\0';
return s1;
}
int main()
{int n,i,j;
char s[200];
scanf("%d%*c",n);
while(n--)
{printf("input a string:");
gets(s);
printf("i=");
scanf("%d",i);
printf("j=");
scanf("%d%*c",j);
if(i+jstrlen(s))printf("Error\n");
else printf("%s\n",sub(s,i,j));
}
return 0;
}
分享文章:字符串函数查找子串c语言 字符串中查找子字符串
网站网址:http://lswzjz.com/article/dojjdoe.html