ho risolto grazie..il problema ora e che facendo girare il programma mi da segmentation fault.
il programma è questo:
codice:
#include <stdio.h>
#include <string.h>

struct locazione
{
  char comune[31];
  char provincia[3];  
}
;

void appartenenza_comune(char lista[],struct locazione vett[],int n,char provincia[])
{
  int n_appartenenza, i=0, j=0, giorno, mese, anno, k;
  char nome[50], cognome[50];
  FILE* fp;

  fp = fopen(lista,"r");
  
  fscanf(fp,"%d",&n_appartenenza);

  while((nome[i] = getc(fp))!=',')
  {
    i++;
    nome[i]='\0';
    i++;
  }
  
    while((cognome[j] = getc(fp))!=';')
    {
      j++;
      cognome[j]='\0';
      i=i+j;
    }
  
      while(fscanf(fp,"%d%*s%d%*s%d%*s%s",&giorno,&mese,&anno,vett[i].comune))
      
       if (strcmp(vett[i].comune, "aviano")==0)
    strcpy(vett[i].provincia, "pn");
      
  for(k=0;k<n;k++)
  {
    if( vett[i].provincia == provincia)
    printf("%s %s (%d)\n",nome, cognome, &n_appartenenza);
  
  }
  fclose(fp);
}
;

int main()
{
  int n;
  struct locazione vett[n];
  char provincia [3],lista[40];

  printf("inserisci nome file:");
  scanf("%s",lista);
  printf("inserisci lunghezza struct locazione");
  scanf("%d",&n);
  printf("inserisci la provincia:");
  scanf("%s",provincia);
  
  appartenenza_comune (lista,vett,n,provincia);
  return 0;
}