Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Dimitrioglo
-5 / 0 / 0
Регистрация: 20.11.2015
Сообщений: 13
#1

Удалить все буквы "d", большие и маленькие, в строке S

22.11.2015, 21:53. Просмотров 991. Ответов 6
Метки нет (Все метки)

Дана строка символов S. Напишите программу, которая удалит все буквы‘d’, большие и маленькие в строке S.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2015, 21:53
Ответы с готовыми решениями:

В каждой строке заменить все маленькие буквы после пробела или точки на большие
Помогите,пожалуйста,решить задачи,совершенно не понимаю,как их можно реализовать. 1)В каждой...

Определить длину каждого слова. Удалить все буквы "а" и "о" с фамилии
3.Написать программу, вводите фамилию, имя и отчество одной строкой. Определить длину каждого...

Во введённой строке требуется поменять все буквы "а" на "i", и наоборот
писал код по аналогии на Паскале. что-то как-то не очень вышло #include <iostream> #include...

Ввести имя фамилию и отчество как одно данное типа строка. Определить длину строки и количество гласных в нем. Удалить все буквы "а" и "о" в фамилии.
Помогите пожалуйста. Очень нужно сделать программу. Ввести имя фамилию и отчество как одно данное...

В выходном файле заменить все маленькие буквы на большие
Добрый вечер всем. Ребят помоги с программой очень прошу, нужно создать программу в выходном...

6
Анатолий228
2 / 2 / 4
Регистрация: 03.03.2015
Сообщений: 51
22.11.2015, 22:04 #2
Лучший ответ Сообщение было отмечено Dimitrioglo как решение

Решение

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
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
    char s[] = "sssdssdsssdsss";  //исходная строка 
    char c = 'd'; //удаляемый символ
    cout << s << endl;//вывод строки
 
    //Удаление из строки s всех вхождений символа 'd'
    int i = 0;//индекс для исходной строки
    int j = i;//индекс для модифицированной строки
 
    //цикл модификации исходной строки
    while (s[i])//пока в строке не нулевой байт
    {
        //проверить текущий символ строки
        if(s[i] != c) //если s[i] не равен 'd'
 
        //переписать текущий символ строки по новому индексу j
        // и  увеличить индекс j единицу
            s[j++] =  s[i];
        // и увеличить индекс i на единицу
            i++;
    }
     //запись нулевого байта в конец модифицированной строки
    s[j] = '\0';
 
    //вывод результата
 
    cout<< s << endl;
 
    getch(); 
    return 0;
 
}
1
Erami
5 / 5 / 3
Регистрация: 23.10.2015
Сообщений: 35
22.11.2015, 22:04 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#define N 100
int main(){
    char S[N];
    int n;
    int i;
    /* Иницилизация массива/ввод строки пропущено */
    for(i = 0; i < N; i++){
        if(S[i] == '\0'){
            break;
        }
        if(S[i] == 'd' || S[i] == 'D'){
            S[i] = ' ';
        }
    }
    return 0;
}
0
gogaloh
15 / 20 / 0
Регистрация: 14.03.2015
Сообщений: 605
23.11.2015, 20:57 #4
Цитата Сообщение от Erami Посмотреть сообщение
if(S[i] == '\0'){
break;
Прошу прощения за глупый вопрос, это же массив а не строка, массив не заканчивается знаком '\0'.
0
Template
2 / 2 / 4
Регистрация: 23.11.2015
Сообщений: 10
23.11.2015, 21:24 #5
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
#include <iostream>
#include <stdlib.h>
#include <string>
 
#include <algorithm>
#include <iterator>
#include <numeric>
 
bool D(char c)
{
    return c=='d' || c=='D'; // эти символы будут удалены из строки
}
 
int main()
{
    std::string     s;
    
    std::cout << "Input string: ";
    std::getline(std::cin, s);
    
    std::cout << s << std::endl;
    s.erase( std::remove_if(s.begin(), s.end(), D), s.end() );
    std::cout << s << std::endl;
    
    system("pause");
    return 0;
}
0
Chertenok_n_13
214 / 120 / 99
Регистрация: 14.03.2011
Сообщений: 575
23.11.2015, 21:30 #6
gogaloh, Вы же работаете с массивом символов (а компилятор его, вроде как, даже воспринимает как целую строку) и по-любому, когда Вы нажимаете Enter, то в следующий за последним введенным элементом массива записывается конец строки. К слову, это легко заметить, при просмотре переменных при пошаговом проходе.
0
gogaloh
15 / 20 / 0
Регистрация: 14.03.2015
Сообщений: 605
23.11.2015, 22:41 #7
Chertenok_n_13, Спаси тебя Бог.
0
23.11.2015, 22:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.11.2015, 22:41

Заменить в файле все большие латинские буквы на маленькие русские
Добрый вечер. Помогите пожалуйста. Нужно заменить в файле все большие латинские буквы на маленькие...

Все буквы "е" в строке заменить на "и"
Дано речення всі букви е замінити на букву и.

Ввести символьную строку и заменить все буквы "а" на буквы "б" и наоборот, как заглавные, так и строчные.
1. Ввести символьную строку и заменить все буквы &quot;а&quot; на буквы &quot;б&quot; и наоборот, как заглавные, так и...


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

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

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