Originariamente inviato da asteroid
codice:
struct punto{
       double x;
       double y;
};
typedef struct punto vett[4];
int main()
{
  int n,i;
  vett vettore;
...
typedef struct  vettore p1,p2;
}
vettore non è un tipo, è una variabile.

Intanto non capisco perchè fai tutti quei typedef.
Potresti definire un solo typedef che è Punto e fare i vettori ecc..., quindi:

Originariamente inviato da asteroid
codice:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
typedef struct punto_{
       double x;
       double y;
} Punto;
int main()
{
  int n,i;
  Punto vettore[4];
  printf("inserisci il size dell vettore:");
  scanf("%d",&n);
  printf("inserisci le coordinate del vettore:");
  for(i=0;i<n;i++)
  scanf("%e",&vettore[i]);
  double dist;
  Punto p1,p2;
  dist=sqrt(pow((p1.x-p2.x),2)+pow((p1.y-p2.y),2));
  system("PAUSE");	
  return 0;
}
Adesso sembra un po' più leggibile (ci sarebbe ancora qualcosa da dire sull'ordine del codice )