打印这个图形用for循环做;
原图形为:
5
454
34543
2345432
123454321
2345432
34543
454
5
底下是我打的代码,太繁琐,有比较简单的或者压缩下:
#include<stdio.h>
void main()
{
int a,b,c,d;
int aq,f;
printf("请输入一个数(1~35): ");
scanf("%d",&aq);
for(a=0;a<aq;a++)//行数
{
f=aq;
for(b=1;b<=aq-a-1;b++)//空格数
{
printf(" ");
}
for(c=1;c<=a+1;c++)//左边数字数
{
printf("%d",f-a);
f++;
}
for(d=1;d<=a;d++)//右边数字数
{
printf("%d",f-a-2);
f--;
}
printf("\n");
}
for(a=0;a<=aq;a++)//行数
{
f=aq;
for(b=1;b<=a+1;b++)//空格数
{
printf(" ");
}
for(c=1;c<=aq-a-1;c++)//左边数字数
{
printf("%d",aq-f+a+2);
f--;
}
for(d=1;d<aq-a-1;d++)//右边数字数
{
printf("%d",aq-f+a);
f++;
}
printf("\n");
}
}