C语言学习。今天学习了字符串的相关内容,学习了一个程序:
输入一个字符串,计算字符串中子串出现的次数
一:给定字符串和子串:
字符串:“hellosdfdshellodsfdshello”
子串:“hello”
代码如下:
#include <stdio.h> #include <string.h> int main() { char * c = "hellosdfdshellodsfdshello"; char * d = "hello"; int n; int num = 0; n = strlen(d); while(strlen(c) > 0) { if(strncmp(c,d,n) == 0) { num++; c += n; } else { c++; } } printf("%d\n",num); return 0; }
二:
字符串和子串为任意输入
代码如下:
#include <stdio.h> #include <string.h> int main() { char a[100]; printf("请输入字符串\n"); scanf("%s",a); char * c = a; char b[10]; printf("请输入子串\n"); scanf("%s",b); char * d = b; int n; int num = 0; n = strlen(d); while(strlen(c) > 0) { if(strncmp(c,d,n) == 0) { num++; c += n; } else { c++; } } printf("%d\n",num); return 0; }
