上下金字塔就是几个循环的事,
#include <stdio.h>
int main()
{
int i,j,k;
int n=0;
while (scanf("%d",&n) != EOF)
{
for(i=1;i<=n;i++)//代表层数
{
for(j=1;j<=n-i;j++)//决定有多少空格
{
printf(" ");
}
for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
for(i=n-1;i>=1;i--)//代表层数
{
for(j=n-i;j>=1;j--)//决定有多少空格
{
printf(" ");
}
for(k=2*i-1;k>=1;k--)
{
printf("*");
}
printf("\n");
}
}
return 0;
}
int main()
{
int i,j,k;
int n=0;
while (scanf("%d",&n) != EOF)
{
for(i=1;i<=n;i++)//代表层数
{
for(j=1;j<=n-i;j++)//决定有多少空格
{
printf(" ");
}
for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
for(i=n-1;i>=1;i--)//代表层数
{
for(j=n-i;j>=1;j--)//决定有多少空格
{
printf(" ");
}
for(k=2*i-1;k>=1;k--)
{
printf("*");
}
printf("\n");
}
}
return 0;
}
要注意在反转的时候,实际上是少了一层的