Drukuj gwiazdkę ('*') w C z zagnieżdżonymi pętlami?

Chcę móc wydrukować taki diament, gdy użytkownik wprowadzi 5 dla diamentu. Ale działa również dla każdej wartości, która jest nieparzysta i większa niż 0.

Mam kod, który działa, aby zrobić diament dla danych użytkownika 5, ale nie będzie działał dla wszystkich wejść nieparzystych.

<code> half = (size/2)+1;

 for (a=1; a <=  half ; a++) /*top to mid row of diamond*/
   {
     for (b=a; b<half;b++)
       {
     printf(" ");
       }
     for (c= size -2* a; c <=  half; c++)
       {
     printf("*");
       } 
      printf("\n");
   }
 for (a = 1; a < half;a++)
   {
     for (b = a; b>0;b--)
       {
     printf(" ");
       }
     for (c = size-2*a; c >0 ;c--)
       {
     printf("*");
       }
     printf("\n");
   }


  return 0;
}
</code>

Każda pomoc byłaby bardzo mile widziana. Dziękuję.

Mikrofon

questionAnswers(11)

yourAnswerToTheQuestion