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

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

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

Удалить из строки все вхождения заданного символа - C++

17.03.2009, 22:07. Просмотров 3896. Ответов 3
Метки нет (Все метки)

12. Преобразовать заданную строку следующим образом:
удалить из строки все вхождения заданного символа;
Соль в том что это нужно сделать без использования ф-ий библиотеки string.h и разобраться со следующим вопросом: изначально пользователь вводит способ представления строки и способ её обработки, каждый может быть 2-ух видов: 1 - длина, 2 - маркер конца. Допустим нам нужно обработать строку по длине то просто задаём длину строки и удаляем заданный символ(длинна-длинна) ,если же файл задан с маркером а нужно обработать по длине то задаётся маркер и соответственно символ который нужно удалить (маркер якобы пропускается(удаляется соответственно) и он просто пропускается. Соответственно у нас имеются четыре возможных комбинации: длина-длина, длина-маркер, маркер-маркер, маркер-длина. Всё это дело необходимо оформить в виде структуры.
Знаю что задание сообвственно ни о чём.я его сдаю 3 неделю
Спс за помощь заранее.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.03.2009, 22:07     Удалить из строки все вхождения заданного символа
Посмотрите здесь:

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

Заменить все первые левые вхождения символа “a” на 00, а все правые вхождения символа “a” на 11 - C++
Заменить все первые левые вхождения символа “a” на 00, а все правые вхождения символа “a” на 11, остальные без изменений

Заменить в строке все множественные вхождения заданного символа одним - C++
Функция заменяет в строке все множественные вхождения заданного символа одним для использование нелбходимо использовать Указатели....

Дана строка S1. Удалить в ней все вхождения символа '*' - C++
Здравствуйте. Помогите сделать. Дана строка S1. Удалить в ней символы *(звездочка).

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

Рразделение строки на две части до первого вхождения заданного символа и после него - C++
Функция - Parse(s,t). Назначение - разделение строки s на две части: до первого вхождения символа t и после него. как можно сделать ее...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
18.03.2009, 02:42     Удалить из строки все вхождения заданного символа #2
12. Преобразовать заданную строку следующим образом:
удалить из строки все вхождения заданного символа;
C
1
2
3
4
5
6
7
8
9
10
/* DeleteCharLine:  удаляет из строки l символ c */
int DeleteCharLine(char *l, int c)
{
    char *p, *q;
 
    for (p = q = l; *p != '\0'; *p++ = *q++)
        while (*q == c)
            q++;
    return *l == '\0' ?  0 : 1;
}
маркер это что ?
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
18.03.2009, 03:38     Удалить из строки все вхождения заданного символа #3
Удалит все нужные символы
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
#include <iostream>
using namespace std;
 
//delete all char "ch"
void remove(char *arr, char ch)
{
    const char *old = arr;
    while(*old)
    {
        if(*old != ch){
            *arr = *old;
            ++arr;
        }
        ++old;
    }
    *arr = '\0';//0 or 0x0;
}
int main()
{
    char *str = "ssstssrisstngsss";
    remove(str,'s');
    cout << str<< endl;
    return 0;
}
В принципе тоже самое что и у accept.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2009, 09:36     Удалить из строки все вхождения заданного символа
Еще ссылки по теме:

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

Удалить все вхождения заданного слова из текста - C++
Доброго времени суток. Имеется три программы, времени очень мало, нужно разобраться что да как работает, очень прошу просто написать что...

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

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

Удалить из строки все повторяющиеся буквы, оставив только их первые вхождения - C++
2.Даны строки, содержащие латинские буквы. Удалить из строки все повторяю* щиеся буквы, оставив только их первые вхождения.

Обработка строки: удалить из числа все повторяющиеся цифры кроме первого вхождения - C++
С клавиатуры вводим произвольное число. От программы требуется удалить из этого числа все повторяющиеся цифры кроме первого вхождения. И...


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

Или воспользуйтесь поиском по форуму:
Insanehead
1 / 1 / 0
Регистрация: 17.03.2009
Сообщений: 17
18.03.2009, 09:36  [ТС]     Удалить из строки все вхождения заданного символа #4
Маркер-признак конца файла..как задаётся маркер и при считываине доходит до него то всё что идёт после маркера удаляется....остаётся только то что до маркера....надо всё считывать с файла и так же использовать структуры
Yandex
Объявления
18.03.2009, 09:36     Удалить из строки все вхождения заданного символа
Ответ Создать тему
Опции темы

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