Salve a tutti,ho questo problema

In un file di testo vado a scrivere un dato + la data e ora in cui questo dato viene memorizzato:

codice:
FILE *fp;
char filename[] = "dati.txt";
fp = fopen(filename, "a+");
fprintf(fp, "%s - %s", dato, ctime(t));
fclose(fp);
In questo modo però la data mi viene restituita come stringa in questo formato:

Fri Aug 19 15:32:38 2005

mentre a me servirebbe scriverla in quest'altro formato:

19/08/2005 15:32:38.

Come potrei fare?

Thx.

RaouL.