Хорошо, мне нужно, чтобы выходные данные были похожи на ромб звездочек, причем каждый ряд увеличивался на 2 звездочки, пока в середине не появилось 9 звездочек ... и затем ряды уменьшились. Функция main должна быть:
int main (void){
int i;
i = 0;
while (i < 5){
printline (4-i, i*2+1);
i = i + 1;
}
i = 3;
while (i >= 0) {
printline (4-i, i*2+1);
i = i - 1;
}
return 0;
}
Теперь я должен определить функцию printline для печати одной строки рисунка при каждом его вызове. Требуется 2 аргумента, количество пробелов и количество звездочек, которые должны быть напечатаны в строке. Используйте счетчик с контролируемым повторением, чтобы напечатать соответствующее количество пробелов и еще раз, чтобы напечатать соответствующее количество звездочек.
char print_line (int spaces, int stars){
for (int i = 4; i>=spaces; i--){
printf(" ");
}
for (int i = 1; i<=stars; i+=2){
printf("*");
}
printf("\n");
}
Woohoo! Я почти закончил! Выводы вроде как правильные, за исключением того, что вместо строки с 4 пробелами со звездой, строки с 3 пробелами с 3 звездами и т. Д., Вплоть до пробелов и 9 звезд (и затем наоборот) ... Я получаю строку со звездой, линией с пробелом и 2 звездами, линией с двумя пробелами, тремя звездами и т. д., до 4 пробелами по пять звезд (и затем обратными) ...
Причина в том, что printline отличается, потому что у меня иногда возникают проблемы с написанием, и я продолжал получать курсив всякий раз, когда пытался написать ...