计算字符串中子串出现的次数 输入 输入以空格相隔的两个字符串(字符数不大于20个),敲回车 输出 统计第一个字符串中 第二个字符串 出现的次数 样例输入 Goodoo o 样例输出 4

计算字符串中子串出现的次数

输入
输入以空格相隔的两个字符串(字符数不大于20个),敲回车

输出
统计第一个字符串中 第二个字符串 出现的次数

样例输入
Goodoo o
样例输出
4

#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>
// // 拷贝到平台的时候把my_fuction_lib.h注释掉.
//#include "my_fuction_lib.h"
//在此下方插入自定义函数对的声明:
//主函数main
int main()
{
char s1[100];
char s2[100];//根据需要分配更大的维数
char buf[100];
//while(scanf("%s",str) != EOF , str == " xxx")判断读到了什么;while(gets(str));
while( scanf("%s %s", s1,s2) != EOF)
{
int cnt = 0;
int len = strlen(s1);
int len_2 = strlen(s2);
int j = 0;
/* 挨个字符扫描.(若匹配s2则跳跃len_2 个字符(避开重叠地情况)) */
for(int i = 0;i < len;i++)
{
/* 单个字符地去匹配. */
for( j = 0;j < len_2;j++)
{
if(s1[i+j] != s2[j])
{
break;
}
}
/* 匹配成功,则跳过len_2个字符, */
if(j >= len_2)
{
cnt++;
i += len_2 -1;/* 由for的i++补上. */
}
}
printf("%d\n",cnt);
}
return 0;
}
posted @   xuchaoxin1375  阅读(13)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示