1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| #include <stdio.h>
int main()
{
char ch1[50];
char ch2[50];
/* pour vider stdin */
int c;
printf("Donner une chaîne de caractères (max 19 caractères)\n");
scanf("%19[^\n]",ch1);
while ((c = getchar()) != '\n' && c != EOF)
/* discard */ ;
printf("Donner la sous chaîne que vous cherchez (max 19 caractères)\n");
scanf("%19[^\n]",ch2);
while ((c = getchar()) != '\n' && c != EOF)
/* discard */ ;
printf("Merci, vos saisies sont :\n%s\net\n%s\n", ch1, ch2);
int i,j,k,trouve = 0;
for(i=0; i<(strlen(ch1)-strlen(ch2)+1); i++)
{
trouve = 1;
k = i;
for(j=0; j<strlen(ch2); k++,j++)
{
if(ch1[k] != ch2[j])
{
trouve = 0; printf("\n ch2 n'est pas une sous chaine de ch1\n");
break;
}
}
if(trouve == 1)
{
printf("\n ch2 est une sous chaine de ch1 a la position %02d\n", i);
}
}
return 0;
} |
Partager