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

не работет программа или функция, не могу найти ошибку, ругается не неправильные указатели - C++

Восстановить пароль Регистрация
 
zavnical
4 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 13
11.03.2014, 14:51     не работет программа или функция, не могу найти ошибку, ругается не неправильные указатели #1
суть программы, вводится строка, с клавиатуры задается число, если есть слова в строке, в которых есть заданное число случайных цифр, то эти слова нужно удалить... программа и функция должны быть написаны через указатели, без индексации
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include "stdafx.h"
#include <iostream>
#include <string.h>
using namespace std;
char* word_kick(char*S, int KOL)
{
    int kol=0;
    char*beg, *end, *j;
        while(*S!='\0')
        {
            while(*S==' '||*S=='\t'||*S=='\n')
                S++;
            if(*S!='\0')
            {
                beg=S;
                while(*S!='\0'&&*S!='\t'&&*S!='\n'&&*S!=' ')
                    S++;
                end=(S-1);
            }
            for(j=beg; j<=end; j++)
                if('0'<=*j&&*j<='9')
                kol++;
            if(kol==KOL)
            {
                j=end+1;
                for(S=beg; *S!='\0'; S++)
                {
                    S=j;
                    j++;
                }}}
return S;}
 
 
 
        
 
 
 
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{ char S[100]; char* t=S;
int n;
cout<<"vvedite stroku"<<endl;
cin.getline(S,100);
cout<<"vvedite kol-vo simvolov"<<endl;
cin>>n;
t=word_kick(S,n);
cout<<t;
getchar();
getchar ();
 
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2014, 14:51     не работет программа или функция, не могу найти ошибку, ругается не неправильные указатели
Посмотрите здесь:

Не правильно работает программа, не могу найти ошибку. C++
C++ Не получается найти ошибку в проге. Компилятор ругается на strcopy_s.
Функция,возращающая абсолютную величину числа( не могу найти ошибку) C++
Программа для работы со списками с++. Не могу найти ошибку C++
C++ Программа вычисляющая значение функции. не могу найти ошибку
C++ функция template не работет , посоветуйте
не могу найти ошибку, программа ничего не выводит C++
Найти ошибку. Массив. Указатели C++
Программа не компилируется. Не могу найти ошибку C++
C++ Найдите ошибку или что я пропустил не могу найти !
C++ Символьные литералы, указатели и функция. Не могу понять, почему именно так
Функция для вычисления суммы члена ряда. Не могу найти ошибку C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
jurok_85
237 / 220 / 75
Регистрация: 21.02.2013
Сообщений: 514
Завершенные тесты: 1
11.03.2014, 17:14     не работет программа или функция, не могу найти ошибку, ругается не неправильные указатели #2
Цитата Сообщение от zavnical Посмотреть сообщение
в которых есть заданное число случайных цифр
случайных цифр или заданных с клавиатуры

Добавлено через 1 час 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
38
39
40
41
#include <iostream>
#include <string.h>
#include <algorithm>
using namespace std;
void word_kick(char* S, int KOL)
{
    char num[10];
    char newStr[100], *pch;
    itoa(KOL,num,10);// переводим число в чар массив
    unsigned int  i = strlen(num), j;
    if(S != '\0')
    pch = strtok(S, " \t");
 
    while(pch != NULL)
    {
        j = strlen(pch);
      if(search(pch, pch+j, num, num+i)== pch+j)
        {
            strcat(newStr, pch);
            strcat(newStr, " ");
        }
        pch =  strtok(NULL, " \t");
    }
 
 
strcpy(S, newStr);
}
 
 
int main()
{
     char S[100];
int n;
cout<<"vvedite stroku"<<endl;
cin.getline(S,100);
cout<<"vvedite kol-vo simvolov"<<endl;
cin>>n;
word_kick(S,n);
cout<<S;
    return 0;
}
Yandex
Объявления
11.03.2014, 17:14     не работет программа или функция, не могу найти ошибку, ругается не неправильные указатели
Ответ Создать тему
Опции темы

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