Страница 1 из 1

Задача на файлы (язык С)

Добавлено: 24 ноя 2008, 14:05
Katiox-xa
Здравствуйте.
Помогите, пожалуйста, в написании программы
Скопировать содержимое текстового файла, удалив в каждой строке слово номер N+1, если в слове N есть 4.

У меня пока получилось только: Скопировать содержимое текстового файла, удалив в каждой строке слово номер N

Код: Выделить всё

#include <stdio.h>
#include <stdlib.h>

void del_n(char *pathFileInput, char *pathFileOutput, unsigned int *N)
{
	char c;
	unsigned int i=1;

	FILE *fileInput;
	FILE *fileOutput;
	fileInput =fopen(pathFileInput,  "r");
	fileOutput=fopen(pathFileOutput, "w");

	while((c=fgetc(fileInput))!=EOF)
	{

		while(c!='\n' && c!=EOF)
		{
			if (c==' ')
			{
				i++;
				fputc(' ', fileOutput);
			}
			else
			  {

			    if  (i!= *N)
				fputc(c, fileOutput);

			  }
			c=fgetc(fileInput);


		}
		i=1;
		fputc('\n', fileOutput);
	}
	fclose(fileInput);
	fclose(fileOutput);
}

void main(void)
{
	char *strInput;
	char *strOutput;
	unsigned int *number;

	strInput=(char*)calloc(20, sizeof(char));
	strOutput=(char*)calloc(20, sizeof(char));
	number=(unsigned int*)malloc(1*sizeof(unsigned int));

	printf("Input file path:  ");
	scanf("%s", strInput);
   printf("Output file path:  ");
	scanf("%s", strOutput);
   printf("Number:  ");
	scanf("%u", n);
	printf("\n");

	del_n(strInput, strOutput, number);

	free(strInput);
	free(strOutput);
	free(number);
}

Re: Задача на файлы (язык С)

Добавлено: 24 ноя 2008, 15:12
StarWorm
удалив в каждой строке слово номер N+1, если в слове N есть 4.
что значит в слове N есть 4???

Re: Задача на файлы (язык С)

Добавлено: 24 ноя 2008, 22:13
Katiox-xa
один из символов в слове под номером N 4

Re: Задача на файлы (язык С)

Добавлено: 25 ноя 2008, 13:06
StarWorm
Все равно не понял... приведи наглядный пример!!!

Re: Задача на файлы (язык С)

Добавлено: 25 ноя 2008, 14:08
Katiox-xa
Есть входной файл
qqq qqq qqq4qq qqq
qqq qqq qqqq qqqq
qqq qqqqq qqqq4qqq qqqq q


Введите номер слова
3


Выходной файл будет:
qqq qqq qqq4qq
qqq qqq qqqq qqqq
qqq qqqqq qqqq4qqq q

Re: Задача на файлы (язык С)

Добавлено: 25 ноя 2008, 14:10
Katiox-xa
Во входном файле смотрим третье слово. В нем есть 4? Да, тогда удаляем четвертое(3+1) слово. Нет, тогда ничего не делаем.

Re: Задача на файлы (язык С)

Добавлено: 25 ноя 2008, 19:12
Хыиуду
1. Раздел "Алгоритмы", тема "Разбиение строки на слова"
2. Функция pos

Re: Задача на файлы (язык С)

Добавлено: 26 ноя 2008, 00:19
StarWorm
если нужна помощь обращайся...
382 шесть шесть шесть 671 :cool: