La questione è ... il vettore numerico serve? O serve soltanto poter generare una stringa di 0 e 1 di una determinata lunghezza ?

In quest'ultimo caso, la maggior parte del codice non serve ... intendo

codice:
#define T 5

int main()
{
    int i;
    char s_dest[T] = {0};

    for(i=0; i<T-1; i++)
        s_dest[i] = '0' + (rand()%2);

    printf("Stringa = %s \n", s_dest);

    return 0;
}