Я хочу написать программу, которая считывает целое число n из стандартного ввода и печатает образец nxn звездочек и тире в форме «X».
N должно быть нечетным, а N> = 5.
мой код :
#include <stdio.h>
int main(void) {
//making sure they enter an odd number >= 5
int endloop = 0;
int size;
while (endloop == 0) {
printf("Enter size:");
scanf("%d", &size);
if (size % 2 == 0 || size < 5) {
printf("Invalid, try again\n");
} else {
endloop = 1;
}
}
int downwards = 0;
while (downwards < size) {
int across = 0;
while (across < size) {
if (downwards == across) {
printf("*");
}
if (across == size - downwards - 1) {
printf("*");
} else {
printf("-");
}
across++;
}
downwards++;
printf("\n");
}
return 0;
}
результат:
Enter size:5
*----*
-*--*-
--**--
-*-*--
*---*-
он должен выглядеть так :
*---*
-*-*-
--*--
-*-*-
*---*
Не могу понять, что я сделал не так. Поперечная строка печатает 6 символов вместо 5, хотя я указал на