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

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

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

Написать программу, которая считывает текст с клавиатуры и выводит его на экран, меняет местами каждые соседние слова - C++

29.11.2011, 11:44. Просмотров 1020. Ответов 2
Метки нет (Все метки)

Помогите пожалуйста
Написать программу, которая считывает текст с клавиатуры и выводит его на экран, меняет местами каждые соседние слова
среда Borland Ms-Dos
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2011, 11:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написать программу, которая считывает текст с клавиатуры и выводит его на экран, меняет местами каждые соседние слова (C++):

Написать программу, которая считывает текст из файла и выводит его на экран, меняя местами каждые два соседних слова - C++
Вот исходный код: #include <fstream> #include <iostream> //#include<clocale> using namespace std; int main() { ...

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

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

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

Написать программу, которая считывает текст с клавиатуры и выводит на экран только слова состоящие из заданного количества букв - C++
Написать программу, которая считывает текст с клавиатуры и выводит на экран только слова состоящие из заданного количества букв.

Написать программу, которая считывает текст из файла и выводит его на экран - C++
Вот 5 заданий: 1)Написать программу, которая считывает из текстового файла три предложения и выводит их в обратном порядке. 2)....

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
29.11.2011, 19:46 #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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define MAXWORDS  100
#define MAXTEXT  1000
#define DELIMS  " .,*/:;(){}\"\n\t!?"
 
char *make_format(char *s, char *delims);
char *make_str(char *s, char *fmt,
    char *delims, char **words);
char *gettext(char *, int);
char **permute(char **);
 
int main()
{
    char text[MAXTEXT], *p;
    char *words[MAXWORDS], **w;
    char *format;
 
    while (printf("enter a text:\n") && gettext(text, MAXTEXT)) {
        if ((format = strdup(text)) == NULL) {
            printf("error: cannot allocate memory\n");
            return 1;
        }
        make_format(format, DELIMS);
 
        w = words;
        for (p = strtok(text, DELIMS); 
            p != NULL && w < words + MAXWORDS;
            p = strtok(NULL, DELIMS)) {
                if ((*w++ = strdup(p)) == NULL) {
                    printf("error: cannot allocate memory\n");
                    return 1;
                }
        }
        *w = NULL;
 
        printf("\ntext with the permuted words:\n%s\n",
            make_str(text, format, DELIMS, permute(words)));
 
        for (w = words; *w != NULL; w++)
            free(*w);
        free(format);
    }
    return 0;
}
 
#define swap(t, a, b) { t temp = (a); (a) = (b); (b) = temp; }
 
char **permute(char **w)
{
    int i;
 
    for (i = 0; w[i] != NULL && w[i+1] != NULL; i+= 2)
        swap(char *, w[i], w[i+1]);
    return w;
}
 
char *gettext(char *s, int lim)
{
    int c;
    char *beg = s;
 
    if (lim < 2 || (c = getchar()) == EOF)
        return NULL;
    *s++ = c;
    lim--;
    while ((c = getchar()) != EOF && --lim > 0)
        *s++ = c;
    *s = '\0';
    return beg;
}
 
char *make_format(char *s, char *delims)
{
    char *t, *beg = s;
    int shift;
 
    for ( ; *s != '\0'; s++) {
        if (strchr(delims, *s) != NULL)
            continue;
        for (shift = 0, t = s + 1; 
            strchr(delims, *t) == NULL; t++)
                shift++;
        for (t--; ; t++) {
            *(t - shift) = *t;
            if (*t == '\0')
                break;
        }
    }
    return beg;
}
 
char *make_str(char *s, char *fmt,
    char *delims, char **words)
{
    char *beg = s;
 
    for (*s = '\0'; *fmt != '\0'; fmt++)
        if (strchr(delims, *fmt) == NULL) {
            if (*words != NULL) {
                strcat(s, *words);
                s += strlen(*words++);
            } else {
                strcat(s, fmt);
                return beg;
            }
        } else {
            *s++ = *fmt;
            *s = '\0';
        }
    return beg;
}
пример работы
enter a text:
(Protect) *,..,* the/Internet!
{Fight for} the Future!.../
^Z

text with the permuted words:
(the) *,..,* Protect/Fight!
{Internet the} for Future!.../

enter a text:
^Z
Press any key to continue . . .

Цитата Сообщение от Dj0nny Посмотреть сообщение
каждые соседние слова
сделал, как понял
если не так, то достаточно только изменить тело функции permute()
Dj0nny
0 / 0 / 0
Регистрация: 29.11.2011
Сообщений: 3
29.11.2011, 22:38  [ТС] #3
Net_Wanderer, спасибо
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.11.2011, 22:38
Привет! Вот еще темы с ответами:

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

Написать программу, которая считывает английский текст из файла и выводит на экран слова текста - C++
Написать программу, которая считывает английский текст из файла и выводит на экран слова текста, начинающиеся и заканчивающиеся на гласные...

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

Написать программу, которая считывает с клавиатуры текст и выводит на экран толь¬ко предложения, состоящие из заданного количества слов. - C++
помогите написать прогу на С++ 1) Написать программу, которая считывает с клавиатуры текст и выводит на экран только предложения,...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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