我写的,用了两个for循环,没有很好的利用变量的特点,革命尚未成功,同志还需努力
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
using namespace std;
#define maxn 1000
int main()
{
char s[maxn],t[maxn];
scanf("%s",s);
scanf("%s",t);
int slen=strlen(s);
int tlen=strlen(t);
int c=0;
int count=0;
for(int i=0; i<tlen; i++)
{
for(int j=c; j<slen; j++)
{
if(t[i]==s[j])
{
c=j;
count++;
break;
}
}
}
if(count==tlen)
{
printf("找到");
}
else
{
printf("没找到");
}
}
看了别人写的/(ㄒoㄒ)/~~
#include <stdio.h>
#include <string.h>
char a[1000], b[1000];
int main() {
while (~scanf("%s%s", a, b)) {
int star = 0, lenb = strlen(b), lena = strlen(a);
for (int i = 0; i < lenb; i ++) {
if (a[star] == b[i])
star ++;
if (star == lena) {
printf("Yes\n");
break;
}
}
if (star != lena)
printf("No\n");
}
return 0;
}