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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sophi
0 / 0 / 0
Регистрация: 04.01.2014
Сообщений: 4
#1

Нужно заменить последнюю заглавную букву в строке на слово "Kukushechka" - C++

04.01.2014, 14:59. Просмотров 392. Ответов 2
Метки нет (Все метки)

То есть программа должна сама искать последнюю заглавную букву, определять ее номер в строке, ставить вместо нее и последующего текста слово "Kukushechka". В таком состоянии она только определяет номер и никак не хочет заменять.


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
#include "stdafx.h"
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <iostream>
using namespace std;
char f( char *g, char* kuk); 
 
int _tmain(int argc, _TCHAR* argv[])
{   char* str="Avtomat Po It, vse Ostalnye exameny uZhe AvtomaTy"; 
    char *kuk="Kukushechka";
    f(str,kuk);  
    _getch();
    return 0;
}
int IsZaglav(char c)
{
    int a = c;
    if ((a>65)&&(a<90))
        return 1;
    return 0;
}   
 
char f( char* g, char* kuk) 
{   //int k=0;
    int num=-1;
    cout << g << endl;
    for (int i=0; i<strlen(g); i++)
        if (IsZaglav(*(g+i)))
            num = i; 
    
    cout << "numer posled zagl= " << num << endl;
    if (num==-1)
    { cout << "net zaglavnyh" << endl;
    return 0; }
    *(g+num)='\0';
    char *hvost;
 
    cout << *(g+num) << endl;
    hvost=(g+num);
    cout << hvost << endl;
    strset(kuk, *hvost);
    cout<<g<< endl;
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2014, 14:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужно заменить последнюю заглавную букву в строке на слово "Kukushechka" (C++):

Каждую заглавную букву заменить строчной буквой, пару букв "ки" заменить на "ю" - C++
не могу понять как всё это сделать void shifr () { FILE *f1; system(&quot;cls&quot;); fflush(stdin); char *str1=new char ; char...

я задал произвольный текст длинной 5 строк, и допустим что я ввел 5 раз букву "П" , какой цикл нужно создать чтобы пометять букву "П" на букву "Р" ? - C++
я задал произвольный текст длинной 5 строк, и допустим что я ввел 5 раз букву &quot;П&quot; , какой цикл нужно создать чтобы пометять букву &quot;П&quot; на...

Введите предложение, в данной строке нужно заменить все слова "погрешность" на "ошибка" - C++
Введите предложение, в данной строке нужно заменить все слова &quot;погрешность&quot; на &quot;ошибка&quot;.

В строке заменить первую строчную букву на заглавную - C++
Здравствуйте. в строке заменить первую строчную букву на заглавную,остальные оставить строчными в русском алфавите.поискала,не нашла...

Найти самое короткое слово в строке, которое заканчивается на букву "а" - C++
Помогите пожалуйста с написанием программы. Вот задание... Дана строка текста в которой слова разделены пробелами.Необходимо: ...

по строкам.замените в слове сочетание "му" на "а" , а букву "ы" на "ца". очень нужно - C++
замените в слове сочетание &quot;му&quot; на &quot;а&quot; , а букву &quot;ы&quot; на &quot;ца&quot;. очень нужно Добавлено через 21 час 4 минуты неужели никто не знает...

2
Miwa123
37 / 37 / 1
Регистрация: 16.04.2013
Сообщений: 317
Записей в блоге: 1
04.01.2014, 15:39 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
int main()
{
    char *point,text[100],*last_upper_simb=0;
    cin.get(text,100);
    point=text;
    while(*point)
    {
        if((*point>=65 && *point<=90) || (*point>=-128 && *point<=-97))
            last_upper_simb=point;
        point++;
    }
    if(last_upper_simb)
    strcpy(last_upper_simb,"Kukushechka");
    cout<<text;
    system("pause");
}
пользуйтесь
1
MEPTPAH
22 / 12 / 4
Регистрация: 07.08.2012
Сообщений: 109
07.01.2014, 10:35 #3
вот, пожалуйста, на Qt
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void mywidget::run()
{
    QString source(lineIn->text()); // строка исходник
 
    if (!source.isEmpty()) 
    {
        for (int i(source.length() - 1); i >= 0; --i) // смотрим с конца
        {
            if (source[i].isUpper())
            {
                source = source.left(i); // обрезаем до последнего "большого" символа
                source += "kukuska";
                break;
            }
        }
 
        lineOut->setText(source);
    }
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2014, 10:35
Привет! Вот еще темы с ответами:

Удалить первую букву "о", если такая имеется и удалить последнюю букву "л" - C++
Дано слово. Удалить первую букву &quot;о&quot;, если такая имеется и удалить последнюю букву &quot;л&quot;.

Ввести с клавиатуры строку, заменить в ней все буква "а" на букву "b" - C++
Здравствуйте) Вот возникла такая проблема.... не умею работать с указателями еще(( Помогите написать задачку: &quot;используя указатели,...

Вывести на экран фразу "Мне n лет", учитывая что при некоторых значениях n слово "лет" надо заменить на "год" - C++
дано натуральное число n. Вывести на экран фразу &quot;Мне n лет&quot;, учитывая что при некоторых значениях n слово &quot;лет&quot; надо заменить на &quot;год&quot; или...

Заменить в тексте все пары "ph" на букву "f" - C++
Программа. Напечатать заданный непустой текст, заменив в нем все пары ph на букву f.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.