Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 08.04.2015, 15:20   #1
zamanov
Новичок
Джуниор
 
Регистрация: 08.04.2015
Сообщений: 2
По умолчанию Вывод на печать символа ввода и его десятичное значение

Основной вопрос задачи - вывод непечатаемых символов (тех что меньше пробела в кодировке ASCII).
Вот полный текст задачи: Напишите программу, которая считывает поток символов до момента обнаружения EOF. Программа выводит на печать каждый символ и его десятичный код. Если встречается непечатаемый символ новой строки или табуляции, печатается \n or \t. используйте запись, выполняемую с помощью управляющих символов.
Далее пишется Например ASCII 1 соответствует комбинации ctrl+A, что отображается как ^A, а код А - ctrl+A +64. Далее просится выводить по десять пар, но начинать с новой строки каждый раз если встречается символ новой строки.....
Меня завело в тупик вот это последнее пояснение.... решить эту задачу я смог методом исключения (для случая табуляции и новой строки).....но меня терзает мысль что я просто так и не понял правильно условие...
Подскажите как используется в данном примере условие замены ctrl+A
Код:
#include <stdio.h>
 
 
int main (void)
 
{      int ch;
       int i = 0;
 
       while ((ch = getchar()) != EOF)
            {     if (ch >= ' ')
                   {
 
                      i++;
                      putchar(ch);
                      printf("-%d,", ch);
                   }
                               else if (ch == '\n')
                               {
                                  printf("\\n");
                                  printf("-%d,", ch);
                                  printf("\n");
                                  i = 0; }
                                    else if (ch == '\t')
                                {
                                  printf("\\t");
                                  printf("-%d,", ch);
                                  i++;
 
                                 }
 
 
                  if (i == 10)
                   {
                    printf("\n");
                    i = 0;}
            }
 
return 0;
 
}
zamanov вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi Вывод текста и последующая его печать. Predator_x2014 Помощь студентам 4 13.10.2014 11:34
десятичное значение fkty Помощь студентам 2 10.12.2013 23:35
Значение символа? bhgbx Помощь студентам 1 21.03.2011 17:12
Запрет ввода символа(C++,Console) sawer5 Общие вопросы C/C++ 3 10.11.2009 23:25


07:12.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.