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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Rent05
Сообщений: n/a
26.06.2012, 01:27     Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается последовательность разделителей #1
Ввести текст из файла, а также массив символов-разделителей с клавиатуры. Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается заданная пользователем последовательность разделителей. В строках, в которых не было замены, удалить последнее слово и уплотнить разделители (несколько подряд идущих привести к одному, любому из исходных). Вывести полученный текст на экран.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2012, 01:27     Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается последовательность разделителей
Посмотрите здесь:

C++ Поменять местами первую и последнюю цифры числа
C++ Поменять первую и последнюю строки матрицы местами
C++ Первую и последнюю цифры произвольно числа поменять местами
В каждом слове заданного предложения поменять местами первую букву и последнюю C++
C++ Поменять в каждом слове местами первую и последнюю буквы.
Строки. Поменять в каждом слове местами первую и последнюю буквы C++
C++ Работа со строками (поменять местами первую и последнюю буквы в слове)
Поменять местами первую и последнюю буквы слов C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
26.06.2012, 09:54     Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается последовательность разделителей #2
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
63
64
65
66
67
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
 
#include <fstream>
 
void swap(char& ch1, char& ch2);
 
using namespace std;
 
int main()
{
    const char* filename = "d:\\input.txt";
    ifstream ifs(filename,ifstream::in);
 
    static char* line = new char[256];
    memset((void*)line, 0x00, 256);
 
    char** ppsz = new char*[256];
    memset((void*)ppsz, 0x00, 4 * 256);
 
    int d = 0;
    while (ifs.peek() >= 0 && ifs.getline(line,256))
    {
        bool found = false;
        char pchars[] = " ,.";
        for (int i = 0; line[i] != '\0'; i++)
            if (strchr(pchars,line[i]) != NULL || i == strlen(line)-1)
            {
                int k = (i != strlen(line)-1) ? i-1 : i;
                while (!strchr(pchars,line[k]) && k >= 0) k--;
                if (i != strlen(line)-1 || k >= 0)
                {
                    found = true;
                    swap(line[k+1],line[i != strlen(line)-1 ? i-1 : i]);
                }
            }
 
        if (found == false)
        {
            for (int q = 0; line[q] != '\0'; q++)
                if (    line[q] == line[q+1] && !isalpha(line[q]))
                {
                    for (int m = q; line[m] != '\0'; m++)
                        line[m] = line[m+1];
                    q--;
                }
 
            for (int x = strlen(line)-1; x >= 0; x--)
                if (!isalpha(line[x])) { line[x] = '\0'; break; }
        }
 
        ppsz[d] = new char[256];
        strcpy(ppsz[d++],line);
    }
 
    for (int v = 0; ppsz[v] != NULL; v++)
        printf("%s\n",ppsz[v]);
 
    _getch();
 
    return 0;
}
 
void swap(char& ch1, char& ch2)
 { char _tch = ch1; ch1 = ch2; ch2 = _tch; }
INPUT.TXT:
apple,,fruit....orange juice,,,,crunch..cocoa lemon
apple####fruit$$$$orange###juice
Миниатюры
Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается последовательность разделителей  
zmhan
1 / 1 / 0
Регистрация: 25.02.2014
Сообщений: 52
04.05.2014, 18:56     Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается последовательность разделителей #3
а вы можете написать программу на си?
Yandex
Объявления
04.05.2014, 18:56     Поменять местами первую и последнюю буквы в каждом слове в строках, где встречается последовательность разделителей
Ответ Создать тему
Опции темы

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