Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 28.10.2011
Сообщений: 23
1

Разделить строку на две подстроки.

12.05.2012, 20:37. Просмотров 1628. Ответов 2
Метки нет (Все метки)

Доброго времени суток.. В задании необходимо разбить исходную строку на две подстроки, при этом первая длиной k символов (если на k-ю позицию попадает слово, то его следует отнести ко второй строке).
Вот, что вышло у меня:
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 <cstdlib>
#include <string.h>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"rus");
    char string[]="\0";
    char substring[2][20]={NULL};
    int k=0, s;
    //äåëèì ñòðîêó íà 2 ïîäñòðîêè
    for(int i=0; i<=1; i++)
    {
            substring[i]=string[k];
            if(string[k+1]==' ' || string[k+1]=='\0')
            {
                s++;
            }
            if(s==2)
            {
                s=0;
                k++; 
                break;
            }
        
    }
    for(i=0; i<=2; i++)
    {
        puts (string)
 
        puts (substring)
    }
    return 0;
}
Помогите, пожалуйста, найти ошибки. Заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.05.2012, 20:37
Ответы с готовыми решениями:

Не могу разделить строку на подстроки
Видимо я совсем дебил, но я не понимаю в чем проблема и почему не работает. Числовое выражение...

Разделить строку string на подстроки
Однажды по непонятной причине все запятые в Васином списке исчезли, и все адреса «склеились». У...

Как разделить строку на подстроки
Здравствуйте, возник вопрос по парсингу строк в c++... Как разделить строку на подстроки по ид ?...

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

2
1170 / 883 / 94
Регистрация: 03.08.2011
Сообщений: 2,453
12.05.2012, 21:08 2
А если k-ый символ - последняя буква слова?

Добавлено через 16 минут
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
#include <iostream>
#include <cstdlib>
#include <cstring>
 
 
int main() {
   std::size_t k = 5;
   
   char str[ 256 ] = "some str";
   
   char str1[ 256 ] = { 0 },
        str2[ 256 ] = { 0 };
   
   while ( str[ k ] != ' ' && k > 0 )
      k--;
 
   strncpy( str1, str, k );
   
   strcpy( str2, str + k );
   
   std::cout << str1 << std::endl << str2 << std::endl;
 
   std::cout << str << std::endl << str1 << std::endl << str2 << std::endl;
 
   return 0;
}
0
0 / 0 / 0
Регистрация: 28.10.2011
Сообщений: 23
15.05.2012, 18:50  [ТС] 3
Цитата Сообщение от Toshkarik Посмотреть сообщение
А если k-ый символ - последняя буква слова?
Да, наверно..
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2012, 18:50

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Разделить строку на две части
По индивидуальному заданию создать функцию для обработки символьных строк. За образец брать...

Разделить строку на две части
дана задача.есть переменная char = россия. надо разделить её на две части так,чтобы получилось что...

Разделить строку на две части
К примеру,у меня есть char string1; puts(&quot;Enter first sentence\n&quot;); gets_s(string1, 200); ...

нужно разбить исходную строку на две подстроки , причём первая длинной k
Вообщем нужно разбить исходную строку на две подстроки , причём первая длинной k. Вот код который...


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

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

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