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

функции замени в строке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Cкачиванием файла по протоколу HTTP http://www.cyberforum.ru/cpp-beginners/thread126405.html
Вот нашел данный код предназначенный для скачивание файлов по протоколу HTTP BOOL GetURLPageAndStoreToDisk(LPSTR pURLPage, LPSTR pOutputFile) { HINTERNET hSession; HINTERNET hURL; char...
C++ В одномерном массиве,состоящем из... Всем привет!Кому не сложно,помогите выполнить задание,буду очень благодарен:) В одномерном массиве,состоящем из n вещественных элементов,вычислить: 1)Количество элементов массива,больших "с";... http://www.cyberforum.ru/cpp-beginners/thread126392.html
Удаление элементов массива C++
Добрго времени суток! Задача : Дан целочисленный массив Х размера Н. Удалить из массива все элементы,встречающиеся более двух раз. Вот собственно что у меня получилось. Трабла с самим удалением....
Ф-ция * C++
Написать ф-цию get_int(filename,k) целого типа, возвращающую k-й элемент файла целых чисел с именем filename(эл-ты нумеруются от 0). Если файл несуществует или несодержит k-го элемента, то ф-ция...
C++ Написать прогу с элементарной функцией y=x*x http://www.cyberforum.ru/cpp-beginners/thread126367.html
Написать прогу с элементарной функцией y=x*x.
C++ Дано предложение. Сколько слов является перевертышами Дано предложение. Сколько слов является перевертышами и будет ли это число четным. подробнее

Показать сообщение отдельно
misha idiot
0 / 0 / 0
Регистрация: 06.05.2010
Сообщений: 11
08.05.2010, 20:24  [ТС]
огромное спасибо!!!!!!!!!

Добавлено через 9 часов 40 минут
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
56
57
58
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <conio.h>
char *str1 = "Text";
char *str2 = "\"Text\"";
int main()
{
 
   modstring2 (str2);
   printf( str2 );
 
}
char* modString2(char *string)
{
    int len, len1, len2, n1, n2, i, j, k;
    int *numpos;
    char *result;
    len = strlen(string);
    len1 = strlen(str1);
    len2 = strlen(str2);
    n1 = 0;
    numpos = (int*)malloc(sizeof(int) * (len / len1 + 1));
    for(i = 0; i <= len - len1; ++i)
    {
        j = 0;
        while(j < len1 && string[i + j] == str1[j])
            ++j;
        if(j == len1)
        {
            numpos[n1++] = i;
            i += len1 - 1;
        }
    }
    if(!n1)
    {
        result = (char*)malloc(sizeof(char) * (len + 1));
        strcpy(result, string);
    }
    else
    {
        result = (char*)malloc(sizeof(char) * (len + (len2 - len1) * n1 + 1));
        for(i = 0, j = 0, n2 = 0; i < len; ++i, ++j)
            if(n2 == n1 || numpos[n2] > i)
                result[j] = string[i];
            else
            {
                for(k = 0; k < len2; ++k, ++j)
                    result[j] = str2[k];
                i += len1 - 1;
                --j;
                ++n2;
            }
        result[j] = '\0';
    }
    free(numpos);
    return result;
}
посматрите пожалуста и скажить що в ней не так

Добавлено через 23 часа 9 минут
вот работающая лаба
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
56
57
58
59
60
61
62
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <conio.h>
char str1[] = "hello kolya";
char str2[] = "Misha";
char str3[] = "hello kolya brather";
 
char modString (char string[])
{
    int len, len1, len2, n1, n2, i, j, k;
 
    char result[256];
    len = strlen(string);
    len1 = strlen(str1);
    len2 = strlen(str2);
    int numpos[255];
    n1 = 0;
    for(i = 0; i <= len - len1; ++i)
    {
        j = 0;
        while(j < len1 && string[i + j] == str1[j]) ++j;
 
        if(j == len1)
        {
            numpos[n1++] = i;
            i += len1 - 1;
        }
    }
    if(!n1)
    {
        for(i = 0; i <= len; ++i)
        result[i] = string[i];
            }
    else
    {
            for(i = 0, j = 0, n2 = 0; i < len; ++i, ++j)
            if(n2 == n1 || numpos[n2] > i)
                result[j] = string[i];
            else
            {
                for(k = 0; k < len2; ++k, ++j)
                    result[j] = str2[k];
                i += len1 - 1;
                --j;
                ++n2;
            }
        result[j] = '\0';
    }
    for(i = 0; i <= len, result[i]!='\0'; ++i)
    printf("%c", result[i]);
    return 0;
}
 
  void main()
{
   clrscr ();
   modString ( str3 );
    getch();
 
 
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru