weixin_49977133 2022-03-03 13:37 采纳率: 40%
浏览 318
已结题

关于#c语言#的问题:从键盘输入2个字符串,计算字符串str1中字符串str2出现的次数

从键盘输入2个字符串,计算字符串str1中字符串str2出现的次数。要求:不使用字符串比较库函数,直接使用指针进行字符比较。
如:str1为“an”,str2为“they are an apple and an orange ”,则str1在str2中出现了3次。

  • 写回答

3条回答 默认 最新

  • 关注
    
    #include <stdio.h>
    #include <string.h>
    
    int countString(char *str1,char *str2);//统计字符串出现次数
    int main()
    {
        char str1[100],str2[100],*p1=str1,*p2=str2;
        int k=0;
        scanf("%s",str1);
        scanf("%s",str2);
        k=countString(str1,str2);
        if(k==0)
            printf("NO\n");
        else    
            printf("%d\n",k);
        return 0;
    }
    int countString(char *str1,char *str2)//递归函数
    { 
    
        return (*str1=='\0'||strstr(str1,str2)==NULL)?0:1+countString(strstr(str1,str2)+strlen(str2),str2);
    
    }
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月11日
  • 已采纳回答 3月3日
  • 创建了问题 3月3日

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置