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

Ошибка вывода букв - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массивы(Экзаменационная прога) http://www.cyberforum.ru/cpp-beginners/thread276507.html
Помогите пожалуйста прога на экзамене попалась теперь надо сделать. Задание: Дан одномерный целочисленный массив отсортированный в порядке не убывания необходимо вставить элемент x(вводиться...
C++ БНФ в языке C++ мне для начала хотелось бы узнать что это, а лучше источники, где можно почитать подробно(книги, сайты) помогите плиз) http://www.cyberforum.ru/cpp-beginners/thread276506.html
C++ Присвоение значения в классе!!
тут два класса как вывести на экран значение углов в минутах и градусах?????????? Скажите , а то с ума схожу уже я!! #include <math.h> #include <iostream> #include "class.h" #include...
C++ Вставка нового узла в двусвязный список
процедура вставки нового узла. Вот сделала вставку в голову и в хвост. но проблема с процедурой вставки узла после текущего узла и перед ним. Помогите разобраться. #include <iostream> #include...
C++ Задано два натуральных числа: m и n. Определить, сколько цифр содержится в десятичной записи числа m^n. http://www.cyberforum.ru/cpp-beginners/thread276475.html
C++ Калькулятор, перевести код на С++ private void button4_Click(object sender, EventArgs e) { try { decimal val = Decimal.Parse(textBox1.Text); ... подробнее

Показать сообщение отдельно
bossman
4 / 4 / 0
Регистрация: 20.06.2010
Сообщений: 147

Ошибка вывода букв - C++

14.04.2011, 19:02. Просмотров 366. Ответов 2
Метки (Все метки)

Использую код для русских букв. На первой итерацци правильно отображает русский текст, а потом почемуто путает буквы. Сначала выдает как надо:"\nВведите через пробел номера вершин,\
между которыми определяется путь", вторая строка:"\nВведиве зеаез паобел номеаа веаиин,\..." То есть почему то ошибка для букв после "п" вверх по алфавиту на 16 букв
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
char *rus(char *st)
{
 unsigned char *p=st;
  while(*p)
  {
    if(*p>191)
      if (*p<=239)
        *p-=64;// А,Б,В ... Я,а,б,в ... п
      else
        *p-=16; // р ... я
    p++;
  }
 
  return st;
}
int _tmain(int argc, _TCHAR* argv[])
{
int n=0;
while(n++<2)
{
        printf(rus("\nВведите через пробел номера вершин,\
между которыми определяется путь"));
}
getche();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru