Cod sursa(job #613125)

Utilizator DanutSavuSavu Daniel DanutSavu Data 16 septembrie 2011 17:28:17
Problema Text Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define MAX 1000

int getWord(char* buffer, int MAX, FILE* f)
{
	int ch, i = 0;
	while( (ch = fgetc(f)) != EOF && !isalpha(ch))
		;
	if(ch != EOF)
		ungetc(ch, f);
	while( (i < MAX) && (buffer[i++] = fgetc(f)) != EOF && isalpha(buffer[i - 1]))
		;
	
	if(!feof(f))
		ungetc(buffer[i - 1], f);

	buffer[i - 1] = '\0';

	return strlen(buffer);
}

int main()
{
	int nrTotalCuv = 0, lungimeTotalaCuv = 0, len;
	char buffer[MAX];
	FILE *f;
	f = fopen("text.in", "r");
	if(f == NULL)
	{
		printf("Nu am reusit sa deschid fisierul text.in.\n");
		return 1;
	}
	while((len = getWord(buffer, MAX, f))!= 0)
	{
		nrTotalCuv++;
		lungimeTotalaCuv += len;
	}

	fclose(f);
	f = fopen("text.out", "w");
	fprintf(f, "%d\n", lungimeTotalaCuv/nrTotalCuv);
	fclose(f);
	return 0;
}