成都网站建设设计

将想法与焦点和您一起共享

c语言字符串查找字串函数 c 字符串查找

用c语言在一个字符串中查找另一个字符串,并统计个数

例如,asdfgasfgasf,as,则输出3。

为平塘等地区用户提供了全套网页设计制作服务,及平塘网站建设行业解决方案。主营业务为成都网站设计、成都网站建设、平塘网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

#include<stdio.h>

#include<stdlib.h>

intmain()

charS[100],T[20];

charch1,ch2;

printf("请输入主字符串:\n");

ch1=getchar();

inti=0;

while(ch1!='\n')

S[i]=ch1;

i++;

ch1=getchar();

printf("请输入要筛选的字符串:\n");

ch2=getchar();

intj=0;

while(ch2!='\n')

T[j]=ch2;

j++;

ch2=getchar();

intm,n;//m为S的下标,n为T的下标

m=0;

n=0;

intnum=0;//num用于记录选定单词出现的次数

while(m<=i&&n<=j)

if(S[m]==T[n])

m++;

n++;

else

m=m-n+1;

n=0;

if(n==j)

num++;

if(m==i+1)

printf("出现的次数是%d",num);

扩展资料:

while语句若一直满足条件,则会不断的重复下去。但有时,需要停止循环,则可以用下面的三种方式:

一、在while语句中设定条件语句,条件不满足,则循环自动停止。

如:只输出3的倍数的循环;可以设置范围为:0到20。

二、在循环结构中加入流程控制语句,可以使用户退出循环。

1、break流程控制:强制中断该运行区内的语句,跳出该运行区,继续运行区域外的语句。

2、continue流程控制:也是中断循环内的运行操作,并且从头开始运行。

三、利用标识来控制while语句的结束时间。

关于查找字符串子串的C语言程序(VC界面)

定义为:char *p;

完整的程序如下:

#includestdio.h

#includestring.h

void main()

{

int i;

char a[30],ch;

char *p;//这里!这里!这里!这里!这里!这里!这里!这里!这里!这里!

gets(a);//输入带空格字符的字符串,赋予字符数组变量a

ch=getchar();//输入要查找的字符赋予字符变量b

p=strchr(a,ch);//查找字符位置函数

if(p!=NULL)

printf("在字符串%s中以字符%c开始的子串为%s.\n",a,ch,p);

else

printf("在字符串%s中没找到字符%c.\n",a,ch);

}

C语言编程:从键盘输入一个字符串,查找指定子串第一次出现的位置。求问题补充里的程序

原理类似于找素数,以下是具体代码(附注释):

#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语言之求字符串的子串

#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语言字符串查找字串函数 c 字符串查找
分享URL:http://chengdu.cdxwcx.cn/article/dojgdpc.html