| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 667 人关注过本帖
标题:帮忙看一下这个程序哪里不对。。。
只看楼主 加入收藏
aptx48691212
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-11-21
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:11 
帮忙看一下这个程序哪里不对。。。
#include<stdio.h>
#include<string.h>
int main()
{
char str1[20],str2[20];
int i,j,n=0;
scanf("%s" "%s",str1,str2);
for(i=0;i<strlen(str1);)
  {for(j=0;j<strlen(str2);)
     {
         if(str1[i]==str2[j])
          {
             if((j+1)==strlen(str2))
              n=n+1;
         }
        i++; j++;
}

        i++;
  }
      printf("%d",n);
      return 0;
}
题目是求一个字符串中子串的个数
搜索更多相关主题的帖子: include 
2012-11-24 21:53
pauljames
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:千里冰封
威 望:9
帖 子:1555
专家分:10000
注 册:2011-5-8
收藏
得分:0 
有现成的库函数?

经常不在线不能及时回复短消息,如有c/单片机/运动控制/数据采集等方面的项目难题可加qq1921826084。
2012-11-24 22:06
aptx48691212
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-11-21
收藏
得分:0 
回复 2楼 pauljames
什么意思?
2012-11-24 22:41
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
if((j+1)==strlen(str2))
这是比较什么?

授人以渔,不授人以鱼。
2012-11-24 23:26
jamme007
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-2-4
收藏
得分:0 
你这个程序要 做什么呀 。。  连停顿都没有

[ 本帖最后由 jamme007 于 2012-11-24 23:37 编辑 ]
2012-11-24 23:28
aptx48691212
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-11-21
收藏
得分:0 
回复 4楼 TonyDeng
判断str2是否完整
防止asdasdasd和sdf也输出数值
2012-11-24 23:43
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
那也不是用j+1与str2的长度作相等比较呀。撇开你前面的语法错误,这个程序不可能像你写的那么简单就能解决。如果能够使用strstr()函数,就使用它,否则自己先实现了strstr()再做。

授人以渔,不授人以鱼。
2012-11-24 23:50
qujunde
Rank: 2
等 级:论坛游民
帖 子:6
专家分:11
注 册:2012-11-19
收藏
得分:10 
#include<stdio.h>
#include<string.h>
int main()
{
char str1[20],str2[20];
int n=0;
scanf("%s" "%s",str1,str2);
for(int i=0;i<strlen(str1);i++)
{
    if(str1[i]==str2[0])
    {
    for(int ii=0;ii<strlen(str2);ii++)
    {  
        if(str1[i+ii]!=str2[ii])
        {n--;ii=45;}
    }
    n++;i=i+strlen(str2)-1;

    }
}

      printf("%d",n);
      return 0;
}

[ 本帖最后由 qujunde 于 2012-11-25 00:33 编辑 ]
2012-11-25 00:18
qujunde
Rank: 2
等 级:论坛游民
帖 子:6
专家分:11
注 册:2012-11-19
收藏
得分:0 
你是要判断 STR1 里面有几个 STR2吗
2012-11-25 00:22
aptx48691212
Rank: 2
等 级:论坛游民
帖 子:20
专家分:10
注 册:2012-11-21
收藏
得分:0 
回复 8楼 qujunde
for(int ii=0;ii<strlen(str2);ii++)是什么意思?
2012-11-25 10:24
快速回复:帮忙看一下这个程序哪里不对。。。
数据加载中...
 
   



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

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