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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
pro_mary
1 / 1 / 0
Регистрация: 23.03.2009
Сообщений: 99
#1

Перевести символ верхнего регистра в нижний и наоборот - C++

27.04.2012, 15:43. Просмотров 1246. Ответов 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
#include "stdafx.h"
#include <iostream>
#include <cctype>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    cout << "Введите строку: ";
    char ch;
    cin.get(ch);
    while (ch != '@')
    {
        if (islower(ch))
            cout << toupper(ch);
        else if (isupper(ch))
            cout << tolower(ch);
        else if (isspace(ch))
            cout << ch;
        else if (isdigit(ch))
            continue;
        else
            cout << ch;
        cin.get(ch);
    }
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2012, 15:43     Перевести символ верхнего регистра в нижний и наоборот
Посмотрите здесь:
C++ Преобразовать символы верхнего регистра в нижний
C++ Написать функцию которая в строке заменяет все символы верхнего регистра в символы нижнего регистра
В новом файле заменить все латинские буквы верхнего регистра на буквы нижнего регистра C++
Заменить все буквы нижнего регистра в строке на буквы верхнего регистра C++
C++ Функция преобразует буквы верхнего регистра в строке s в буквы нижнего регистра
C++ Переход в нижний регистр с верхнего в русском языке
C++ Не записывается буквы верхнего регистра в файл
C++ Поиск дублирующихся символов верхнего и нижнего регистра
C++ Файл: Сравнить количество цифр и букв верхнего регистра
Легкое задание на строки, найти слова верхнего и нижнего регистра С++ C++
Имена переменных начинающиеся с двух подчеркиваний или с символа подчеркивания и следующей за ним буквы верхнего регистра C++
Написать программу, меняющую первую букву каждого слова на эту же букву верхнего регистра C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
amfisat
67 / 67 / 1
Регистрация: 16.06.2009
Сообщений: 240
27.04.2012, 16:23     Перевести символ верхнего регистра в нижний и наоборот #2
toupper() и tolower() возвращают целое число, потому надо самому приводить к char:
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
#include <iostream>
#include <cctype>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    cout << "Введите строку: ";
    char ch;
    cin.get(ch);
    while (ch != '@')
    {
        if (islower(ch))
            cout << static_cast<char>(toupper(ch));
        else if (isupper(ch))
            cout << static_cast<char>(tolower(ch));
        else if (isspace(ch))
            cout << ch;
        else if (isdigit(ch))
            continue;
        else
            cout << ch;
        cin.get(ch);
    }
    return 0;
}
Ответ Создать тему
Опции темы

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