Ввести несколько предложений в отдельные строки - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Необходимо ввести несколько предложений в отдельные строки, но каждой отдельное слово помещается в отдельную строку. Например,
#include <stdio.h>
 
void main()
{
    char str1[100], str2[100], str3[100];
 
    printf("Enter the first string:\n");
    scanf("%s", str1);
 
    printf("Enter the second string:\n");
    scanf("%s", str2);
 
    printf("Enter the third string:\n");
    scanf("%s", str3);
 
    printf("The first string:\n%s\n", str1);
    printf("The second string:\n%s\n", str2);
    printf("The third string:\n%s\n", str3);
}
Результат выполнения программы представлен на скрине...

Решение задачи: «Ввести несколько предложений в отдельные строки»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define LEN 1024
#define WHITESPACE " \t\n"
 
int main(int argc, char *argv[])
{
    char buf[LEN], *ptr;
    size_t nth = 0;
    
    printf("Enter a line: ");
    fflush(stdout);
    
    fgets(buf, LEN, stdin);
    
    printf("You've entered: %s\n", buf);
 
    for(ptr = strtok(buf, WHITESPACE); ptr != NULL; ptr = strtok(NULL, WHITESPACE))
        printf("Word #%02d: %s\n", ++nth, ptr);
    
    exit(0);
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек: stdio.h, stdlib.h, string.h
  2. Определение констант: LEN (длина строки в символах), WHITESPACE (строка, содержащая символы пробела, табуляции и переноса строки)
  3. Ввод строки с помощью функции fgets в буфер buf
  4. Вывод введенной строки с помощью функции printf
  5. Разделение строки на слова с помощью функции strtok, разделение происходит по символам пробела, табуляции и переноса строки
  6. В цикле for происходит вывод каждого слова на отдельной строке с помощью функции printf, при этом увеличивается счетчик nth, который определяет номер слова
  7. Конец программы достигается при достижении условия exit(0)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.733 из 5
Похожие ответы