没有合适的资源?快使用搜索试试~ 我知道了~
串匹配C++代码
需积分: 12 2 下载量 50 浏览量
2013-04-12
22:32:36
上传
评论
收藏 2KB TXT 举报
温馨提示
试读
4页
串匹配C++代码.
资源推荐
资源详情
资源评论
BF算法
#include <iostream>
#include <string.h>
using namespace std;
int index(char s[],char t[]);/*函数声明*/
void main()
{
char s[50],t[50];
cout<<"请分别输入需要匹配的主串与子串(请先输入主串):"<<endl;
cin.getline(s,50,'\n');
cin.getline(t,50,'\n');
index(s,t);
}
int index(char s[],char t[])
{
int i,j,m,n,r;
i=0; j=0; r=1;
n=strlen(s); m=strlen(t);
while((i<n)&&(j<m))
{
if(s[i]==t[j])
{i++;j++;}
else
{i=i-j+1;j=0;r++;}
}
if(j>=m)
{
cout<<"在主串中找到了该子串,位置是从主串的第"<<i-m+1<<"个符号开始。"<<endl;
cout<<"匹配"<<r<<"次后找到了该子串。"<<endl;
#include <iostream>
#include <string.h>
using namespace std;
int index(char s[],char t[]);/*函数声明*/
void main()
{
char s[50],t[50];
cout<<"请分别输入需要匹配的主串与子串(请先输入主串):"<<endl;
cin.getline(s,50,'\n');
cin.getline(t,50,'\n');
index(s,t);
}
int index(char s[],char t[])
{
int i,j,m,n,r;
i=0; j=0; r=1;
n=strlen(s); m=strlen(t);
while((i<n)&&(j<m))
{
if(s[i]==t[j])
{i++;j++;}
else
{i=i-j+1;j=0;r++;}
}
if(j>=m)
{
cout<<"在主串中找到了该子串,位置是从主串的第"<<i-m+1<<"个符号开始。"<<endl;
cout<<"匹配"<<r<<"次后找到了该子串。"<<endl;
资源评论
lishancoral
- 粉丝: 0
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功