Подскажите, а как можно реализовать тоже самое, но не на С++, а на С?
Например, если есть строка Windows 2003 Server и строка 2003. И на выводе было либо ДА (если строка 2 входит в строку 1), либо НЕТ (если строка 2 не входит в строку 1).
Я пыталась сделать вот так (здесь еще вывод с какого элемента начинается строка 2 в строке 1):
| Код | #include <stdio.h> #include <string.h>
int main() { char S1[100], S2[100]; scanf ("%256[^\n]", S1); scanf ("\n%256[^\n]", S2 ); int K, a=0; for(int i=0; S1[i]!=0 && a != 1; i++) { for(int j=0; S2[j]!=0 && a != 1; j++) { if(S1[i]==S2[j]) { a=1; K=i; } } } if (a==1) { printf("YES %d\n", K); } else printf("NO\n"); }
|
Но тут проверяется только первый символ и если он совпадает - сразу выходит из цикла, как сделать чтобы проверялась вся строка? |