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

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

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

Переместить первую букву слова в конец слова(Строки) - C++

02.12.2013, 19:17. Просмотров 700. Ответов 7
Метки нет (Все метки)

Здравствуйте уважаемые форумчане. Помогите пожалуйста.
Напечатать все слова, заранее перенести первую букву слова в конец слова.
Нужно сделать программу которая по введению в нее нескольких слов изменит их(Здравствуйте уважаемые форумчане-дравствуйтез важаемыеу орумчанеф).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.12.2013, 19:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Переместить первую букву слова в конец слова(Строки) (C++):

Переместить в слове первую букву в конец слова - C++
Как можно переместить в слове первую букву в конец слова?

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

Перенести первую букву каждого слова в его конец - C++
В произвольном тексте,хранящемся в файле и содержащем не более 10 строк(в каждой строке не более 80 символов),перенести первую букву...

Строки символов. (Переместить последнюю букву в начало слова) - C++
Прошу помощи в решении задачи. Нужно написать код к данной задаче в Visual Studio (в консольной приложении). Вот и сама задача: В...

Напечатать все слова, отличные от последнего слова строки, удалив из каждого слова первую и последнюю буквы - C++
Близиться сессия,а завтра мне сдавать 2 проги. Помогите ребят,могу даже 100 скинуть,если уж так трудно помочь. 8.Задан...

Написать функцию, меняющую первую букву каждого слова в строке на номер слова. - C++
Написать функцию, меняющую первую букву каждого слова в строке на номер слова. Продемонстрировать ее использование в программе.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Waik
10 / 10 / 1
Регистрация: 23.04.2013
Сообщений: 59
03.12.2013, 01:47 #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
#include "stdafx.h" 
#include <iostream>
 
int main() {
    char str[80],tmp[1];
    int Len,k;
    printf("enter string:\n");
    gets(str);
 
    Len=strlen(str);
    k=0;                                                            //длинна слова. 0 т.к побелов еще не было и первая буква слова имеет индекс 0
    for(int i=0; i<=Len; i++){
        if ((str[i+1] == ' ')|| (str[i+1] == '\0')) tmp[0]= str[i]; // tmp хранит последнюю букву слова
        
        if((str[i]== ' ') || (str[i] == '\0')){                     //встретили пробел или конец строки
            str[i-1]=str[i-k];                                      //вместо последней буквы ставит первую
            str[i-k]= tmp[0];                                       //вместо первой буквы ставит последнюю (tmp[0])
            k=-1;                                                   //k=-1 т.к у нас был пробел а нам его за длинну слова считать не нужно
        }
        k++;
    }
    printf("\n");
    for(int i=0; i<=Len; i++)
        printf("%c",str[i]);
    system("pause");
    return 0;
 
 
}
Пожалуйста.
Alex566
240 / 152 / 18
Регистрация: 03.04.2013
Сообщений: 317
03.12.2013, 01:55 #3
Waik, введите Zero One Two Three и посмотрите как изменится последнее слово слово.
Waik
10 / 10 / 1
Регистрация: 23.04.2013
Сообщений: 59
03.12.2013, 02:01 #4
Получаю: oerZ enO owT ehreT
Был невнимателен.
Сейчас перечитал задание, первый раз прочел как "первую и последнюю буквы слова поменять местами".
Alex566
240 / 152 / 18
Регистрация: 03.04.2013
Сообщений: 317
03.12.2013, 02:14 #5
Цитата Сообщение от Waik Посмотреть сообщение
Сейчас перечитал задание, первый раз прочел как "первую и последнюю буквы слова поменять местами".
Программа то работает по заданию у меня просто в последнем слове буквы не правильно меняет местами. Ничего не имею против если у вас все работает правильно.
Waik
10 / 10 / 1
Регистрация: 23.04.2013
Сообщений: 59
03.12.2013, 02:19 #6
Цитата Сообщение от Alex566 Посмотреть сообщение
Программа то работает по заданию ....
Оказывается не по заданию она работает) нужно первую букву слова поместить вконец слова, у меня-же первая и последняя буква слова меняются местами.
Alex566
240 / 152 / 18
Регистрация: 03.04.2013
Сообщений: 317
03.12.2013, 02:42 #7
В общем что-то запутался. Вот мой вариант решения:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <string>
int main() 
{
    char text[256],tm;
    puts("Enter string:");
    gets(text);
    int n=strlen(text),k=0;
    for(int i=0;i<=n;i++)
        if(text[i]==' ' || text[i]==0)
        {
            for(int j=k;j<i-1;j++)
            {
                tm=text[j];
                text[j]=text[j+1];
                text[j+1]=tm;
            }
            k=i+1;
        }
    puts(text);
    system("pause");
    return 0; 
}
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
03.12.2013, 11:24 #8
А от мое элегантное решение:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
#include <regex>
using namespace::std;
 
int main()
{
    string s="hellow world a ad gacpada";
    cout <<"s= "<<s<<endl;
    s=regex_replace(s,regex("(\\w)([^ ]*\\w)"),string("$2$1"));
    cout <<"s= "<<s<<endl;
 
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2013, 11:24
Привет! Вот еще темы с ответами:

Написать функцию, меняющую первую букву каждого слова в строке на номер слова - C++
Написать функцию, меняющую первую букву каждого слова в строке на номер слова. Продемонстрировать ее использование в программе. ...

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

Написать программу, меняющую первую букву каждого слова на эту же букву верхнего регистра - C++
Дан массив из 10 строк по 80 символов, требуется заменить первую букву в каждом слове на эту же букву верхнего регистра(например: вводим...

Дано два предложения (Распечатать слова из первого предложения, который начинаются на первую букву последнего слова второго предложения) - C++
Дано два предложения. Распечатать: - слова из первого предложения, который начинаются на первую букву последнего слова второго...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.12.2013, 11:24
Ответ Создать тему
Опции темы

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