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

Заменить на "-" каждую четную букву в слове - C++

Восстановить пароль Регистрация
 
SnowFire
0 / 0 / 0
Регистрация: 15.01.2014
Сообщений: 5
15.01.2014, 01:08     Заменить на "-" каждую четную букву в слове #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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
 
#define MAXL_STRING 81
#define MAXL_WORD 31
 
void main()
{
    char str[MAXL_WORD],str_all[MAXL_STRING],str0[]=" ";
    int i,j,w_len,w_len0,kslov,ksymb;
    FILE *fin, *fout;
 
    setlocale(LC_CTYPE,"Russian");
 
    fin=fopen("C:\\string2.txt","r");
    if(fin == NULL)
        {printf("Невозможно открыть файл string2.txt\n"); exit(1); }
    fout=fopen("C:\\string2.out","w");
    if(fout == NULL)
        {printf("Невозможно открыть файл string2.out\n"); exit(1); }
 
    fprintf(fout,"  Исходное предложение:\n");
    printf("    Исходное предложение:\n");
    kslov=ksymb=0;
    while(fscanf(fin,"%s",str) != EOF)
    {
        w_len=strlen(str);
        kslov++; ksymb+=w_len+1;
        if(kslov == 1)
            strcpy(str_all,str);
        else
        {
            if(strlen(str_all) < (MAXL_STRING-1)) strcat(str_all,str0);
            if((strlen(str_all)+w_len) <= (MAXL_STRING-1))
                strcat(str_all,str);
            else
            {
                fprintf(fout,"%s\n",str_all); printf("%s\n",str_all);
                strcpy(str_all,str);
            }
        }
    }
    if(fseek(fin,0L,SEEK_SET) != 0)
    {printf("Error seek: file stk2.in\n"); exit(1);}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2014, 01:08     Заменить на "-" каждую четную букву в слове
Посмотрите здесь:

Заменить в матрице каждую "1" на сумму соседних в соответствующей строке элементов C++
C++ В каждом слове текста замените "а" на букву "е"
Нужно в массиве в слове "Pascal" поменять букву c на k C++
Строки. Заменить букву "а" на букву "в" C++
Нужно заменить последнюю заглавную букву в строке на слово "Kukushechka" C++
Удалить первую букву "о", если такая имеется и удалить последнюю букву "л" C++
C++ Все символы строки, стоящие на четных местах, заменить на букву "ы"
Заменить словах каждую букву "о" на "ма" C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4920 / 2663 / 243
Регистрация: 29.11.2010
Сообщений: 7,410
15.01.2014, 02:16     Заменить на "-" каждую четную букву в слове #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <sstream>
#include <string>
 
int main()
{
    const std::string str = "Eniki beniki eli vareniki";
    std::cout << "Before: " << str << "\nAfter:  ";
 
    std::istringstream ist(str);
    for (std::string word; ist >> word; std::cout << word << " ")
        for (unsigned int i=0; i < word.length(); i+=2)
            word[i] = '-';
}
Yandex
Объявления
15.01.2014, 02:16     Заменить на "-" каждую четную букву в слове
Ответ Создать тему
Опции темы

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