Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа - C++

01.01.2013, 18:54. Просмотров 775. Ответов 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 "stdafx.h"
#include "conio.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    char L[100], L2[100];
    int i,k;
    puts("vvedite stroku(ne bolee 100 simvolov)");
    gets(L);
    
 
    k=strlen(L);
    if (k%2==0){
        for (i=0; i<k; i++)
        {       L[i]=L[i+3];}       
        puts(L);}
    else {
        for (i=0; i<k-3; i++)   
        {       L2[i]=L[i];         }
 
        
        puts(L2);}
 
system("pause");
 
    ;
    return 0;
}

Цель программы: Ввести строку символов. Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа.
Программа сама по себе рабочая вот только есть проблема: если нечетное количество символов в строке, то удаление происходит, но появляются непонятные символы вместо удалившихся(нужно чтобы корректно удалялось). Помогите решить данную проблему, буду весьма благодарен!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.01.2013, 18:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить длину введенной строки L, и если длина L четная, то удаляются 3 первых, иначе 3 последних символа (C++):

Программа должна определить длину введенной строки L и, если длина L >15, то удаляются все a..z. - C++
27. Ввести с клавиатуры строку символов. Признак окончания ввода строки – нажатие клавиши &quot;Ввод&quot;. Программа должна определить длину...

Ввести строку символов, если ее длина четная, удалить 2 первых и 2 последних символа. - C++
Ввести строку символов, если ее длина четная, удалить 2 первых и 2 последних символа. Решить задачу в VC++.

Ввести строку символов. Определить длину введенной строки L, и если длина L кратна 3, то удаляются все символы, стоящие на местах с номером кратным 3 - C++
!!!!!

Определить длину введенной строки, и, если длина больше заданной, то удалить символы от a до z - C++
Здравствуйте можете пожалуйста помочь с задачей на строки. Очень прошу. Определить длину введенной строки, и, если длина больше 15, то...

Определить длину каждого слова строки, и если она четная, то вставить в середину слова "aa", иначе "а" - C++
Помогите с программой, начал делать, ерунда какая то выходит.... #include&lt;iostream.h&gt; #include&lt;stdlib.h&gt; #include&lt;conio.h&gt; ...

Программа со строками. Определить длинну введенной строки L и если длина L кратна 3 удалит каждый третий символ - C++
Люди помогите нечего не понимаю нужна программа что бы могла вывести с клавиатуры строку символ.Признак окончания строки-нажатие ввод....

2
rangerx
1935 / 1544 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
02.01.2013, 01:09 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int _tmain(int argc, _TCHAR* argv[]) {
    
    char L[100];    
    puts("vvedite stroku(ne bolee 100 simvolov)");
    gets(L);    
 
    const int k = 3;
    int n = strlen(L);
        
    if(n >= k) {
            
        if(n % 2 == 0)        
            for(int i = 0; i < (n - k); i++)                                 
                L[i] = L[i + k];            
    
        L[n - k] = '\0';            
    }
 
    puts(L);
    system("pause");        
}
1
m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,262
Завершенные тесты: 2
02.01.2013, 01:11 #3
C++
1
'\0';
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.01.2013, 01:11
Привет! Вот еще темы с ответами:

Если длина строки четная, то удалить подстроку до первого пробела - C++
Помогите, пожалуйста, найти и исправить ошибку, ибо я уже не знаю что не так. Задача должна удалить подстроку до первого пробела, если...

Если длина введенной строки кратна 4, первую часть строки поменять местами со второй - C++
Если длина введенной строки кратна 4, первую часть строки поменять местами со второй.

Если длина строки больше 10 - оставить первые 6 символов, иначе дополнить строку символами 'о' - C++
Дана строка.Если ее длина больше 10,то оставить в строке только первые 6 символов,иначедополнить строку символами 'о' до длины 12.

дано четырехзначное число. если сумма первых 2 цифр=сумме 2 последних, написать "yes", иначе "no" - C++
Вот попробовал написать код но ошибку выдает: #include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; int main() { ...


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

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

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