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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
SmiI
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 13
#1

Работа с файлами (Скопировать второе слово каждой строки в начало следующей строки) - C++

27.02.2013, 19:16. Просмотров 321. Ответов 0
Метки нет (Все метки)

Скопировать второе слово каждой строки в начало следующей строки.
Примечания:
1. Имя файла, который подлежит обработке, должно быть параметром программы.
2. Файл должен иметь не менее 10-15 строк текста.
3. Допускается ограничить максимальную длину строки в тексте 80 символами.
4. Допускается (если в индивидуальном задании не оговорено иначе) считать, что слова разделяются пробелами, а знаки препинания рассматривать как буквы.
5. Программу следует разрабатывать, исходя из предположения, что весь текст из файла не может быть размещен в оперативной памяти.
6. Допускается создавать при выполнении программы временные файлы, которые, однако, не должны сохраняться после окончания программы.
С ошибкой код и не доработан помогите пожалуйста.
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
51
52
53
54
55
56
57
58
59
60
61
62
#include "stdafx.h"
#include <stdlib.h> 
#include <stdio.h>
#include <clocale> //библиотека для использования русских символов
 
char* fun(char *a){
    int i,j,k;
    char *b;
   
    for(k=0;a[k]==' ';k++);
    for(i=k;a[i]!='\0' && a[i]!=' ';i++);
    for(k=i;a[k]==' ';k++);
    for(i=k;a[i]!='\0' && a[i]!=' ';i++);
    
            
    b=(char*)calloc(i+1-k, sizeof(char)); // динамическое выделение памяти для массива
    
    for(j=0; j<i-k;j++){
        b[j]=a[j+k];
 
    }
    b[j]='\0';
    return b;
    }
 
 
 
int main(){
    FILE *f;
    FILE *of;
    char *z;
    setlocale(LC_CTYPE,"");
 
 
 
/*Открытие файла с проверкой об этом:*/
if ((f=fopen("C:\Aleksandra\1.txt","r"))==NULL) {
printf("Невозможно открыть файл. \n");
system("pause"); 
exit(0);
 
}
 
/*Создание доп-ного файла с проверкой:*/
if ((of=fopen("TMP","w"))==NULL) { 
printf("Невозможно создать файл.\n");
system("pause"); 
exit(0);}
 
z=fun(a);
    printf("%s",z);
    free(z);  
    printf("\n");
    system("pause");
    return 0;
 
fclose(f); // для открытого файла
fclose(of); // для созданного файла
 
//Удаление созданного файла:
unlink("TMP");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2013, 19:16     Работа с файлами (Скопировать второе слово каждой строки в начало следующей строки)
Посмотрите здесь:

Скопировать второе слово каждой строки в начало следующей строки - C++
Привет, прошу помощи! Заранее спасибо! Индивидуальное задание: Скопировать второе слово каждой строки в начало следующей строки ...

Скопировать второе слово из каждой строки и вставить их в новый текстовый файл - C++
Добрый вечер, помогите, пожалуйста, в реализации простенькой программы: На входе .txt файл, в котором некое множество строк, состоящих...

Второе слово второй строки нужно скопировать в первую строку - C++
дано 2 строки, каждые имеют 5 слов с пробелами, нужно обычным способом составить код чтобы 2-ое слово 2-ой строки нужно скопировать в 1-ую...

Строки в файлах (вывести из каждой строки последнее слово) - C++
выводит из каждой строки последнее слово (строк может быть много) ... вот что я сделал, но у меня выводит только последнее слово в...

Как сделать, чтобы при вводе в консоли <Enter> не переводил курсор на начало следующей строки? - C++
Есть некий ввод символов, организованный через cin.get(char &amp;), или через cin.get(char &amp;, int), или через cin.getline(char &amp;, int)....

Вывести на экран второе слово введённой пользователем строки - C++
Вводится строка произвольного текста. Вывести на экран второе слово (слова разделены пробелами).

Приписать второе слово второй строки к первой, развернуть первую строку - C++
Заданы 2 строки, состоящие из слов, разделенных пробелами. Приписать второе слово второй строки к первой. Поменять порядок следования...

Вектор строк, вставить в начало каждой строки число - C++
В общем, имеется вектор строк, надо вставить в начало каждой строки число, в частности номер этой строки (1, 2, 3 и т.д.), пробовал вот...

Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки - C++
Сгенерировать две произвольные строки и определить, является ли какое-либо слово первой строки частью второй строки. 1. Я дуб дубом,даже...

Скопировать из файла F1 в файл F2 все строки, кроме той, которая содержит самое короткое слово - C++
Скопировать из файла F1 в файл F2 все строки, кроме той строки, которая содержит самое короткое слово. Напечатать номер этой строки.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru