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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.62
Sinday
0 / 0 / 0
Регистрация: 25.10.2010
Сообщений: 7
#1

Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение - C++

25.10.2010, 19:14. Просмотров 3373. Ответов 8
Метки нет (Все метки)

помогите пожалуйста написать программу:
"Все буквы каждого слова в предложении записать в обратном порядке и
распечатать получившееся предложение."
Реализуйте действия задания по вводу, преобразо-
ванию и распечатке результата в виде собственных функций. Использование
глобальных переменных запрещено. Все исходные данные функция должна по-
лучать в виде параметров. Каждая функция должна выполнять строго опреде-
ленное действие.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2010, 19:14     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение
Посмотрите здесь:
Записать все буквы данного слова в обратном порядке C++
C++ Записать в предложении символы длинного слова (всех длинных, если их несколько) в обратном порядке
C++ Все слова во введенном предложении переставить в обратном порядке, не меняя порядок букв в словах
C++ Используя стек, распечатать слова из текстового файла в обратном порядке
Записать в файл слова отличные от последнего предварительно удаляя первые буквы из каждого слова C++
записать слова ограниченой длины в массив и выписать в обратном порядке. C++
C++ Вывести все слова из файла в алфавитном порядке, указать частоту каждого слова
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
TheMachinist
242 / 174 / 15
Регистрация: 14.06.2010
Сообщений: 422
25.10.2010, 19:34     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #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
#include <conio.h>
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
 
 void main() 
{ 
    cout << " Enter string\n";
    char str[256];
    gets(str);
    int len;
    char * pch = strtok(str," ");
    
    while(pch != NULL)
    {
        len = strlen(pch);
        std::reverse(pch, pch+len);
        cout << pch << " ";
pch = strtok(NULL," ");
    }
                getch();
 }
Sinday
0 / 0 / 0
Регистрация: 25.10.2010
Сообщений: 7
25.10.2010, 22:29  [ТС]     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #3
||=== 5, Debug ===|
\5\main.cpp|8|error: `main' must return `int'|
\5\main.cpp|8|error: return type for `main' changed to `int'|
||=== Build finished: 2 errors, 0 warnings ===|

выдает такое :/ Cи изучал года 3 назад так что никак не сооброжу что просит
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
25.10.2010, 22:31     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #4
Sinday, какой у вас компилятор?
Sinday
0 / 0 / 0
Регистрация: 25.10.2010
Сообщений: 7
25.10.2010, 22:34  [ТС]     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #5
и pch это я так понимаю переменная да?

Добавлено через 47 секунд
у меня CodeBlocks, там вроде GNU Compile
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
25.10.2010, 22:36     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #6
Попробуйте вместо

C++
1
void main()
поставить

C++
1
int main
и после

C++
1
getch();
добавить

C++
1
return 0;
Sinday
0 / 0 / 0
Регистрация: 25.10.2010
Сообщений: 7
25.10.2010, 22:39  [ТС]     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #7
спасибо огромное, работает)))
Sinday
0 / 0 / 0
Регистрация: 25.10.2010
Сообщений: 7
08.11.2010, 20:13  [ТС]     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #8
программа переставляет слова в строке наоборот, как ее дописать чтобы она ни слова а буквы переставляла

#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define N 20
// ПРЕДВАРИТЕЛЬНОЕ ОБЪЯВЛЕНИЕ ФУНКЦИЙ
// Заголовок программы
void Title();
// Ввод предложения
void InpPredl (char predl[]);
// Выделение из предложения
void Select(const char *predl, char m[][N],char *sel, int *n);
// Сборка предложения
char *Constructor(char slova[][N], char razd[][N], int sl, int rz);
// Вывод результата
void OutPredl(char *s, char *res);
// ОСНОВНАЯ ФУНКЦИЯ
void main()
{
// ОБЪЯВЛЕНИЕ ПЕРЕМЕННЫХ
char predl[80]; // Введенное предложение
char *res; // Результирующее предложение
char slova[N][N]; // Массив слов в предложении
char razd [N][N]; // Массив разделителей в предложении
int i,sl=-1, rz=-1; // Счетчики слов и разделителей
char *b ="qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";// Буквы заглавные
char *r="`!;:,.?-_ "; // Разделительные знаки
// Заголовок программы
Title ();
// Ввод предложения
InpPredl (predl);
// Выделение из предложения слов
Select (predl, slova, r, &sl);
for (i=0;i<=sl;i++) puts(slova[i]);
// Выделение из предложения разделителей
Select (predl, razd, b, &rz);
for (i=0;i<=rz;i++) puts(razd[i]);
// Сборка предложения
res = Constructor(slova, razd, sl, rz);
// Вывод результата
OutPredl (predl, res);
free (res);
}
// ОПИСАНИЕ ИСПЛЬЗУЕМЫХ ФУНКЦИЙ
// Заголовок программы
void Title()
{
puts (" Lab zadanie N 8");
puts (" vo vvedennom pred raspolozhite slova");
puts (" v obratnom poriadke.");
}
// Ввод предложения
void InpPredl(char *s)
{
puts(" vvedite predlozhenie \n");
strcpy (s," verite li vi chto zadacha reshena?");
gets (s);
}
// Вывод результата
void OutPredl (char *s1, char *s2)
{
puts ("Ishodnoe predlozhenie");
puts (s1);
puts (" Rezultat");
puts (s2);
getch ();
}
// Выделение из предложения
void Select(const char *predl, char m[][N], char *sel, int *n)
{
char *p, *s;
s=strdup (predl); // Сделать копию исходного предложения
// так как передается константа, strtok требует
// внесения изменений при своей работе
p = strtok (s, sel);
while (p)
{
(*n)++;
strcpy (m[*n],p);
p = strtok (NULL, sel);
}
free (s);
}
// Сборка предложения
char *Constructor(char slova[][N], char razd[][N], int sl, int rz)
{
int i, j;
char res[80];
char *s;
*res=0; // Начальное значение результата
i = sl;
j=-1;
while ((i>=0)||(j<=rz))
{
if ((i>=0)) strcat (res, slova[i]); // Добавление слова
i--;
j++;
if ((j<=rz)) strcat (res, razd[j]); // Добавление знаков
}
s = strdup (res);
return s;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2010, 22:06     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение
Еще ссылки по теме:
C++ Дана строка символов до точки. Записать слова этой строки в обратном порядке
C++ Дано предложение. Напечатать все слова в порядке возрастания их длин
СЛОВА (не все предложение) отобразить зеркально и записать строкой во второй файл C++
Распечатать в порядке,обратно алфавитному,все буквы,которые входят в текст не менее трех раз C++
C++ В предложении найти и вывести на экран все слова, содержащие ровно две буквы “d”

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

Или воспользуйтесь поиском по форуму:
$$RaMpAgE
1 / 1 / 0
Регистрация: 04.10.2010
Сообщений: 17
21.11.2010, 22:06     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>     // слова в обратном порядке
#include <string.h>
void main()
{
char text[80], text1[80];
char *p;
int i;
cin.getline(text,80);
strrev(text);
char *pr= " .,";
text1[0]='\0';
p= strtok(text,pr);
while (p!=NULL)
{
strrev(p);
strcat(text1,p);
strcat(text1," ");
p= strtok(NULL,pr);
}
cout<<"result = "<< text1<<endl;
cin.get();
}
Добавлено через 2 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream.h>     // переставляет все буквы в каждом слове
include <string.h>
void main()
{
char text[80], text1[80];
char *p;
int i;
cin.getline(text,80);
 
char *pr= " .,";
text1[0]='\0';
p= strtok(text,pr);
while (p!=NULL)
{
strrev(p);
strcat(text1,p);
strcat(text1," ");
p= strtok(NULL,pr);
}
cout<<"result = "<< text1<<endl;
cin.get();
}
Yandex
Объявления
21.11.2010, 22:06     Все буквы каждого слова в предложении записать в обратном порядке и распечатать получившееся предложение
Ответ Создать тему
Опции темы

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