打印菱形图案

一、

 

#include <stdio.h>
#define abs(x) ((x)>0?(x):-(x))
int main()
{
int n,i,j;
scanf("%d",&n);
for(i=-n;i<=n;i++)
{
for(j=1;j<=abs(i);j++) printf(" ");
for(j=1;j<=2*n+1-2*abs(i);j++)
printf("*");
printf("\n");
}
}

 

二、

#include<stdio.h>
#include<math.h>
int main()
{
int n,i,j,k;
scanf("%d",&n);
for(i=-(n-1); i<=(n-1); i++)
{
for(j=-(n-1); j<=(n-1); j++)
{
if(i==0||j==0)
printf("1");
else if( abs(i) + abs(j) <= (n-1))
printf("%d",abs(i)+abs(j));
else
printf(" ");
}
printf("\n");
}
}

 

 

三、

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int n,i,j;
scanf("%d",&n);
for(i=-(n/2);i<=n/2;i++)
{
if(i==-(n/2)||i==(n/2))
{
if(i==-(n/2))
{
for(j=1;j<=n;j++)
{
printf("*");
}
printf("\n");
}

else
{
for(j=1;j<=n;j++)
{
printf("*");
}
}
}
else
{
for(j=1;j<=abs(i)+1;j++) printf("*");
for(j=1;j<=(n-2*(abs(i)+1));j++) printf(" ");
for(j=1;j<=abs(i)+1;j++) printf("*");
printf("\n");
}
}
return 0;
}

posted @ 2020-05-31 12:08  是小小怪吖  阅读(288)  评论(0)    收藏  举报