Главная » 2010 » Март » 10 » 1.5.4. Подсчет слов. Упражнение 1.12.
20:01
1.5.4. Подсчет слов. Упражнение 1.12.
Упражнение 1.12. Напишите программу для вывода входного потока по одному слову в строке.
За основу берем предыдущую программу, немного убираем и немного дополняем, получаем следующее:
/* вывод входного потока по одному слову в строке */
#include "stdafx.h"
#define IN 1 /* внутри слова */
#define OUT 0 /* снаружи слова */
int main()
{
int c, state; // символ, состояние
state = OUT;
while ((c = getchar()) != EOF) {
if (c == ' ' || c == '\n' || c == '\t' )
state = OUT;
else if (state == OUT) {
putchar('\n' );
state = IN;
}
putchar(c);
}
}
Результат выполнения:
Просмотров: 3049 |
Добавил: brainfrog
| Теги: программа , подсчет слов , упражнение
| Рейтинг: 5.0 /1
Всего комментариев: 4
Порядок вывода комментариев:
По умолчанию
Сначала новые
Сначала старые
0
я тоже сделал как автор, с одним пробелом, никак не мог убрать этот пробел. А вот этот нашел в инете, только изменил слова немного, на более подходящие для нас.
Код
#define IN 1 #define OUT 0 main() { int c; int state = OUT; while((c = getchar()) != EOF) { if(c == '\t' || c == ' ' || c == '\n'){ if(state == IN) { state = OUT; putchar('\n'); } } else { state = IN; putchar(c); } } }
0
#include<stdio.h>
int main()
{
int i;
while((i=getchar())!=EOF) {
if(i==' '||i=='\t'){
putchar('\n');
}
else {
putchar(i);
}
}
getchar();
return(0);
}
Я конечно могу ошибаться ! но так вроде легче!Прошу написать ваше мнение...
0
Разница в том что этот вариант который попроще при 2 пробелах или табуляциях будет 2 раза \n
Добавлять комментарии могут только зарегистрированные пользователи.
[
Регистрация |
Вход ]