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

Неправильно отображаются введенные в русской раскладке строки

03.05.2022, 11:29. Показов 1110. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
#include <stdio.h>
#include <string.h>
#include <clocale>
#pragma warning (disable: 4996)
//Создаём структуру (имя, фамилия и день рождения учеников, а также сегодняшнюю дату)
struct pupils {
    char name[30];
    char surname[30];
    char date[15];
    char birthday[30];
};
 
int main() {
    setlocale(LC_ALL, "RUS");
 
    //Пишем переменные и массивы
   struct pupils pupils_list[100];
   int n;
 
   //Запрашиваем ввод (имени, фамилии, количество и дня рождения учеников, а также сегодняшнюю дату)
   printf("Введите количество учеников:"); scanf_s("%d", &n);
 
   for (int i = 0; i < n; i++) {
       printf("Введите имя ученикa:"); scanf("%s", &pupils_list[i].name);
       printf("Введите фамилию ученика:"); scanf("%s", &pupils_list[i].surname);
       printf("Введите дату рождения ученика в формате ДД.ММ.ГГ:"); scanf("%s", &pupils_list[i].birthday);
   }
   printf("Введите сегодняшнюю дату в формате ДД.ММ.ГГ:"); scanf("%s", &pupils_list[0].date);
   for (int i = 0; i < n; i++)
           if (strcmp(pupils_list[i].birthday, pupils_list[0].date) == 0)
               {
           strcpy(pupils_list[i].birthday, pupils_list[0].date);
           printf("День рождение сегодня у:\n %s\n %s,\n %s ", pupils_list[i].name, pupils_list[i].surname, pupils_list[i].birthday);
               }
   }
Почему когда вводишь имя и фамилию ученика на русском, потом выводит на экран кириллицу в (33 строке)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.05.2022, 11:29
Ответы с готовыми решениями:

Почему неправильно отображаются введенные русские буквы?
Почему вводя русские буквы , функция gets выдаёт другие символы? int main() { setlocale(LC_ALL, &quot;Russian&quot;); char str; ...

Неправильно отображаются в DataGridView введенные данные
private void button1_Click(object sender, EventArgs e) { ...

VB кодир. текст на русской раскладке
Товарищи, помоги пожалуйста! 1)Почему у меня в VB6 не воспринимается текст написан.на русск.раскладке например, пишу ...

3
 Аватар для igorrr37
2889 / 2036 / 992
Регистрация: 21.12.2010
Сообщений: 3,788
Записей в блоге: 9
03.05.2022, 11:35
C++
1
system("chcp 1251 > 0");
1
0 / 0 / 0
Регистрация: 08.04.2022
Сообщений: 80
03.05.2022, 13:03  [ТС]
igorrr37, Тогда меняются слова в printf на кирилицу
0
Модератор
Эксперт С++
 Аватар для zss
13773 / 10966 / 6491
Регистрация: 18.12.2011
Сообщений: 29,244
03.05.2022, 13:07
Лучший ответ Сообщение было отмечено Ugrok как решение

Решение

1. setlocale убрать.
2. system("chcp 1251 > NUL");
3. После открытия окна консоли в ее свойствах выбрать шрифт Lucida Console

p.s.
Цитата Сообщение от Ugrok Посмотреть сообщение
#include <clocale>
Раз программа на Си, то
C++
1
#include <locale.h>
Но, в принципе, теперь этот заголовок вообще не нужен.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.05.2022, 13:07
Помогаю со студенческими работами здесь

Назначить # вместо № в русской раскладке
Здравствуйте. Часто приходится печатать символ # в режиме русской раскладки. Приходится каждый раз переключаться на английскую, ставить #...

keyPressEvent() при русской раскладке
Как сделать, чтобы keyPressEvent() обрабатывал нажатие клавиши при русской раскладке?

Горячие клавиши в русской раскладке
В англ раскладке, горячие клавиши отрабатывают, а с русской не хотят. Чтобы что-то скопировать например, надо переключить раскладку. Это...

Правый Alt в русской раскладке
Есть задача. Сверстать клавиатуру и под ней input. С помощью js сделать так, чтобы при нажатии клавиш на свёрстанной клавиатуре...

Имитация нажатия клавиш в русской раскладке
Здравствуйте! Требуется имитировать нажатие клавиши ю( в русской раскладке). keybd_event('ю',0,0,0); //в русской раскладке не...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru