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

Пользовательские функции - C++

Восстановить пароль Регистрация
 
smolin91
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 21
22.02.2011, 17:37     Пользовательские функции #1
Написать функцию, которая удаляет из строки все символы, обозначающие цифры. Заголовок функции: void deleteDigits (char *s); Написать программу, которая принимает от пользователя набор строк (массив строк), удаляет из всех строк символы, обозначающие цифры, выводит все преобразованные строки на экран.

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 <cctype>
#include <cstring>
using namespace std;
void deleteDigits(char*);
 int main()
{   const int STROKA = 5;
    const int STOLBEC = 255;
    setlocale (LC_ALL, "Russian");
    cout<< " Введите 5 строк:\n";
    char str[STROKA][STOLBEC];
    
    for(int i=0;i<STROKA;++i)
    {   cout<< " № " << i+1 <<endl;
        cin.getline(str[i], STOLBEC);
        deleteDigits(str[i]);   }
 
    cout << " \nВсе преобразованные строки:\n";
    for(int i=0;i<STROKA;++i)
    {   cout<< " № " << i+1<<endl;
        cout<< str[i] <<endl;   }
 return 0;  }
 
void deleteDigits(char *s)
{   while(*s)
    {   if( isdigit(*s) ) [COLOR="Red"]memmove[/COLOR](s, s+1, strlen(s));
        else ++s;   }   }  
нужно сделать не используя !!! memmove !!!
или иначе воспроизвести


void deleteDigits(char *s)
{ while(*s)
{ if( isdigit(*s) ) memmove(s, s+1, strlen(s));
else ++s; } }  



зарание большое спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2011, 17:37     Пользовательские функции
Посмотрите здесь:

Пользовательские Функции C++
C++ пользовательские функции
пользовательские функции C++
C++ функции пользовательские
C++ Пользовательские функции
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
22.02.2011, 18:06     Пользовательские функции #2
Написать функцию, которая удаляет из строки все символы, обозначающие цифры.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<stdio.h>
 
void deleteDigits (char *a){
    char *b=a;
    while(*b=*a){
        if(!isdigit(*a++)) ++b;
    }
}
 
int main(){
    char c[BUFSIZ];
    gets(c);
    deleteDigits(c);
    puts(c);
    return 0;
}
smolin91
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 21
22.02.2011, 19:22  [ТС]     Пользовательские функции #3
isdigit


он не понимает что это !
;(
no0ker
100 / 87 / 4
Регистрация: 17.12.2010
Сообщений: 416
22.02.2011, 19:40     Пользовательские функции #4
C++
1
2
3
4
int IsDigit(const char a){
    if (a>='0' && a<='9') return 1;
    else return 0;
}
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
22.02.2011, 19:41     Пользовательские функции #5
smolin91,
C
1
#include <ctype.h>
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
22.02.2011, 19:41     Пользовательские функции #6
C
1
2
3
4
5
6
void deleteDigits (char *a){
    char *b=a;
    for(; *b=*a; ++a){
        if(*a<'0'||*a>'9') ++b;
    }
}
Yandex
Объявления
22.02.2011, 19:41     Пользовательские функции
Ответ Создать тему
Опции темы

Текущее время: 23:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru