Форум программистов, компьютерный форум CyberForum.ru

Рекурсивное инвертирование порядка строк в файле - C++

Восстановить пароль Регистрация
 
f1z1
1 / 1 / 0
Регистрация: 07.06.2011
Сообщений: 32
09.01.2012, 01:27     Рекурсивное инвертирование порядка строк в файле #1
Помогите рекурсивно сделать инвертирование строк в файле, уже все перепробовал, но ничего неполучилось
ps: на Си
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2012, 01:27     Рекурсивное инвертирование порядка строк в файле
Посмотрите здесь:

C++ C++ Изменение порядка байтов в файле
C++ Дана целочисленная квадратная матрица порядка n.Найти номер строк
C++ Инвертирование строк в программе.
C++ Сортировка строк в файле
C++ Число строк в файле
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
09.01.2012, 02:03     Рекурсивное инвертирование порядка строк в файле #2
Цитата Сообщение от f1z1 Посмотреть сообщение
уже все перепробовал, но ничего неполучилось
показывайте
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
09.01.2012, 03:38     Рекурсивное инвертирование порядка строк в файле #3
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
void file_strings_reverse(FILE * f){
    static char buf[BUFSIZ];
    
    if ( fgets(buf, BUFSIZ, f) ){
        char * p;
        if ( ! ( p = strdup(buf) ) ){
            perror("strdup");
            exit(1);
        }
        file_strings_reverse(f);
        if ( fputs(p, f) ){
            perror("fputs");
            exit(1);
        }
        free(p);
    }
    else {
        if ( ferror(f) ){
            perror("ferror");
            exit(1);
        }
        rewind(f);
    }
}
 
#define FILE_NAME "strings.txt"
 
int main(void){
    FILE * f;
    
    if ( ! ( f = fopen(FILE_NAME, "r+") ) ){
        perror("fopen");
        exit(1);
    }
    
    file_strings_reverse(f);
    
    if ( ferror(f) || fclose(f) ){
        perror("FILE");
        exit(1);
    }
    
    fprintf(stderr, "Done.\n");
    
    exit(0);
}
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
09.01.2012, 10:33     Рекурсивное инвертирование порядка строк в файле #4
Если правильно понял задание Из файла А в файл В переписать текст в обратном порядке
f1z1
1 / 1 / 0
Регистрация: 07.06.2011
Сообщений: 32
09.01.2012, 19:54  [ТС]     Рекурсивное инвертирование порядка строк в файле #5
есть идея кстати менять подряд соседние строки, тогда не будет накладки на строки разной длины
то есть поменяли первую со второй, потом второую с третьей, и так до последней, затем снова меняем первую со второй, вторую с третьей и так до предпоследней, ну в общем пузырьком по сути)
Yandex
Объявления
09.01.2012, 19:54     Рекурсивное инвертирование порядка строк в файле
Ответ Создать тему
Опции темы

Текущее время: 03:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru