数据结构——算法之(028)( 寻找当中的一个子字符串个数)

【申明:本文仅限于自我归纳总结和相互交流,有纰漏还望各位指出。 联系邮箱:Mr_chenping@163.com】

题目:

已知一个字符串,比方asderwsde,寻找当中的一个子字符串比方sde 的个数,假设没有返回0,有的话返回子字符串的个数
题目分析:

1、顺序遍历字符串,然后用strncmp比較就可以

算法实现:

#include <stdio.h>
#include <string.h>

int sub_str_count(const char *str, const char *sub_str)
{
	int str_len = strlen(str);
	int sub_str_len = strlen(sub_str);

	int count = 0;
	int times = str_len - sub_str_len + 1;
	while(times--)
	{
		if(!strncmp(str, sub_str, sub_str_len))
			count++;
		str++;
	}
	return count;
}

int main(int argc, char *argv[])
{
	printf("%s----%s--->%d
", argv[1], argv[2], sub_str_count(argv[1], argv[2]));
	return 0;
}


原文地址:https://www.cnblogs.com/bhlsheji/p/5073995.html