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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Leff
0 / 0 / 0
Регистрация: 15.11.2010
Сообщений: 23
#1

Функция: удалить из строки все знаки препинания - C++

16.02.2011, 00:44. Просмотров 1249. Ответов 4
Метки нет (Все метки)

12. Написать функцию, которая удаляет из строки все знаки препинания. Заголовок функции: void deletePunct(char *s); Написать программу, которая принимает от пользователя набор строк (массив строк), удаляет из строк знаки препинания, выводит преобразованные строки на экран

Помогите, пожалуйста, начинающему, нет никаких идей, как это сделать.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.02.2011, 00:44
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция: удалить из строки все знаки препинания (C++):

Удалить знаки препинания из строки - C++
Помогите на с отфильтровать строку таким образом, чтобы вместо знаков появлялись пробелы. Напимер задано рпраппрапа.пр:пр,ророро ...

Удалить все знаки препинания и пробельные символы - C++
1. Даны строки, содержащие любые элементы алфавита языка С++. Удалить все знаки препинания и пробельные символы.

Вычеркните из строки все знаки препинания (с++) - C++
Здравствуйте, форумчане! Нужна помощь. Вычеркните из строки все знаки препинания Написать на с++

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

Ввести строку вывести каждое слово из этой строки с кол-ом повторений этого слова учитывая все знаки препинания... - C++
Составить прогу: Ввести строку вывести каждое слово из этой строки с кол-ом повторений этого слова учитывая все знаки препинания... ...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
rangerx
1933 / 1542 / 141
Регистрация: 31.05.2009
Сообщений: 2,912
16.02.2011, 01:42 #2
C
1
2
3
4
5
6
7
8
9
10
11
#include <string.h>
#include <ctype.h>
//...
void deletePunct(char *s)
{
    while(*s)
    {
        if( ispunct(*s) ) memmove(s, s+1, strlen(s));
        else ++s;
    }
}
Leff
0 / 0 / 0
Регистрация: 15.11.2010
Сообщений: 23
21.02.2011, 22:35  [ТС] #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<string.h>
using namespace std;
void delete_Punct(char *str);
int main()
{
char *str=new char[255];
cout<<"Enter string  ";
cin.getline(str,255);
delete_Punct(str);
getch();
}
void delete_Punct(char *str)
{
int j=0;char *s2=new char[255]; 
for (int i=0;i<strlen(str);i++)
if (! ispunct(str[i]))
{s2[j]=str[i];j++;}
cout <<"predlozenie bez znakop pripenanija  ";s2[j];
}
programu napisal,no vot otvet na ekran ona ve vivodit,ne podskazali bi vi v 4om ja o6ibsja
sandora
12 / 12 / 0
Регистрация: 10.02.2011
Сообщений: 42
22.02.2011, 15:46 #4
Цитата Сообщение от Leff Посмотреть сообщение
cout <<"predlozenie bez znakop pripenanija ";s2[j];
}
cout <<"predlozenie bez znakop pripenanija "<<s2[j];
MILAN
885 / 779 / 86
Регистрация: 21.02.2009
Сообщений: 1,722
22.02.2011, 19:15 #5
Leff,
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
38
39
40
#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<string.h>
 
using namespace std;
 
void delete_Punct(char *str);
 void main()
  {
    char *str=new char[255];
    cout<<"Enter string ";
    cin.getline(str,255);
    delete_Punct(str);
   getch();
  }
void delete_Punct(char *str)
{
bool flag;
char pun[7]="!,.;:?";
char *s2=new char[255]; 
cout<<"Result -> ";
 for (int i=0;i<strlen(str);i++)
 {
     flag=true;
     for(int j=0; j<strlen(pun); j++)
     {
         if(str[i]==pun[j])
         {
             flag=false;
              break;
         }
     }
   if (flag)
   {
      cout<<str[i];
   }
 }
 system("pause");
 }
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2011, 19:15
Привет! Вот еще темы с ответами:

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

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

Функция getline(). Как исключить знаки препинания (символы)? - C++
Задача следующая: Из файла source.txt прочесть слово Отправить запрос в БД Получить перевод слова Записать в файл...

Текстовые файлы. Переписать в файл g все знаки препинания файла f. - C++
Дан файл f, компонентами которого являются символы. Переписать в файл g все знаки препинания файла f, а в файл h- все остальные символы...


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

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

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