Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/152: Рейтинг темы: голосов - 152, средняя оценка - 4.63
1 / 1 / 0
Регистрация: 07.06.2009
Сообщений: 11

Перевод строки в верхний регистр

07.06.2009, 23:14. Показов 27791. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Препод задал задание написать программу перевода строки в верхний регистр без использования специальных фукций, сам перевод оформить в виде функции. Накидал программу:
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
// Program.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
#include "stdio.h"
#include "conio.h"
#include <string.h>
#include <locale.h>
#include <ctype.h>
#include <malloc.h>
 
 
char* mp(char* st1)
{
    int i=0,j=0;
    int len=strlen(st1);
    while(i<len)
    {    
        if(st1[i]>='a'&& st1[i]<='z') st1[i]-=st1[i]-32;
        i++;
    }
  return st1;
}
int _tmain(int argc, _TCHAR* argv[])//тестер
{
    char* st1="qwerty123";  
    printf("Result: %s",mp(st1));
    _getch();
    return 0;
}
Но она завершается необработанным исключением, не подскажите в чём проблема?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.06.2009, 23:14
Ответы с готовыми решениями:

Перевод строки в верхний регистр
Добрый вечер. Вопрос такой. Есть строка, как превести всё её содержание в верхнему регистру? Брать отдельно каждый символ,...

Перевод текста в верхний регистр
Задание с самого начала было взять из текстового файла и после каждой точки (конец предложения) должен быть пробел. Это я сделала. А вот...

Перевод символа в верхний регистр
код символа , который я ввожу в командой строке, отличается от кода символа в переменной rlow #include &lt;iostream&gt; #include...

15
692 / 383 / 51
Регистрация: 22.01.2009
Сообщений: 1,135
07.06.2009, 23:40
Так строку объяви:
C++
1
char st1[] = "qwerty123";
0
1 / 1 / 0
Регистрация: 07.06.2009
Сообщений: 11
08.06.2009, 08:16  [ТС]
Ага, спасибо. Помогло
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
06.11.2009, 12:30
А если строка уже в верхнем регистре??
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
06.11.2009, 12:48
outoftime, что это Вас заинтересовала такая старая тема?
Ответ на Ваш вопрос: если символ строки уже в верхнем регистре, то он таким же и останется (для этого в строке 18 делается проверка на принадлежность символа к нижнему регистру)
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
06.11.2009, 12:55
C++
1
2
std::string str("kgreiudrbnbnd");
std::transform(str.begin(), str.end(), str.begin(), toupper);
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
06.11.2009, 15:04
niXman без "вспомагательных функций"

надо руками все написать.. А заинтересовало, потому что я забыл как перевести строку в верхний или нижний регистры, а в задаче надо сказать какое слова встречается не к раз, без учета регистра, юзал мап, да и тему эту гуглом нашел..
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
06.11.2009, 15:19
Цитата Сообщение от outoftime Посмотреть сообщение
без "вспомагательных функций"
Смею заметить, это не "вспомагательные функций". Хотя вашу мысль понял.
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
06.11.2009, 18:10
C++
1
2
3
4
5
6
#define FOR(x,y,z) for (int (x) = (y); (x) < (z); ++(x))
//-------------------------------------------
        string s;
//-------------------------------------------
    FOR (i, 0, (int)s.size())
        s[i] = toupper(s[i]);
я обычно так делаю, только подзабыл малость..
0
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
06.11.2009, 21:01
outoftime, toupper это вспомогательная функция )) а ему без неё нада
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
06.11.2009, 21:13
Андрейка,
outoftime, toupper это вспомогательная функция )) а ему без неё нада
кому ему?
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
06.11.2009, 21:25
Андрейка, эту тему находит гугл при поиске по ключу: перевод строки в верхний регистр, это своего рода заметка..
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.11.2009, 00:16
Андрейка, Таким макаром можно сказать что и "int main()" вспомогательная функция
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
07.11.2009, 00:30
niXman, погоди, но ведь ты ее сам пишешь..
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
07.11.2009, 00:33
outoftime, Ты про "int toupper(int)" ? Нет, она входит в комплект C-Library. А вот main() сам пишу(как и все).

Добавлено через 26 секунд
п.с. заканчиваем флуд. а то накажут нас
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
07.11.2009, 00:35
я к чему вел, ему перевод надо самому написать а не STL юзать, вот в чем проблема..

Не по теме:

niXman, ты FreeBSD юзал?

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.11.2009, 00:35
Помогаю со студенческими работами здесь

Перевод всех строчных букв в верхний регистр
Переведите все строчные буквы-символы в верхний регистр

Не работает перевод в верхний регистр с русскими буквами
Не работает перевод в верхний регистр с русскими буквами в VS #include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;string&gt; ...

Перевод содержимого текстового файла в верхний регистр
Собственно вопрос в шапке. Как перевести всё содержимое текстового файла в верхний регистр? Кодировка UTF-8 без BOM (хотя это особо и не...

Кроссплатформенный перевод русских букв в верхний/нижний регистр
Добрый день. В прикрепленном топике описываются способы вывода русских букв на консоль. Но они почти все подвязаны под винду. Более...

Преобразование строки в верхний регистр
#include &lt;iostream&gt; #include &lt;cstring&gt; #include &lt;cctype&gt; #include &lt;string&gt; using namespace std; void StringUpper(char *str); ...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru