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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Vadikk
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 44
#1

Преобразование букв - C++

16.03.2012, 21:13. Просмотров 1157. Ответов 7
Метки нет (Все метки)

Дана строка. Группы символов, разделенные пробелами(одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами. Преобразовать строку таким образом, что бы каждое слово начиналось с большой буквы, а остальные были строчные.

Без использования string.h
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2012, 21:13     Преобразование букв
Посмотрите здесь:

Поменять местами первую из букв а и последнюю из букв о C++
Дана строка с набором случайных символов, при вводе 10 букв первые 5 букв становятся большими , вторые 5 букв маленькими C++
C++ Преобразование Букв в двоичный код
C++ Поменять местами первую из букв а и последнюю из букв о
C++ Преобразование строчных букв в прописные
C++ Ввести с клавиатуры целое число N. Используя рекурсию, распечатать сначала последовательность, состоящую из N букв 'А', а затем из N букв 'В'
Преобразование заглавных букв в строчные C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Xind
275 / 148 / 7
Регистрация: 05.11.2011
Сообщений: 425
Записей в блоге: 1
16.03.2012, 21:16     Преобразование букв #2
идем по циклу, находим новое слово, его первый символ (предыдущие символы были пробелы) и меняем этот символ с помощью
C
1
int toupper ( int c );
и так далее пока не закончится строка.
Vadikk
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 44
16.03.2012, 21:20  [ТС]     Преобразование букв #3
Цитата Сообщение от Xind Посмотреть сообщение
идем по циклу, находим новое слово, его первый символ (предыдущие символы были пробелы) и меняем этот символ с помощью
C
1
int toupper ( int c );
и так далее пока не закончится строка.
с русским языком не работает, только англиский, а надо русский
rangerx
1931 / 1540 / 141
Регистрация: 31.05.2009
Сообщений: 2,905
16.03.2012, 21:27     Преобразование букв #4
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
#include <iostream>
#include <cctype>
 
int main()
{   
   char str[256]; 
    
   std::cout << "input string: ";
   std::cin.getline(str, sizeof(str));
    
   for(char* pch = str; *pch; ++pch)
   {                  
      if(*pch != ' ')
      {         
     *pch = std::toupper(*pch);
         do
     { 
        ++pch;
        *pch = std::tolower(*pch); 
     }
     while(*pch && *pch != ' ');
      }    
   }
      
   std::cout << "result:\n" << str << "\n";   
}
Xind
275 / 148 / 7
Регистрация: 05.11.2011
Сообщений: 425
Записей в блоге: 1
16.03.2012, 21:29     Преобразование букв #5
Цитата Сообщение от Vadikk Посмотреть сообщение
с русским языком не работает, только англиский, а надо русский
смотрим принцип toupper() потом смотрим как кодируется кириллица и делаем наподобие http://liveworkspace.org/code/8444fd...8b818842cb2302
rangerx
1931 / 1540 / 141
Регистрация: 31.05.2009
Сообщений: 2,905
16.03.2012, 21:33     Преобразование букв #6
Цитата Сообщение от Vadikk Посмотреть сообщение
с русским языком не работает, только англиский, а надо русский
Установи соответствующую локаль.
Vadikk
0 / 0 / 0
Регистрация: 15.11.2011
Сообщений: 44
17.03.2012, 00:09  [ТС]     Преобразование букв #7
Цитата Сообщение от rangerx Посмотреть сообщение
Установи соответствующую локаль.
если бы я знал что это, я же новичек только учусь
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.03.2012, 02:43     Преобразование букв
Еще ссылки по теме:

Дано слово. Поменять местами первую из букв а и последнюю из букв о! кто может помчь! C++
Замена букв в строке на сочетание букв C++
Преобразование введенных во входной строке латинских букв в русские в соответствие с правилами транслитерации C++
Напишите программу подсчета суммарного числа букв 'а' и букв 'b' в данной строковой переменной C++
C++ Преобразование всех строчных букв в прописные, а прописных — в строчные

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

Или воспользуйтесь поиском по форуму:
rangerx
1931 / 1540 / 141
Регистрация: 31.05.2009
Сообщений: 2,905
17.03.2012, 02:43     Преобразование букв #8
http://www.cplusplus.com/reference/c...ale/setlocale/
C++
1
2
3
4
5
6
7
#include <clocale>
//...
int main()
{
   std::setlocale(LC_CTYPE, ""); 
   //....
}
таким образом будет установлена текущая локаль системы(по умолчанию используется т.н. классическая локаль("C")). Другие значения, которые может принимать второй параметр функции, зависят от используемого компилятора.
Yandex
Объявления
17.03.2012, 02:43     Преобразование букв
Ответ Создать тему
Опции темы

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