C
在 语言学习中我们会遇到各种输出图形的题目,下面我们就
来看一些这种题目。
一、编写程序输出下图所示的图形。
1 2 3 11
() () () ( )
i j k
下面我们分别以 、、 分别表示行数,空格数,星号数。
1 i j k (2) i j k (3)i j k
()
1 0 1 1 6 1 1 0 9
2 0 2 2 5 2 2 1 7
3 0 3 3 4 3 3 2 5
4 0 4 4 3 4 4 3 3
5 0 5 5 2 5 5 4 1
6 0 6 6 1 6 j< i-1
7 0 7 7 0 7 k< 11-2*i
K< i j< 7-i
K< i
for
发现行数、空格、星号有如上关系,用 循环便可实现。
1
()
#include "stdio.h"
voidmain()
{int i,j;
for(i 1;i< 7;i++)
{for(j 1;j< i;j++)printf("*");
printf("\n");
}
}
2
()
#include "stdio.h"
voidmain()
{int i,j,k;
for(i 1;i< 7;i++)
{for(j 1;j< 7-i;j++)printf("");
for(k 1;k< i;k++)printf("*");
printf("\n");
}
}
3
()
#include "stdio.h"
voidmain()
{int i,j,k;
for(i 1;i< 6;i++)
{for(j 1;j< i-1;j++)printf("");
for(k 1;k< 11-2*i;k++)printf("*");
printf("\n");
}
}
然后我们在进行扩展。编写程序输出如下图型。
4 5 6
() () ()
所编程序如下:
4
()
#include "stdio.h"
voidmain()
{int i,j,k;
for(i 1;i< 7;i++)
{for(j 1;j< 8-i;j++)printf("*");
printf("\n");
}
}
5
()
#include "stdio.h"
voidmain()
{int i,j,k;
for(i 1;i< 7;i++)
{for(j 1;j< i-1;j++)p