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

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

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

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

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

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

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

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

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

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

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

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

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

4
rangerx
1933 / 1542 / 141
Регистрация: 31.05.2009
Сообщений: 2,913
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;
    }
}
1
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
0
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];
0
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");
 }
0
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- все остальные символы...


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

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

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