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

Удаление символа из массива - C++

Восстановить пароль Регистрация
 
dragon52
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 14
22.12.2013, 15:28     Удаление символа из массива #1
Следует удалить из массива требуемый символ, а остальные символы продублировать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <cstring>
using namespace std;
 
int main()
    
{   setlocale (LC_ALL,"russian");
char s[10];
int ML=10;
int i,j,k;
cout<<"Введите строку \n";
cin.getline (s,ML);
for (i=0;i<ML;i++)
{for (k=i+1;k<ML;k++)
{if (s[i]=='#')
    {s[i]=s[k];
ML--;}}
for (j=0;j<ML;j++)
    cout<<s[ML]<<s[ML];
system ("pause");}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2013, 15:28     Удаление символа из массива
Посмотрите здесь:

C++ Удаление символа из строки
C++ удаление символа из одномерного массива
C++ Удаление символа строки
C++ Удаление символа из строки
Удаление символа из одномерного массива! C++
Удаление символа C++
Удаление символа в строке C++
C++ удаление символа '\n' в string

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
22.12.2013, 15:36     Удаление символа из массива #2
Цитата Сообщение от dragon52 Посмотреть сообщение
for (j=0;j<ML;j++)
* * cout<<s[ML]<<s[ML];
может вместо ML j написать надо?после условии цикла.
dragon52
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 14
22.12.2013, 15:54  [ТС]     Удаление символа из массива #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <cstring>
using namespace std;
 
int main()
    
{   setlocale (LC_ALL,"russian");
char s[10];
int ML=10;
int i,j,k;
cout<<"Введите строку \n";
cin.getline (s,ML);
for (i=0;i<ML;i++)
{if (s[i]=='#')
    {s[i]=s[i+1];
ML--;}}
for (j=0;j<ML;j++)
    cout<<s[j]<<s[j];
system ("pause");}
Исправил, но теперь в ответе мусор появляется(

А если изменить
C++
1
for (j=0;j<ML;j++)
на
C++
1
for (j=0;j<strlen(s);j++)
то символ после # 4 раза выводится вместо 2 раз
Yandex
Объявления
22.12.2013, 15:54     Удаление символа из массива
Ответ Создать тему
Опции темы

Текущее время: 20:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru