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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,909
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");
 }
Yandex
Объявления
22.02.2011, 19:15     Функция: удалить из строки все знаки препинания
Ответ Создать тему
Опции темы

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