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

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

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

Удаление к-го элемента строки - C++

21.04.2012, 12:29. Просмотров 359. Ответов 7
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream.h>
#include <string.h>
int main(void)
{
int k;
char str[5];
cin.getline(str,5);
cin>>str;
int p=strlen(str);
cin>>k;
 
while (strcpy(str,str+k));
k--;
cout<<str;
return 0;
}
ПОМОГИТЕ РАЗОБРАТЬСЯ ЧТО НЕ ТАК
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrCold
852 / 750 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
21.04.2012, 13:00     Удаление к-го элемента строки #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream.h>
#include <string.h>
 
int main(void)
{
int k, i = 0,j = 0;
char str[250];
cout << "String ?\n";
cin.getline(str,250);
cout << "Which number element ? (1,2,3 .....) : \n";
cin >> k;
 
while (str[i])
{ 
if(i != (k - 1)) 
    str[j++] = str[i];
i++;}
str[j] = 0; 
cout<<str;
return 0;
}
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
21.04.2012, 13:14  [ТС]     Удаление к-го элемента строки #3
отзовитесь!

Добавлено через 12 минут
нужно с функцией ctrcpy
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
21.04.2012, 13:24     Удаление к-го элемента строки #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string.h>
 
using namespace std;
 
int main(void)
{
    int k;
    char str[5];
    cin.getline(str,5);
 
    int p = strlen(str);
    cin >> k;
    if(k < p)
    {
        strcpy(str+k, str+k+1);
    }
    cout<<str;
    return 0;
}
k-й элемент считается с 0
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
21.04.2012, 13:59  [ТС]     Удаление к-го элемента строки #5
нужно чтоб получилось так:
Пример входных данных
1234567890
3

124567890
12567890
1267890
127890
12890
1290
120
12
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
21.04.2012, 14:08     Удаление к-го элемента строки #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string.h>
 
using namespace std;
 
int main(void)
{
    int k;
    char str[5];
    cin.getline(str,5);
 
    int p = strlen(str);
    cin >> k;
    while(k <= strlen(str))
    {
        strcpy(str+k-1, str+k);
        cout << str << endl;
    }
    return 0;
}
тогда так
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
21.04.2012, 14:20  [ТС]     Удаление к-го элемента строки #7
оставляет только 0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2012, 14:29     Удаление к-го элемента строки
Еще ссылки по теме:

C++ Удаление элемента из списка
C++ Удаление элемента вектора
Многомерный массив. Дублирование значения первого элемента строки в значении последнего элемента предыдущей C++
C++ Удаление элемента массива
Удаление элемента из вектора C++

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

Или воспользуйтесь поиском по форуму:
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
21.04.2012, 14:29     Удаление к-го элемента строки #8
измените 5 на бОльшее число(для 10 элементов замените на 11).
в остальном все работает.
Yandex
Объявления
21.04.2012, 14:29     Удаление к-го элемента строки
Ответ Создать тему
Опции темы

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