c字符串末尾是有结束符'\0'的,所以字符串实际长度应该是13和4,构建子串也要加上结束符
(ps修改之后可以正确输出,但是这个程序只能用于a长度为12,b为3的例子,没有通用性)
//main函数改a[13],b[4]
int subtimes(char p[13], char q[4]){
int i,j,m,n;
char r[4];
n=0;
for(i=0;i<9;i++){
for(j=0;j<3;j++)r[j]=p[j+i];
r[3]='\0';
m=strcmp(r,q);
if(m==0)n++;
}
return n;
}