#c #cs50
#c #cs50
Вопрос:
Этот код будет принимать пользовательский ввод и использовать его для построения блоков. Ввод числа от 1 до 8 должен напечатать что-то вроде этого.
###
###
###
Я хочу, чтобы он принимал целое число от пользователя и вместо этого печатал блоки следующим образом. Допустим, пользователь вводит число 5. В настоящее время вы получите это.
#####
#####
#####
#####
#####
Однако я хочу, чтобы это было сделано.
#
##
###
####
#####
Кто-нибудь может помочь мне понять, как это реализовать?
#include <cs50.h>
#include <stdio.h>
int main(void)
{
int n;
do
{
n = get_int("Size: ");
}
while (n < 1 || n > 8);
for (int i = 0; i < n; i )
{
for (int j = 0; j < n; j )
{
printf("#");
}
printf("n");
}
}
Комментарии:
1. внешний цикл имеет значение 5, поэтому индекс составляет 0,1,2,3,4, и вы хотите вывести 1,2,3,4,5 метки. таким образом, внутренний цикл должен считать i 1 количество раз, да? не n раз, да? дает вам 1,2,3,4,5 баллов за внешний цикл
Ответ №1:
изменить for (int j = 0; j < n; j )
Для for (int j = 0; j <= i; j )
Количество #
будет увеличиваться с каждым циклом по мере i
увеличения