Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
27
Добавлен:
17.04.2013
Размер:
1.09 Кб
Скачать
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>

const m=15;

char *FindWordFile(FILE *in)
{
	char c=0, n=0, i, f=0, *word;

	word=new char[m];
	for (i=0;i<=m-1;i++)
		word[i]=0;

	c=fgetc(in);
	while ((c==' ' || c==',' || c=='.' || c==10 || c==13) && !feof(in))
		c=fgetc(in);

	while (c!=' ' && c!=',' && c!='.' && c!=10 && c!=13 && !feof(in))
	{
		word[n++]=c;
		c=fgetc(in);
		f=1;
	}

	if (c==-1 && !f)
		return NULL;
	return word;
}

void main()
{
	clrscr();

	char inname[]="d:\\in.txt", outname[]="d:\\out.txt", *word;
	int n=0, *num, i;
	FILE *in, *out;

	in=fopen(inname,"r");
	out=fopen(outname,"w");

	num=new int[m];
	for (i=0;i<=m-1;i++)
		num[i]=0;

	while (!feof(in))
	{
		word=FindWordFile(in);
		if (word==NULL)
			continue;
		num[strlen(word)-1]++;
		n++;
	}

	fprintf(out,"Total number of words: %d\n",n);
	if (num[0]!=0)
		fprintf(out,"1 letter: %d\n",num[0]);
	for (i=1;i<=m-1;i++)
		if (num[i]!=0)
			fprintf(out,"%d letters: %d\n",i+1,num[i]);

	fclose(in);
	fclose(out);
}
Соседние файлы в папке Lab4