// // main.c // T4_Ej14 // // Created by Mari Paz Guerrero Lebrero on 6/5/15. // Copyright (c) 2015 Mari Paz Guerrero Lebrero. All rights reserved. // #include #include char* InicializarCadena(); int LineasVacias(FILE *f); int main() { FILE *fp; char *nomfich; int n; printf("Introduzca el nombre del fichero de entrada: "); nomfich = InicializarCadena(); fp = fopen(nomfich, "r"); if(fp != NULL) { n = LineasVacias(fp); printf("El numero de lineas vacias es %d \n", n); fclose(fp); } else printf("Error en la apertura del fichero de entrada\n"); return 0; } char* InicializarCadena() { int i = 0; char c, *s; s = (char*)malloc(sizeof(char)); while((c = getchar()) != '\n') { s[i] = c; i++; s = (char*)realloc(s, (i + 1)*sizeof(char)); } s[i] = '\0'; return s; } int LineasVacias(FILE *f) { char c1, c2 = 'a'; int vacias = 0; while(!feof(f)) { c1 = fgetc(f); if(c1 != EOF && c2 != EOF) { c2 = fgetc(f); if((c1 == '\n' && c2 == '\n') || (c1 == '\n' && c2 == EOF)) vacias++; fseek(f, -1, SEEK_CUR); } } return vacias; }