srav@73 Ответов: 2

Как мне ... коробка в коробке, так как у меня есть только коробка, но внутренние коробки не заполняются


Идея состоит в том, чтобы взять число в качестве входных данных и напечатать шаблон коробок

Если вход равен 2, то две коробки должны быть напечатаны одна внутри другой

Самая маленькая коробка будет размером 3*3, следующая большая коробка будет 5*5, следующая будет 7*7, так далее и так далее

Для ввода 1 Нарисуйте прямоугольник размером 3*3

Для входа 2 внешняя коробка будет 5*5, внутренняя-3*3

Для входа 3 внешняя коробка будет 7*7, с еще 2 внутренними коробками

Таким образом, для n самая внешняя коробка будет иметь размер n*2 +1 с (n1) внутренними коробками

Все поля будут выровнены по верхнему левому краю, как показано на рисунке

входной формат:

Первая строка ввода содержит число N

выходной формат:

Печать N вложенных ящиков

Ограничения:

1. 0 < N & lt; 25

Что я уже пробовал:

#include<stdio.h>
#include<conio.h>
int main()
{
    int j,i,n;
    scanf("%d",&n);
    for(j=0;j<n-2;j++)>
        printf("-");
    printf("\n");

    for(i=0;i<n;i++)>
    {
        printf("-");
        for(j=0;j<n-2;j++)>
            printf(" ");
        printf("-\n");
    }
    for(j=0;j<n;j++)>
        printf("-");
    printf("\n");
    //}
    return(0);
}

Patrice T

Ты должен объединиться со своим одноклассником.

2 Ответов

Рейтинг:
1

Patrice T

Ты действительно не понимаешь, что тебе нужно делать.
- Возьмите лист бумаги и нарисуйте результат, который вы хотите получить для n= 1, 2, 3, 4 и 5

+---+
|+-+|
|| ||
|+-+|
+---+

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


Рейтинг:
0

OriginalGriff

Я собираюсь дать вам точно такой же ответ, который я дал вашему однокласснику два часа назад:

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

Попробуйте сами, возможно, вы обнаружите, что это не так сложно, как вы думаете!

Если вы столкнетесь с конкретной проблемой, то, пожалуйста, спросите об этом, и мы сделаем все возможное, чтобы помочь. Но мы не собираемся делать все это для вас!

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

***
* *
***

*****
*****
** **
*****
*****

*******
*******
*******
*** ***
*******
*******
*******
И совершенно очевидно, что происходит: все строки сплошные, за исключением центральной, которая содержит один пробел посередине.
Отсюда все довольно просто: одна внешняя петля для рисования каждой линии и две внутренние петли для рисования левой и правой половин линии, но решение напечатать звезду или пробел в середине линии.
Попробуйте: это не так сложно, как вы думаете!