Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 11821
Последний выпуск: 19.06.2015

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

87K
14 марта
ross_
3 / / 14.03.2017
Помогите написать код.
Написала начало, не знаю как "удалить" символы
Код:
#include <stdio.h>
#include <string.h>
#include <Windows.h>
int main()
{
    char str[80], str_new[80];
    SetConsoleCP(1251);//включить кодировку Win1251 при вводе с консоли
    SetConsoleOutputCP(1251);//включить кодировку Win1251 при выводе на консоли

    int i, j, k, ks, ns;
    printf("Введите предложение:n");
    gets_s(str);
    i = 0;
    j = 0;
    k = 0;
    ns = 0;
    ks = 0;
    while (str[i] != '')//пока не конец строки выполняется цикл
    {
        while (str[i] == ' ')//пока встречается пробел перебираем символы
            i++;
        ns = i;//начало слова
        while ((str[i] != ' ') || (str[i] != ''))//пока не встретится пробел или конец строки перебираем символы
            i++;
        ks = i - 1;//конец слова
        for (j = ns; j < ks; j++)
            for (k = j + 1; k <= ks; k++)
                if (str[j] == str[k])//нужно осуществить копирование хвоста, удалить из k
16K
16 марта
xAtom
63 / / 17.01.2011
Код:
#include <stdio.h>
#include <ctype.h>
#include <locale.h>
#include <windows.h>
typedef unsigned char uchar;

void _delchr(char* s){
    int    c;
    uchar* p;
    uchar* x = (uchar*)s;
    uchar* y = (uchar*)s;

    while(*x){
        if(isalpha(*y)){
            p = y + 1;
            c = toupper(*y);
            while(isalpha(*p) && (toupper(*p) != c))
                ++p;

            if(toupper(*p) != c)
                ++x;
        } else
            ++x;
        ++y;
        *x = *y;
    }
}

int main(void){
    char s[64] = "Арбалет, акула, около лабиринта. addddAa";

    setlocale(LC_CTYPE, "Russian_Russia.1251");
/*
    printf("Enter str: ");
    fgets(s, 64, stdin);
    fflush(stdin); 
*/

    _delchr(s);

    CharToOemA(s, s);
    puts(s);
    getchar();
    return 0;
}

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог