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

В строке заменить первую строчную букву на заглавную - C++

Восстановить пароль Регистрация
 
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 14:14     В строке заменить первую строчную букву на заглавную #1
Здравствуйте.
в строке заменить первую строчную букву на заглавную,остальные оставить строчными в русском алфавите.поискала,не нашла функции для замены
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2012, 14:14     В строке заменить первую строчную букву на заглавную
Посмотрите здесь:

C++ Заменить в слове первую букву “A” на символ
C++ В каждом слове заменить первую букву на прописную
Нужно заменить последнюю заглавную букву в строке на слово "Kukushechka" C++
В следующем слове после точки, первую строчную букву заменить на прописную C++
C++ Заменить в файле каждую первую букву слова на прописную
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Abdula
9 / 9 / 1
Регистрация: 28.03.2012
Сообщений: 116
07.04.2012, 14:17     В строке заменить первую строчную букву на заглавную #2
Только самому, копировать первый символ и переводить его в верхний и ставить обратно
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 15:27  [ТС]     В строке заменить первую строчную букву на заглавную #3
и как это сделать

Добавлено через 6 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream.h>
#include <string.h>
void main()
{
char str[];
cout<<"vvedi stroku: ";
cin>>str;
str[0]=toupper(str[0]);
cout<<Ctroka;
cin.get();
cin.get();
}
Добавлено через 7 минут
помогите разобраться
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
07.04.2012, 15:38     В строке заменить первую строчную букву на заглавную #4
Цитата Сообщение от elka Посмотреть сообщение
str[0]=toupper(str[0]);
первый элемент строки заменяется на заглавную(функция toupper);

Цитата Сообщение от elka Посмотреть сообщение
cin.get();
как я понимаю ожидание ввода клавиши

Добавлено через 45 секунд
а разве этот код работает ?
массив безразмерный какой то получается...
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 15:42  [ТС]     В строке заменить первую строчную букву на заглавную #5
нет,не работает
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
07.04.2012, 15:44     В строке заменить первую строчную букву на заглавную #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
 
void main()  {
    int const size = 80;
    char str[size]={0};
    cout<<"Enter str: ";
    cin.getline(str,size);
 
    for(int i = 0; i < size; i++)  {
        if(islower(str[i]))  {
            str[i] = toupper(str[i]);
            break;
        }
    }
    cout<<"Str: "<<str<<endl;
    
}
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 15:55  [ТС]     В строке заменить первую строчную букву на заглавную #7
C++
1
2
3
4
5
6
7
cin>>str;
for (int i=0;i<strlen(str);i++){
str[0]=toupper(str[0]);         }
cout<<"Ctroka";
cin.get();
cin.get();
}
ругается на toupper

Добавлено через 10 минут
как тут можно сделать
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
07.04.2012, 15:59     В строке заменить первую строчную букву на заглавную #8
Цитата Сообщение от elka Посмотреть сообщение
str[0]=toupper(str[0]);
зачем это в цикле ?
если проверяется только один элемент, первый.
по поводу ошибки, неплохо бы увидеть как она выглядит =)
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 16:26  [ТС]     В строке заменить первую строчную букву на заглавную #9
Function 'toupper' should have a prototype

Добавлено через 14 минут
<string.h> включено
m1Rr0r
 Аватар для m1Rr0r
247 / 230 / 15
Регистрация: 05.02.2010
Сообщений: 3,213
Завершенные тесты: 2
07.04.2012, 17:15     В строке заменить первую строчную букву на заглавную #10
#include <iostream>
может это ?
даже незнаю...
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 17:21  [ТС]     В строке заменить первую строчную букву на заглавную #11
ну это тоже написано
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
07.04.2012, 17:25     В строке заменить первую строчную букву на заглавную #12
http://www.cplusplus.com/reference/c...ctype/toupper/

function
toupper
<cctype>
т.е. нужен #include <cctype>
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 17:30  [ТС]     В строке заменить первую строчную букву на заглавную #13
это тоже включено
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
07.04.2012, 17:37     В строке заменить первую строчную букву на заглавную #14
вот в студии компилится и работает:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string.h>
 
using namespace std;
 
void main()
{
  char str[256];
  cout<<"vvedi stroku: ";
  cin>>str;
  str[0]=toupper(str[0]);
  cout<<str;
  cin.get();
  cin.get();
}
У вас не компилируется или не работает? А то непонятно ведь.
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 19:03  [ТС]     В строке заменить первую строчную букву на заглавную #15
нужно в с++ turbo

Добавлено через 32 минуты
помогите,пожалуйста,решить

Добавлено через 8 минут
не выводит строчку

Добавлено через 38 минут
посмотрите кто-нибудь что тут такое
MrCold
851 / 749 / 71
Регистрация: 11.01.2012
Сообщений: 1,942
07.04.2012, 19:39     В строке заменить первую строчную букву на заглавную #16
Сообщение было отмечено автором темы, экспертом или модератором как ответ
elka, пробуйте такую конструкцию , должна сработать
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <iostream.h>
#include <Windows.h>
#include <conio.h>
 
const char smallrus[]= "абвгдеёжзиклмнопрстуфхчшщэюяъыьц";
const char bigrus[] ="АБВГДЕЁЖЗИКЛМНОПРСТУФХЧШЩЭЮЯЪЫЬЦ";
char buff[256];
 
 char *rus(char *str)
{
              if(!str)return 0;
              CharToOem(str,buff);
              return buff;
}
 
 char toupperFun(char ch){
 
             if(!ch)    return 0;       
             int i = 0;
 
            while(smallrus[i]) {
                 if(ch == smallrus[i])
                 ch = bigrus[i];
            i++;
       }
            return ch;
 }
 char tolowerFun(char ch){
 
            if(!ch) return 0;       
            int i = 0;
 
            while(bigrus[i]) {
                  if(ch == bigrus[i])
                  ch = smallrus[i];
            i++;
       }
           return ch;
 }
 
 int ispunctFun(const char ch){
     const char *punct = " >,<'.\-/[?]!}|:{;";
 if(!ch)    return 0;
            int loop = 0;
            
            while(*punct)
            if(ch == *(punct++))
            loop ++;
            return loop;            
             
 }
 
 main(){
 
 clrscr();
    int i = 0;
    int loop = 1;
    char str[]="  пАпа у Васи силеН В МАТЕМАТИКЕ  ";
 
     for(i = 0;str[i] != '\0';i++){
 
              if(loop)  str[i] = toupperFun(str[i]);
              if(!loop) str[i] = tolowerFun(str[i]);
              if(!ispunctFun(str[i]))   loop = 0;
     }
        cout << rus(str);
        
      getch();
 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2012, 20:14     В строке заменить первую строчную букву на заглавную
Еще ссылки по теме:

C++ Заменить каждую первую букву слов, начинающихся с гласной буквы, на прописную
Каждую заглавную букву заменить строчной буквой, пару букв "ки" заменить на "ю" C++
C++ Как записать строчную букву в заглавную?

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

Или воспользуйтесь поиском по форуму:
elka
1 / 1 / 0
Регистрация: 31.03.2012
Сообщений: 38
07.04.2012, 20:14  [ТС]     В строке заменить первую строчную букву на заглавную #17
а проще нет ничего?
Yandex
Объявления
07.04.2012, 20:14     В строке заменить первую строчную букву на заглавную
Ответ Создать тему
Опции темы

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