Ciao ... Se proprio non vuoi usare la strcpy, puoi usare dei puntatori a char (o meglio ancora dei puntatori a const char) al posto degli array nella dichiarazione di struct:
codice:
struct puntino
{
int q;
float j;
char k;
const char* array_caratteri;
const char* array_Karatteri;
int aray_interi[5];
};

struct puntino var_puntino = { 1, 0.5f, 'c', "stringa1", "stringa2", {0,1,2,3,4} };
struct puntino* ppuntino = &var_puntino;
ppuntino->array_caratteri = "nuova stringa1";
ppuntino->array_Karatteri = "nuova stringa2";
Ovviamente, su questi campi, potrai solo effettuare degli assegnamenti con delle stringhe letterali e non potrai modificare i vari caratteri . . .