程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 數據結構——算法之(028)( 尋找其中的一個子字符串個數)

數據結構——算法之(028)( 尋找其中的一個子字符串個數)

日期:2017/1/21 14:19:40      編輯:C++入門知識

【申明:本文僅限於自我歸納總結和相互交流,有纰漏還望各位指出。 聯系郵箱:Mr_chenping@163.com】

題目:

已知一個字符串,比如asderwsde,尋找其中的一個子字符串比如sde 的個數,如果沒有返回0,有的話返回子字符串的個數
題目分析:

1、順序遍歷字符串,然後用strncmp比較即可

算法實現:

#include 
#include 

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\n", argv[1], argv[2], sub_str_count(argv[1], argv[2]));
	return 0;
}


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved