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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
mybabloo
1 / 1 / 0
Регистрация: 29.12.2009
Сообщений: 40
#1

В тексте убрать лишние пробелы и разделительные символы - C++

19.01.2010, 17:47. Просмотров 1633. Ответов 32
Метки нет (Все метки)

1. Определить какие символы и сколько раз встречаются в тексте.
Или
2. В тексте убрать лишние пробелы и разделительные символы, оставив между словами только по одному пробелу.
Нужна помощь. Текст должен считываться из файла. Заранее благодарю, завтра сдавать надо, а то бы не спрашивал, сам сделал.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2010, 17:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В тексте убрать лишние пробелы и разделительные символы (C++):

Убрать лишние пробелы - C++
отформотировать строку 1)убрать все лишние пробелы 2) убрать 1 пробел после знака препинания ПЕРВУЮ ЗАДАЧУ РЕШИЛ . ...

Убрать лишние пробелы в строке - C++
дана строка-предложение с избыточными пробелами между словами. Преобразовать ее так чтобы между словами оставался один пробел

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

Убрать лишние(повторяющиеся) пробелы, и записать в файл - C++
помоги, пожалуйста, доработать программу Надо убрать лишние(повторяющиеся) пробелы, и записать в файл using namespace std; int...

Убрать лишние пробелы, оставить по одному пробелу между слов - C++
Помогите пожалуйста!!! Убрать лишние пробелы, оставить по одному пробелу между слов. (С++)

В тексте удалить лишние пробелы и расположить слова в порядке возрастания длинн - C++
Помогите решить задачу. Спасибо ребят) В тексте удалить лишние пробелы и расположить слова в порядке возрастания их длин. С++

32
lego69
3 / 3 / 1
Регистрация: 19.01.2010
Сообщений: 26
19.01.2010, 17:54 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define MAXLEN 255 //длина строки
int main()
{
        char str[MAXLEN];//вводимая строка
        int Count[MAXLEN];//счетчик для каждого символа
        int i;//счетчик
        for(i=0;i<MAXLEN;i++)
                Count[i]=0;//обнуление массива
        printf("Please enter a string:\n");
        gets(str);//ввод строки
        int len=strlen(str);//кол-во введенных символов
        for(i=0;i<len;i++)
                Count[str[i]]++;//увеличение счетчика для i-го сивола
        for(i=0;i<MAXLEN;i++)
                if(Count[i])printf("%c-%d\n",i,Count[i]);//вывод если не ноль
        getch();
return 0;
}
ну думаю, что считать с файла уже сможешь сам)
2
mybabloo
1 / 1 / 0
Регистрация: 29.12.2009
Сообщений: 40
19.01.2010, 19:44  [ТС] #3
что то не получается)))
0
lego69
3 / 3 / 1
Регистрация: 19.01.2010
Сообщений: 26
19.01.2010, 19:49 #4
что именно?
0
mybabloo
1 / 1 / 0
Регистрация: 29.12.2009
Сообщений: 40
19.01.2010, 19:55  [ТС] #5
ну пишет что то про преобразование типов...выкладывать свое не буду, там бессмысленно, это 5 строчек
0
lego69
3 / 3 / 1
Регистрация: 19.01.2010
Сообщений: 26
19.01.2010, 20:22 #6
лучше бы выложили, яснее было б в чем проблема.
код рабочий.
0
mybabloo
1 / 1 / 0
Регистрация: 29.12.2009
Сообщений: 40
19.01.2010, 20:40  [ТС] #7
нет не работает вместе в моим "считыванием из файла", а так все работает
0
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
19.01.2010, 20:44 #8
ну выложите ваш код. Так же фиг поймёшь в чём у вас проблема!
1
mybabloo
1 / 1 / 0
Регистрация: 29.12.2009
Сообщений: 40
19.01.2010, 20:52  [ТС] #9
да его выкладывать чисто чтобы вам посмеяться))
0
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
19.01.2010, 20:54 #10
хм...посмотри у меня в профиле мои темы...с чего я начинал. Не было ничего смешного.
0
Genius Ignat
1237 / 775 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
19.01.2010, 21:00 #11
Что решаем бестолку, исходник надо видеть, раз ошибка после внесения новшеств.

Добавлено через 1 минуту
mybabloo сам такой логин придумал.
0
mybabloo
1 / 1 / 0
Регистрация: 29.12.2009
Сообщений: 40
19.01.2010, 21:10  [ТС] #12
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 fflush(stdin);
 clrscr ();
 FILE *F;
 char ch, *text=(char *)malloc(sizeof (char));
 int length=0;
 FILE *f;
 if(!(f = fopen("1.txt", "rt"))) {printf("cant open this file");}
 
 
    while ((ch=getc (f))!=EOF)
    {
        text=(char*) realloc (text, (length+2)*sizeof (char));
        text [length++]=ch;
    }
ну вот это дописал сверху.

Добавлено через 7 минут
соответственно подключив stdlib
0
Genius Ignat
1237 / 775 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
19.01.2010, 21:14 #13
Пожалуйста собери сюда весь текст

Добавлено через 46 секунд
Я хоть с отладчиком проверю в каком месте затык
0
mybabloo
1 / 1 / 0
Регистрация: 29.12.2009
Сообщений: 40
19.01.2010, 21:21  [ТС] #14
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<stdio.h>
#include<conio.h>
#include<string.h>
#include <stdlib.h>
#define MAXLEN 255 //длина строки
int main()
{
 
 fflush(stdin);
 clrscr ();
 FILE *F;
 char ch, *text=(char *)malloc(sizeof (char));
 int length=0;
 FILE *f;
 if(!(f = fopen("1.txt", "rt"))) {printf("cant open this file");}
 
 
    while ((ch=getc (f))!=EOF)
    {
        text=(char*) realloc (text, (length+2)*sizeof (char));
        text [length++]=ch;
    }
        
        char str[MAXLEN];//вводимая строка
        int Count[MAXLEN];//счетчик для каждого символа
        int i;//счетчик
        for(i=0;i<MAXLEN;i++)
                Count[i]=0;//обнуление массива
 
        int len=strlen(ch);//кол-во введенных символов
        for(i=0;i<len;i++)
                Count[ch[i]]++;//увеличение счетчика для i-го сивола
        for(i=0;i<MAXLEN;i++)
                if(Count[i])printf("%c-%d\n",i,Count[i]);//вывод если не ноль
        getch();
return 0;
}
0
Genius Ignat
1237 / 775 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
19.01.2010, 21:31 #15
int len=strlen(ch); //Это по твойму длинна буффера.
0
19.01.2010, 21:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.01.2010, 21:31
Привет! Вот еще темы с ответами:

Как убрать лишние символы при выводе в консоль списка файлов? - C++
Поясните, пожалуйста. Собираю кроссплатформенные методы, для работы с файлами. Взял для разбора такой метод. Всё работает, только вот...

В тексте все символы, стоящие после последней точки, заменить на пробелы - C++
1) В тексте все символы, стоящие после последней точки, заменить на пробелы.

Лишние пробелы - C++
Здравствуйте. Выполняю задание на microsoft visual studio. Необходимо удалить лишние пробелы в строке, используя массив и нельзя...

Удалить лишние пробелы - C++
Сделал програму для удаления лишних пробелов из строки(те что стоят в начале строки, в конце, все кроме одного между словами). Програма...


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

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

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