ho fatto in questo modo

codice:
#include <stdio.h>
#include <stdlib.h>

/*
 *
 */

char ricerca (char *str1, char *str2);

int main() {


    char stringa1[50];
    char stringa2[10];
    char stringa3[10];

    

    

    printf("Inserisci la prima stringa : ");
    scanf("%s", stringa1);

    printf("Inserisci la seconda stringa : ");
    scanf("%s", stringa2);

    printf("Inserisci la terza stringa : ");
    scanf("%s", stringa3);

    printf("%c", ricerca(stringa1,stringa2));

   
    

	system("PAUSE");

    return 0;
}

    char ricerca (char *str1, char *str2)

    {
        int v,i;

        v = strspn (str1, str2);

       for (i = 0; i < v; i++){
           if (str1[i] == str2[i]){
               return (str1[i]);
           }
      }
    }
ma mi restituisce solo la prima occorrenza..cioè il pirmo carattere in comune..come mai?