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

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

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

Стринги(массивы символов) - C++

25.09.2012, 18:36. Просмотров 691. Ответов 6
Метки нет (Все метки)

Подскажите с заданием: Написать программу, которая с помощью собственной функции с параметром s (или двумя параметрами s и t) типа char:
в s после каждого слова ставит символ новой строки и устраняет пропуски.



Раньше пытался освоить pascal. Но задание задали на с++ в котором пока еще не разобрался
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.09.2012, 18:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Стринги(массивы символов) (C++):

Массивы символов в c++ - C++
Всем доброго времени суток. Начал недавно изучать, сейчас добрался до массивов символов char*. Может кто-то подробно объяснить что это...

строки, массивы символов - C++
1) #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char command; char...

Массивы строк и символов - C++
Проблема следующая: написал программу, результатом который будет вывод на экран(или в файл) строки s вместо символа a. вот код: //...

Строки как массивы символов :( - C++
При работе со строками не использовать указатели. Строки рассматривать как массивы символов и работать с индексами. Дана строка текста, в...

В функции не передаются массивы символов - C++
в функции не передаются массивы символов, при проверке на то что находится внутри массива вместо значений выдаются квадраты. вот код:...

Двухмерные массивы(матрица символов) - C++
Вывести для каждой строки и каждого столбца символ который колличественно преобладает. В том случае если таких символов нет то вывести...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Elfenlide
23 / 23 / 1
Регистрация: 15.04.2012
Сообщений: 183
25.09.2012, 19:07 #2
Цитата Сообщение от dimas28 Посмотреть сообщение
Подскажите с заданием: Написать программу, которая с помощью собственной функции с параметром s (или двумя параметрами s и t) типа char:
в s после каждого слова ставит символ новой строки и устраняет пропуски.



Раньше пытался освоить pascal. Но задание задали на с++ в котором пока еще не разобрался
Если правильно понял то вот:
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
#include <iostream>
using namespace std;
 
void fString(char mas[], int SIZE);
 
int main()
{
    char mas1[] = "Hello new user, I'm your computer";
    int SIZE = sizeof(mas1);
    for(int j = 0; j < sizeof(mas1); j++)
        cout<<mas1[j];
    cout<<endl<<endl;
    fString(mas1, SIZE);
    return 0;
}
 
void fString(char mas[], int SIZE)
{
    for (int i = 0; i < SIZE; i++)
        if (mas[i] == ' ') 
            mas[i] = '\n';
    for (int i = 0; i < SIZE; i++)
        cout<<mas[i];
    cout<<endl<<endl;
}
Если нужно поменять строку то просто там и меняй в объявлении.
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6447 / 3094 / 306
Регистрация: 04.12.2011
Сообщений: 8,567
Записей в блоге: 4
25.09.2012, 19:44 #3
Как вариант:
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
#include <iostream>
#include <string.h>
using namespace std;
 
void fString(char mas[], int SIZE);
 
int main()
{
    char mas1[] = "Hello new user, I'm your computer";
    int SIZE = strlen(mas1);
    for(int j = 0; j < SIZE; j++)
        cout<<mas1[j];
    cout<<endl<<endl;
    fString(mas1, SIZE);
    system("pause");
    return 0;
}
 
void fString(char mas[], int SZ)
{
    for (int i = 0; i < SZ; i++)
        if (mas[i] == ' ') 
            mas[i] = '\n';
    for (int i = 0; i < SZ; i++)
        cout<<mas[i];
    cout<<endl<<endl;
}
dimas28
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 19
25.09.2012, 19:44  [ТС] #4
что - то не запускается
kotleta
42 / 42 / 11
Регистрация: 13.09.2012
Сообщений: 196
25.09.2012, 20:16 #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
#include <iostream>
#include <sstream>
#include <string>
#include <ios>
 
using namespace std;
 
int main()
{
 char* s = new char[256];
 cin.get(s,30);
 string ss(s);
 
 for(int position=0;;)
 {
  if( (position=ss.find(' ',position)) != -1)
  {
   ss[position]='\n';
   position++;
  }
  else break;
 }
 
 cout << ss << endl << endl;
 
 
return 0;
}
Elfenlide
23 / 23 / 1
Регистрация: 15.04.2012
Сообщений: 183
25.09.2012, 20:17 #6
Цитата Сообщение от dimas28 Посмотреть сообщение
что - то не запускается
какой компилятор? код копируете? или вручную перебираете?
Миниатюры
Стринги(массивы символов)  
dimas28
0 / 0 / 0
Регистрация: 25.09.2012
Сообщений: 19
25.09.2012, 21:51  [ТС] #7
спасибо заработало
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.09.2012, 21:51
Привет! Вот еще темы с ответами:

Указатели,массивы символов и динамическая память - C++
Всем привет!!С Вашего позволения сразу к делу. Проблема: не могу освободить память выделенную в динамической памяти Предположения:...

Строки, как одномерные массивы символов - C++
Дана строка символов, состоящая из цифр, разделенных пробелами. Вывести на экран числа этой строки в порядке возрастания их значений. ...

Использование строк, как одномерные массивы символов - C++
Вот такая задачка Дана строка символов, состоящая из цифр, разделенных пробелами. Вывести четные числа этой строки Это оконный режим...

Строки, представленные как массивы символов перевернуть и объединить - C++
Добрый день! Вводятся 2 строки. Перевернуть обе строки, склеить и вывести. Решить задачу с использование строк типа string...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
25.09.2012, 21:51
Ответ Создать тему
Опции темы

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