Código:
#include <stdio.h> #include <conio.h> #include <string.h> #include <stdlib.h> int es_separador(char ch){ if (ch==' '||ch=='\n' || ch=='\t') return 1; return 0; } main(){ FILE *fp; //de claracion de un apuntador a archibvo sirver para abrir y crear ficheros en disco int ncar=0, npal=0, nlineas=0; int en_palabra = 0; char ch; printf("\n ANALIZANDO ARCHIVO ArchTexto.CPP \n\n"); if(!(fp = fopen("ArchTexto.cpp","r"))) //este modo permite leer el archivo si no lo encuentra manda un error printf("\n Error al abrir el archivo ArchTexto.cpp\n"); else while((ch=getc(fp))!=EOF ){ ncar++; putch(ch); //escribe el caracter en pantalla if (ch == '\n') nlineas++; if (es_separador(ch)){ //llama a la funcion if (en_palabra){ en_palabra = 0; npal++; } } else if (!en_palabra) en_palabra = 1; } getch(); printf("\n\n El resultado estadistico del archivo ArchTexto.cpp es:\n"); printf("Numero de caracteres: %d\n",ncar); printf("Numero de palabras: %d\n",npal); printf("Numero de lineas: %d\n",nlineas); fclose(fp); // se cierra el archivo getch(); }