Esatto! La sintassi C prevede il punto e virgola alla fine della dichiarazione della struct.
Come appunto dici è uno dei modi! Puoi scrivere:
struct nome{
...
};
Oppure ridefinire una struct
typedef struct {
...
}Nome;
typedef struct nome{
...
}Nome;