Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
1 / 1 / 0
Регистрация: 20.01.2013
Сообщений: 54
1

Каждое слово вывести с новой строчки

18.02.2013, 17:45. Показов 3771. Ответов 6
Метки нет (Все метки)

Составить программу, которая копирует на экран, текст с клавиатуры и располагает каждое слово в новую строчку. Учитывать что между словами может быть несколько пробелов, в этом случае между словами не должно пропускаться несколько строк.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2013, 17:45
Ответы с готовыми решениями:

Вывести каждое слово предложения в новой строке
Помогите, пожалуйста, вывести каждое слово предложение на новой строке?

Прочесть предложение и написать каждое слово в новой строке
#include <stdio.h> #define OUT 0 #define IN 1 /* Требование: составить программу, которая...

Каждое слово строки вывести с новой строчки.
Нужно чтобы после того как пользователь ввел предложение , каждое слово выводилось с новой строчки...

Вывести на печать каждое слово строки с новой строчки
Дана строка, содержащая пробелы. Вывести на печать каждое слово этой строки с новой строчки....

6
...
1802 / 1267 / 934
Регистрация: 12.02.2013
Сообщений: 2,058
19.02.2013, 05:50 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
36
37
38
39
40
41
42
43
44
45
46
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <stdbool.h>
 
//----------------------------------------------//
bool GetWord(const char text[], const char** begin, const char** end)
{
   for (; *text && !isalnum(*text); ++text);
 
   *begin = text;
 
   for (; *text && isalnum(*text); ++text);
 
   *end = text;
 
   return *begin != *end;
}
//----------------------------------------------//
void PrintWords(const char text[])
{
   const char* begin;
   const char* end;
 
   while (GetWord(text, &begin, &end))
   {
      fprintf(stdout, "[%.*s]\n", end - begin, begin);
      text = end;
   }
}
//----------------------------------------------//
 
#define TEXT_SIZE 256
 
int main(int argc, const char* argv[])
{
   fprintf(stdout, "input string: ");
 
   char text[TEXT_SIZE] = { 0 };
 
   fgets(text, TEXT_SIZE, stdin);
 
   PrintWords(text);
 
   return EXIT_SUCCESS;
}
0
1 / 1 / 0
Регистрация: 20.01.2013
Сообщений: 54
22.02.2013, 16:36  [ТС] 3
Не работает, а через какой компилятор ты запускаешь?
0
158 / 157 / 81
Регистрация: 31.12.2012
Сообщений: 254
22.02.2013, 18:25 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Вот:

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
#include <stdio.h>
#include <string.h>
 
int main(void)
{
   char str[80];
   char* t;
   
   printf("\n");
   printf("\nVvedite stroku:\n");
    
   gets(str);
   t=strtok(str," ,");
   printf("\n");
    
   while (t != NULL) {
      printf("\nSlovo: %s",t);
      t = strtok (NULL, " ,");
   }
   
   printf("\n");
    
   return 0;
}
Миниатюры
Каждое слово вывести с новой строчки  
0
...
1802 / 1267 / 934
Регистрация: 12.02.2013
Сообщений: 2,058
22.02.2013, 19:22 5
Цитата Сообщение от Vitekiss Посмотреть сообщение
Не работает, а через какой компилятор ты запускаешь?
:-D Сами понимаете что написали?:
1. Не работает. Что не работает? Я не телепат!
2. Я знаю только один компилятор который может работать как интерпретатор - это TinyC. Все остальные программу не запускают, а компилируют! Запускаете вы полученный исполняемый файл.

Компиляторы, которыми пользуюсь и проверяю на всех:
Tiny C Compiler 0.9.26
TDM-gcc-4.7.1
Digital Mars C/C++ 8.56

Это вы мне скажите что за барахлом вы пользуетесь, которое не может типичный C код откомпилировать.

Добавлено через 7 минут
И это не работает?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
11060 / 7016 / 1659
Регистрация: 25.07.2009
Сообщений: 12,790
22.02.2013, 20:52 6
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от anmartex Посмотреть сообщение
И это не работает?
А это без поддержки ANSI C 99 и не будет - stdbool.h только там появилось...

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <string.h>
 
#define DELIM " \t\n"
 
int main(void) {
    char buf[BUFSIZ], * p;
    
    while ( printf("String: ") && fgets(buf, BUFSIZ, stdin) && *buf != '\n' )
        for ( p = strtok(buf, DELIM); p; p = strtok(NULL, DELIM) )
            printf("%s\n", p);
    
    return 0;
}
0
1 / 1 / 0
Регистрация: 20.01.2013
Сообщений: 54
25.02.2013, 16:41  [ТС] 7
Спасибо

Добавлено через 2 минуты
Цитата Сообщение от anmartex Посмотреть сообщение
Это вы мне скажите что за барахлом вы пользуетесь, которое не может типичный C код откомпилировать.
я пользуюсь целым комбайном Visual Studio 2010 и обычным компилятором, самым просто что есть это Dev C/C++
1
25.02.2013, 16:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2013, 16:41

Каждое слово в строке распечатать с новой строчки экрана
Структурированные типы данных (строковый тип) Каждое слово в строке распечатать с новой строчки...

Задана строка K. Вывести каждое слово из строки в отдельности (каждое в новой строке)
Есть задача, которая не поддается объяснению и понятию, но огромная просьба помочь рассмотреть ее:...

Вывести на экран каждое слово с новой строки
которая из текста выводит отдельно слова каждое с новой строки например мама мыла раму (должно...

Каждое слово предложения вывести с новой строки в листбокс
Дано предложение, каждое слово предложения вывести с новой строки в листбокс

Слова разбиты пробелами. Вывести на экран каждое слово с новой строки
Слова разбиты пробелами. Вывести на экран каждое слово с новой строки. Например, &quot;как весело...

Напечатать каждое слово с новой строки
Задача: написать программу, принимающую вводимый пользователем текст, и преобразовывающая его так,...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru