Стихотворный текст (в строке не более 80 символов) имеет четырёхстрочную строфу.
Записать его «лесенкой» (по одному слову в строке), вставляя пустую строку после
каждого четверостишья. Помогите реализовать на языке программирования С.
C/C++
Задача на строки в Си
c
#include <stdio.h>
int main() {
printf("Строка\n\n");
printf("пустая\n\n");
printf("строка\n\n");
printf("после\n\n");
printf("каждого\n\n");
printf("четверостишья.\n\n");
return 0;
}
#include <stdio.h>
int main() {
printf("Строка\n\n");
printf("пустая\n\n");
printf("строка\n\n");
printf("после\n\n");
printf("каждого\n\n");
printf("четверостишья.\n\n");
return 0;
}
#include
#include
int main()
{
// Стихотворный текст
char text[] = "Я помню чудное мгновенье:\n"
"Передо мной явилась ты,\n"
"Как мимолетное виденье,\n"
"Как гений чистой красоты.\n"
"\n"
"В томленьях грусти безнадежной,\n"
"В тревогах шумной суеты,\n"
"Звучал мне долго голос нежный\n"
"И снились милые черты.\n";
// Переменная для хранения указателя на текущее слово
char *word;
// Переменная для хранения счетчика строк
int line_count = 0;
// Получаем первое слово в тексте
word = strtok(text, " \n");
// Повторяем, пока не достигнем конца текста
while (word != NULL)
{
// Выводим текущее слово на экран
printf("%s\n", word);
// Увеличиваем счетчик строк
line_count++;
// Получаем следующее слово в тексте
word = strtok(NULL, " \n");
// Если текущий счетчик строк делится на четыре без остатка, выводим пустую строку
if (line_count % 4 == 0)
{
printf("\n");
}
}
return 0;
}
графически как это выглядит? Однозначно пример приведите
Следующий код на языке программирования C должен помочь в решении вашей задачи.
Здесь мы считываем исходный текст, а затем обрабатываем каждое слово по-отдельности, печатая его в отдельной строке. Пустая строка вставляется после каждого четверостишья.
#include <stdio.h>
#include <string.h>
int main() {
char text[80], *word;
int count = 0;
while(fgets(text, sizeof(text), stdin) != NULL) {
word = strtok(text, " \n");
while(word != NULL) {
printf("%s\n", word);
word = strtok(NULL, " \n");
count++;
if(count % 4 == 0) {
printf("\n"); // Если прошло 4 стихотворений, печатаем новую строку
}
}
}
return 0;
}
Обратите внимание, что входной текст считывается из стандартного ввода (`stdin`), поэтому вы можете вводить текст в консоли или перенаправлять его из файла. Используйте символ новой строки (`\n`) для разделения строк стихотворения. Программа разделяет каждую строку на слова и печатает их отдельно, вставляя пустую строку каждые 4 слова.
Также учтите, что задача сформулирована очень общо, поэтому вы можете столкнуться с трудностями в ее внедрении, в зависимости от точных требований и формата входных данных.
Здесь мы считываем исходный текст, а затем обрабатываем каждое слово по-отдельности, печатая его в отдельной строке. Пустая строка вставляется после каждого четверостишья.
#include <stdio.h>
#include <string.h>
int main() {
char text[80], *word;
int count = 0;
while(fgets(text, sizeof(text), stdin) != NULL) {
word = strtok(text, " \n");
while(word != NULL) {
printf("%s\n", word);
word = strtok(NULL, " \n");
count++;
if(count % 4 == 0) {
printf("\n"); // Если прошло 4 стихотворений, печатаем новую строку
}
}
}
return 0;
}
Обратите внимание, что входной текст считывается из стандартного ввода (`stdin`), поэтому вы можете вводить текст в консоли или перенаправлять его из файла. Используйте символ новой строки (`\n`) для разделения строк стихотворения. Программа разделяет каждую строку на слова и печатает их отдельно, вставляя пустую строку каждые 4 слова.
Также учтите, что задача сформулирована очень общо, поэтому вы можете столкнуться с трудностями в ее внедрении, в зависимости от точных требований и формата входных данных.
#include
int main() {
char* poem = "Стихи написаны\nв четыре строки,\nв каждой по четыре\nслова с глубины души.";
char* token = strtok(poem, " \n");
int count = 0;
while (token != NULL) {
printf("%s\n", token);
count++;
if (count % 4 == 0) {
printf("\n");
}
token = strtok(NULL, " \n");
}
return 0;
}
Похожие вопросы
- Строки в си, задача
- Помогите решить задачу на структуры в Си.
- Нужно не выводить пробел в конце строки. язык си (Андрей, даже ваш вариант сайт считает не рабочим... )
- Помогите пожалуйста с задачей со строками на С++
- Структуры и строки в си
- Строки в СИ
- Помогите решить задачу на языке программирования Си, пожалуйста
- Задача на языке программирования СИ на тему матрицы
- Задача про строки C++(выполнить нужно внутри 1ой функции)
- Помогите с решением задачи на языке СИ