Quello che hai scritto e' (quasi) equivalente a

codice:
int main () {
    Elezioni *pt;
    pt = (elezioni*)calloc(1,sizeof(Elezioni));  
    assert (pt!=NULL);
    Input (pt);
    return 1;
} /* main */
tranne per il fatto che in questo caso allochi dinamicamente la memoria nell'heap per la struttura e in quello che hai mostrato allochi staticamente la memoria nello stack.

Nessuna differenza per la "logica" del programma e per quello che ti ho detto circa i puntatori contenuti nella struttura. Se non allochi la memoria per tali puntatori, avrai altri errori.