ctype e' un include, non una libreria.

La isblank e' nello standard C99 (alcuni compilatori che non aderiscono a tale standard, non la prevedono ...). Puo' essere sostituita da

#define isblank(c) ((c) == ' ' || (c) == '\t')

Nel codice della normalizza dovresti, prima di tutto, sostituire tutti i tab con degli spazi, con

codice:
for(i=0;i<strlen(s);i++)
    if(s[i]=='\t') s[i]=' ';
e prima della fopen in scrittura dovresti eseguire la fclose del file precedentemente aperto in lettura.

In piu' (ma non l'ho provato) penso che dovrebbe essere

dim=i-1;

e non

dim=i;