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

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

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

Удалить пробелы и после каждого 5 элемента поставить знак вопроса - C++

02.03.2014, 12:35. Просмотров 277. Ответов 3
Метки нет (Все метки)

Удалить пробелы и после каждого 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
28
29
30
31
32
33
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
void main()
{   
    char str [100];
    gets(str);
    char p;
    for (int i=strlen(str); i>=0; i--)
    {
        if (str[i]==' ')
            for(int j=i; j<strlen(str); j++)
               {p=str[j];
               str[j]=str[j+1];
               str[j+1]=p;}
    }
    for (int i=5; i<strlen(str); i++)
        if ((i+1)%6==0)
        {
            {
                for(int j=strlen(str); j>i; j--)
                { p=str[j+1];
                str[j+1]=str[j];
                str[j]=p;}
                    str[i+1]='?';
            }
    }
    puts(str);
     
}
помогите!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2014, 12:35     Удалить пробелы и после каждого 5 элемента поставить знак вопроса
Посмотрите здесь:

C++ Вставить после каждого знака пунктуации в символьном массиве знак табуляции
C++ знак вопроса
C++ Перед и после каждого тире в тексте поставить пробелы (строки).
Все элементы, равные нулю, поставить сразу после максимального элемента данного массива C++
C++ Удалить элементы кратные 7. Добавить после каждого элемента массива элемент со значенем 0.
C++ В целочисленный массив X(n) после каждого нечетного элемента
Станет ли последовательность упорядоченной, если из записи каждого элемента удалить... C++
После каждого четного элемента массива вставить два элемента с тем же значением, после чего полученный массив отсортировать по убыванию C++
После каждого четного элемента массива вставить 2 элемента с тем же значением, полученный массив отсортировать C++
Поставить ноль после каждого определенного значения в массиве C++
Удалить первый нулевой элемент массива и добавить после каждого чётного элемента особый элемент C++
В заданной строке, после каждого слова вида «sin», «cos» или«log», поставить скобку «(» C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
saserlend
10 / 10 / 1
Регистрация: 25.11.2011
Сообщений: 139
02.03.2014, 15:32     Удалить пробелы и после каждого 5 элемента поставить знак вопроса #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
33
34
35
36
37
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
void func()
{
 char str [100];
    gets(str);
    char p;
    for (int i=strlen(str); i>=0; i--)
    {
        if (str[i]==' ')
            for(int j=i; j<strlen(str); j++)
               {p=str[j];
               str[j]=str[j+1];
               str[j+1]=p;}
    }
    for (int i=5; i<strlen(str); i++)
        if ((i+1)%6==0)
        {
            {
                for(int j=strlen(str); j>i; j--)
                { p=str[j+1];
                str[j+1]=str[j];
                str[j]=p;}
                    str[i+1]='?';
            }
    }
    puts(str);
     
}
void main()
{   
   func();
}
kventin_zhuk
БНТУ ФИТР
 Аватар для kventin_zhuk
215 / 155 / 15
Регистрация: 26.12.2012
Сообщений: 382
02.03.2014, 15:43     Удалить пробелы и после каждого 5 элемента поставить знак вопроса #3
saserlend, Скорее уже так:
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
37
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
void func(char *str)
{
    char p;
    for (int i=strlen(str); i>=0; i--)
    {
        if (str[i]==' ')
            for(int j=i; j<strlen(str); j++)
               {p=str[j];
               str[j]=str[j+1];
               str[j+1]=p;}
    }
    for (int i=5; i<strlen(str); i++)
        if ((i+1)%6==0)
        {
            {
                for(int j=strlen(str); j>i; j--)
                { p=str[j+1];
                str[j+1]=str[j];
                str[j]=p;}
                    str[i+1]='?';
            }
    }
    puts(str);
     
}
void main()
{   
   char str [100];
   gets(str);
   func(str);
}
saserlend
10 / 10 / 1
Регистрация: 25.11.2011
Сообщений: 139
02.03.2014, 16:18     Удалить пробелы и после каждого 5 элемента поставить знак вопроса #4
Цитата Сообщение от kventin_zhuk Посмотреть сообщение
saserlend, Скорее уже так:
Можно еще вывод в мэйне запихнуть. Оставив функции только обработку строки. Но в любом случае не совсем ясно в чем просьба была.
C++
1
2
3
4
5
6
7
void main()
{   
   char str [100];
   gets(str);
   func(str);
   puts(str); 
}
Yandex
Объявления
02.03.2014, 16:18     Удалить пробелы и после каждого 5 элемента поставить знак вопроса
Ответ Создать тему
Опции темы

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