Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > возврат символа \r в десят.


Автор: ferz721 7.2.2011, 20:28
програма должна считать пробелы и зменять <1 одним пробелом.
Код



5.#include <stdio.h>        1.9 стр 33
#include <stdlib.h>
#define dw 2
int main()
{
    int c, nl = 0;
    char ch = '32';
    char ch1;
    while((c = getchar()) != EOF)
    {
    if(c == ch)
    {
    ++nl;
    if(nl <= dw)
    {
    с = 'как удалить символ'                        ????
    }
    }
    ch1 = c;
    putchar(ch1);
    }
  return 0;
}

можно представить в десятичной системе символ \r? какое ? или \b

Автор: mes 7.2.2011, 20:51
'\r' и '\b'

Добавлено через 1 минуту и 9 секунд
Цитата(ferz721 @  7.2.2011,  19:28 Найти цитируемый пост)
 char ch = '32'

32 без кавычек, т.е  =32;  или, что удобнее и нагляднее = ' ';

Добавлено через 3 минуты и 4 секунды
Цитата(ferz721 @  7.2.2011,  19:28 Найти цитируемый пост)
програма должна считать пробелы

считать где ? в строке ? а где строка то ?


Автор: ferz721 7.2.2011, 21:03
Цитата

'\r' и '\b'
 так не работает, пытался
Цитата

считать где ? в строке ? а где строка то ?

((c = getchar()) != EOF)

Автор: mes 7.2.2011, 21:07
Цитата(ferz721 @  7.2.2011,  20:03 Найти цитируемый пост)
((c = getchar()) != EOF) 

Цитата(ferz721 @  7.2.2011,  19:28 Найти цитируемый пост)
с = 'как удалить символ'            

нужно просто не запоминать его в дальнейшем :

Цитата(ferz721 @  7.2.2011,  19:28 Найти цитируемый пост)
 putchar(ch1)


хотя обычно вначале считывают все данные пользователя, а потом их обрабатывают, а не на лету по-символьно..

Добавлено через 2 минуты и 6 секунд
Цитата(ferz721 @  7.2.2011,  20:03 Найти цитируемый пост)
 так не работает, пытался

что значит не работает ? 


Автор: ferz721 7.2.2011, 21:18
Код

#include <stdio.h>
#include <stdlib.h>
#define dw 2
int main()
{
    int c, nl = 0;
    char ch = 32;
    while((c = getchar()) != EOF)
 {
      //  x;
    if(c == ch)
    {++nl;
    if(nl>= dw)
     {
        nl--;
        continue;
        //goto x;}
     }
    }
    char ccc;
       ccc = c;
    putchar(ccc);
}
  return 0;
}
вот другой путь решения задачи почти получается, в чем сдесь ошибка?

Цитата



project c++\1\task\main.c|7|warning: overflow in implicit constant conversion|
project c++\1\task\main.c|16|error: stray '\361' in program|
project c++\1\task\main.c|16|error: expected expression before '=' token|
||=== Build finished: 2 errors, 2 warnings ===|
Цитата

хотя обычно вначале считывают все данные пользователя, а потом их обрабатывают, а не на лету по-символьно..

условие задачи

Автор: mes 7.2.2011, 22:00
Цитата(ferz721 @  7.2.2011,  20:18 Найти цитируемый пост)
 stray '\361' in program|

где то кириллица прокралась в текст программы smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)