字符串比对 (strstr)

该博客探讨了如何利用strstr()函数在C语言中查找一个字符串在另一个字符串中出现的次数。输入包括两个字符串,输出是子串在主串中的出现频率。通过示例展示了简单的暴力求解方法,并介绍了strstr()函数的作用和返回值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目标题:
字符串比对

题目描述:

有字符串a(长度<=100),b(长度<=10),计算b串在a串中出现的次数。


输入描述:

输入为两个字符串,第一个字符串长度小于100,第二个字符串长度小于10;


输出描述:

输出为一个正整数;


样式输入:

abcdefghijklmnababcdeabc

abc


样式输出:

3


这题目挺水的,直接暴力很简单,我写出来的目的是想提一下strstr(),strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。找到所搜索的字符串,则该函数返回第一次匹配的字符串的地址;如果未找到所搜索的字符串,则返回NULL。


#include<cstdio>
#include<cstring>
int main()
{
    char a[100],b[10];
    int i,l1,l2,j,k,c,d,cnt=0;
    scanf("%s%s",a,b);
    int l=strlen(b);
    char *q=strstr(a,b);
    while(q!=NULL)
    {
        cnt++;
        q=strstr(q+1,b);
    }
    printf("%d",cnt);
    return 0 ;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值