Файлы

08.12.2010
13
0
#1
Дан текстовый файл f целых чисел. Получить из файла f файл g, убрав при этом повторные вхождения чисел.

Си

Код:


C++:
#include<conio.h>
#include<stdio.h>
#include<string.h>
int main(void)
{
char s[128]; //Объявление строки
FILE*f;
f=fopen(f,"wt"); //создание файла
puts ("Введите данные в файл. Конец ввода #\n");
gets (s);
while(strcmp(s,"#")>0)
{
fputs(f,s); //запись строки в фаил
gets(s);
fputs(f," ");
}
fclose(f); //закрытие файла
FILE*g;
g=fopen(g,"wt"); //создание нового файла
fclose(g);  //закрытие файла

f=fopen(f,"rt"); //открытие файла для чтения
 
R

Rififi

#2
dimon131

на Си влом, слишком много гемора, вот на C++

C++:
#include <iostream>
#include <fstream>
#include <iterator>
#include <algorithm>
#include <vector>

int main()
{
std::ifstream ifs("in.txt");

typedef std::vector<int> V;
V v;

typedef std::istream_iterator<int> I;
std::copy(I(ifs), I(), std::back_inserter(v));

std::sort(v.begin(), v.end());
v.erase(std::unique(v.begin(), v.end()), v.end());

std::ofstream ofs("out.txt");

typedef std::ostream_iterator<int> O;
std::copy(v.begin(), v.end(), O(ofs, " "));

return 0;
}
содержимое файла in.txt:

<!--shcode--><pre><code class='txt'>1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8[/CODE]

содержимое файла out.txt:

<!--shcode--><pre><code class='txt'>1 2 3 4 5 6 7 8[/CODE]

всё ещё нужно на Си? мдэ... непруха... :)