ソリューション:
- 印刷グラフィックスは、二重ループでなければなりません。
- 上記ライン星の各々は、より徐々に、徐々に少なく各行を下記する2環状基、トップチューブ、以下チューブでなければなりません。
- したがって、最初の4つのラインループ条件I <(N + 1)/ 2上記の重み。
- 最初の4つのライン宇宙法:最初の行スペースの三対、スペースの二対の2行目、3行目空間の一組、第4行ありません。7/2 = 3およびiが、0から3になるようにN / 2を考える - 私。
- 最初の4行スター法:1 3 5 7、I 0から3までは、その2 * I + 1を考えます
- ここでのように。
この方法の一つ:
#include <stdio.h>
int main()
{
int n, i, j;
scanf("%d", &n);
for (i = 0; i < (n + 1) / 2; i++)
{ //前四行。
for (j = 0; j < n / 2 - i; j++)
printf(" ");
for (j = 0; j < 2 * i + 1; j++)
printf("* ");
printf("\n");
}
for (i = 1; i <= (n - 1) / 2; i++)
{ //后三行。
for (j = 0; j < i; j++)
printf(" ");
for (j = 0; j < n - 2 * i; j++)
printf("* ");
printf("\n");
}
return 0;
}
方法2:
#include <stdio.h>
int main()
{
int n, i, j;
scanf("%d", &n);
for (i = 0; i < n / 2 + 1; i++)
{
for (j = 0; j < n / 2 - i; j++)
printf(" ");
for (j = 0; j < (i + 1) * 2 - 1; j++)
printf("* ");
printf("\n");
}
for (i = n / 2; i > 0; i--)
{
for (j = n / 2 - i + 1; j > 0; j--)
printf(" ");
for (j = i * 2 - 1; j > 0; j--)
printf("* ");
printf("\n");
}
return 0;
}