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

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

Войти
Регистрация
Восстановить пароль
 
Exiss
2 / 2 / 1
Регистрация: 11.04.2013
Сообщений: 51
#1

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

11.04.2013, 22:49. Просмотров 715. Ответов 7
Метки нет (Все метки)

Здравствуйте,уважаемые форумчане!Помогите пожалуйста с написанием программ-а то завтра сдать уже надо...
Препод ставит такие требования:
а)писать на С++;
б)использовать в программе не ссылки,а указатели;
в)использовать подпрограммы.
Работаю в Dev C++

Заранее ОГРОМНЕЙШЕЕ СПАСИБО!

3.Строки
Дано строку символов.Переделать строку,вырезав каждый символ "*" и повторив каждый символ,отличный символ "*"

Добавлено через 1 час 2 минуты
Ну пожалуйста,помогите...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.04.2013, 22:49     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*"
Посмотрите здесь:
C++ Преобразовать строку, удалив каждый символ "*" и повторив каждый символ, отличный от "*"
C++ Преобразовать строку, удалив каждый символ * и повторив каждый символ, отличный от *
C++ Преобразовать строку, удалив каждый символ * и повторив каждый символ, отличный от *
Преобразовать строку, удалив каждый символ «*» и повторив каждый символ, отличный от «*» C++
C++ Преобразовать строку, удалив из нее каждый символ "."
Преобразовать строку, удалив каждый символ * и удвоив каждый символ, отличный от * C++
C++ Сколько раз среди данных символов встречается символ "+" и символ "*"
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,909
12.04.2013, 01:51     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*" #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
#include <cstring>
#include <iostream>
 
void remove_all(char* str, char ch)
{
    int j = 0;
    for(int i = 0; str[i]; ++i)
    {
        if(str[i] != ch)
            str[j++] = str[i];
    }
    str[j] = '\0';
}
 
void duplicate_all(char* str)
{
    int n = strlen(str);
    str[n * 2] = '\0';
 
    for(int i = n * 2 - 1; i > 0; i -= 2)
        str[i] = str[i - 1] = str[--n];
}
 
int main()
{
    char str[256];
    std::cout << "input string: ";
    std::cin.getline(str, 100);
    remove_all(str, '*');
    duplicate_all(str);
    std::cout << "result: " << str << '\n';
}
Exiss
2 / 2 / 1
Регистрация: 11.04.2013
Сообщений: 51
12.04.2013, 21:25  [ТС]     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*" #3
не работает...ввожу строку-и выбивает
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,909
12.04.2013, 21:35     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*" #4
Цитата Сообщение от Exiss Посмотреть сообщение
не работает...ввожу строку-и выбивает
Что выбивает?
Kastaneda
Форумчанин
Эксперт С++
4479 / 2841 / 227
Регистрация: 12.12.2009
Сообщений: 7,224
Записей в блоге: 1
Завершенные тесты: 1
12.04.2013, 22:11     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*" #5
похоже консоль захлапывается.
Exiss
2 / 2 / 1
Регистрация: 11.04.2013
Сообщений: 51
12.04.2013, 23:59  [ТС]     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*" #6
Цитата Сообщение от rangerx Посмотреть сообщение
Что выбивает?
никакого результата не выдает,а из консоля выбивает
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,909
13.04.2013, 01:39     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*" #7
Добавьте строку
C++
1
std::cin.ignore();
после вывода результата.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2013, 11:01     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*"
Еще ссылки по теме:
C++ Если слово имеет нечетную длину , то удвоить средний символ и с обоих концов добавить символ "*"
C++ В заданной строке подсчитать сколько раз встречается символ "*" и сколько раз символ "+"
C++ Сколько раз среди заданных символов встречается символ "+" и сколько раз символ "*"
C++ Подсчитать, колько раз в произвольном тексте встречается символ "*" и "+"
C++ Сформировать новую строку повторив каждый символ заданной строки дважды

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

Или воспользуйтесь поиском по форуму:
Exiss
2 / 2 / 1
Регистрация: 11.04.2013
Сообщений: 51
15.04.2013, 11:01  [ТС]     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*" #8
Спасибо,все работает
Yandex
Объявления
15.04.2013, 11:01     Преобразовать строку, вырезав каждый символ "*" и повторив каждый символ, отличный символ "*"
Ответ Создать тему
Опции темы

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