| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 413 人关注过本帖
标题:模式匹配
只看楼主 加入收藏
双子若尘
Rank: 1
来 自:福州
等 级:新手上路
帖 子:21
专家分:0
注 册:2012-12-13
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
模式匹配
大神们,这题我的算法有问题吗为何没有输出,还超出时限

以字符串的形式给出文本text和模式串p1,p2...pn。请使用指针方法编写程序判断有多少个模式串出现在文本中。




输入格式


  第一行一个整数N(N<=20),表示模式串的个数。
   第二行,一个字符串,表示给定的文本。文本长度<=20。
   第三行至第N+2行,每行一个字符串,表示模式串。模式串长度<=10。
   




输出格式


  输出一个整数,即出现在文本中的模式串的个数。
   




样例输入


2
 Abc
 Ab
 bc




样例输出


2
#include<stdio.h>
int main()
{
    char a[20][20];
    char str[20];
    int n,i,j,k,t=0,flag=1,f=1;
    char  *p=str;
    scanf("%d",&n);
    scanf("%s",str);
    for(i=0;i<n;i++)
        scanf("%s",a[i]);
    for(i=0;i<n;i++)                                                 //
    {
        j=0;flag=1;
        for(j=0,p=str;*(p+i)!='\0'&&flag==1;j++)                               //
        {
            if(*(p+i)==a[i][0])
            {
                k=0;f=1;
                for(k=0,f=1;a[i][k]!=0;k++)
                {
                    if((a[i][k]!=*(p+j+k))||*(p+j+k)=='\0')                             //
                        f=0;
                }
                if(f==1)
                {
                    t++;
                    flag=0;
                }
            }
        }
    }
    printf("%d\n",t);
    return 0;
}


搜索更多相关主题的帖子: 多少 编写程序 include 字符串 
2012-12-27 23:55
czz5242199
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:660
专家分:2400
注 册:2011-10-26
收藏
得分:20 
KMP
2012-12-28 11:59
双子若尘
Rank: 1
来 自:福州
等 级:新手上路
帖 子:21
专家分:0
注 册:2012-12-13
收藏
得分:0 
谢啦
2012-12-28 12:15
快速回复:模式匹配
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013751 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved