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

Работа с файлами,цепочками - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Алфавитный порядок - строки http://www.cyberforum.ru/cpp-beginners/thread31110.html
Помогите пожалуйста решить задачу: Описать функцию Sort(A), которая принимает в виде параметра строку A, состоящую из трёх слов, в каждом из которых от 2-ух до 6-ти латинских букв, и за каждым из которых следует пробел,. Функция Sort(A) выводит на печать эти слова в алфавитном порядке. Никогда задачи со строками не решал, даже не знаю как подойти.
C++ Задания по вычислениям в двумерном массиве Прошу помочь написать 2 программы на языке Си: 1) Написать программу, заполняющую двумерный массив случайными значениями (31 на 8, диапазон случайных чисел: 13.4..21.2) и найти знакопеременную сумму всех диагоналей (левониз-правоверх) 2) Написать программу, заполняющую двумерный массив случайными значениями (31 на 8, диапазон случайных чисел: 13.4..21.2) и выполнить нормирование по столбцам... http://www.cyberforum.ru/cpp-beginners/thread31103.html
Удаление записи в Struct C++
Всем Салют!!!Господа умы,плиз помогите;).Как в С++ удалить запись из структуры.
C++ Количество вхождений всех символов в строку
Видел похожую тему, но там задача была проще, так как надо было найти конкретный символ. В моем случае строка вводится пользователем. Например, вводим language и получаем l - 1 a - 2 n - 1 g - 2 u - 1 e - 1 Программа на С.
C++ Динамические масивы http://www.cyberforum.ru/cpp-beginners/thread31078.html
Помогите пожалуста !! Сформировать одномерный динамический массив целых чисел. Все положительные элементы массива перенести в начало массива, а отрицательные - в конец, изменив порядок их следования, используя временный динамический массив.
C++ Классы Вообще не знаю что это. Завтрв зачёт. Помогите плз. Задача переведена с латышского языка дословно, так что может быть немного непонятно. Помогите чем можете. Хотя бы что такое класс и для чего он нужен. Будет задание в котором надо сделать динамический список с классами или динамический список со структурами. Виды динамических списков которые могут попасться: Стэк, Ряд, циркулярный список,... подробнее

Показать сообщение отдельно
kazak
3032 / 2353 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
23.04.2009, 12:32     Работа с файлами,цепочками
Если просто переписать из одного файла в другой с нумерацией строк, то приблизительно так:
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
// File.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
using namespace std;
 
bool Format(const char *, const char *);
int _tmain(int argc, _TCHAR* argv[])
{
    char fileSource[100];
    char fileDest[100];
    
    cout << "Input the name/adress of source file: ";
    cin.getline(fileSource, 99);
    cout << "Input the name/adress of result file: ";
    cin.getline(fileDest, 99);
    
    if (Format(fileSource, fileDest))
        cout << "File " << fileDest << " create succefully." << endl;
    else
        cout << "Formatting failure!" << endl;
 
    system("pause");
        
    return 0;
}
 
bool Format(const char *from, const char *to)
{
    int count = 1;
    char tmp[256];
    ifstream fin;
    ofstream fout;
    
    fin.open(from, ios::in);
    fout.open(to, ios::out);
    if (!fin.is_open() || !fout.is_open())
        return false;
 
    while (!fin.eof())
    {
        fin.getline(tmp, 256);
        fout << count << ") " << tmp << endl;
        count++;
    }
 
    fin.close();
    fout.close();
    return true;
}
Чтобы весь текст записать в одну строчку без пробелов, то так:
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
bool Format(const char *from, const char *to)
{
    char tmp[256];
    char *buf;
    ifstream fin;
    ofstream fout;
    
    fin.open(from, ios::in);
    fout.open(to, ios::out);
    if (!fin.is_open() || !fout.is_open())
        return false;
 
    while (!fin.eof())
    {
        fin.getline(tmp, 256);
        buf = strtok(tmp, " ");
        while(buf != NULL)
        {
           fout << buf;
           buf = strtok(NULL, " ");
        }
    }
 
    fin.close();
    fout.close();
    return true;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru