Salve, sto scrivendo una funzione che concatena a ogni stringa di un vettore di stringhe le sole consonanti di ogni parola ( del rispettivo indice) di un altro vettore di stringhe. Ho usato un vettore ausiliario dove copiare prima tutte le consonanti e poi ho concatenato ciascuna stringa di questo vettore al primo. Il codice è questo
codice:
void concatena(char v1[][maxl],int dim1,char v2[][maxl],int dim2,char temp[][maxl])
{
    //char temp[maxp][maxl];
    int i,k;
    k=0;
    for(i=0;i<dim2;i++)
    {
        while(v2[i][k]!='\0')
        {
            if(v2[i][k]!='a' && v2[i][k]!='e'&& v2[i][k]!='i'&& v2[i][k]!='o'&& v2[i][k]!='u')
            {
                temp[i][k]=v2[i][k];
            }
            k=k+1;
        }
        temp[i][k]='\0';
    }
    for(i=0;i<dim1;i++)
    {
        if(i<dim2)
        {
            strcat(v1[i],temp[i]);
        }
    }
}
Dove il vettore temp[][] l'ho dichiarato nel main perchè ho provato a stamparlo per vedere cosa non andava. Il risultato è questo: