原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=2087
学到了一个新的库函数strstr(str1,str2);
功能:函数返回一个指针,它指向字符串str2 首次出现于字符串str1中的位置,如果没有找到,返回NULL。
找到了就将其都赋值为1。
题目要求输入#就退出程序,我的代码必须是输入#后再输入一个其他的数、字母或者符号才能退出。
交了一次没想到就过了。
#include<stdio.h>
#include<string.h>
int main()
{
char str1[1001],str2[1001];
char *p;
while(scanf("%s %s",str1,str2)!=EOF)
{
if(str1[0]=='#') break;
int k=0,i,len=strlen(str2);
while(p=strstr(str1,str2))
{
for(i=0;i<len;i++) p[i]=1;
k++;
}
printf("%d\n",k);
}
return 0;
}
欢迎纠错和补充。