*
* *
* *
* *
*
LZ的意思就是打印一个空心的菱形吧//这样。我把程序写好了。如下
这是打印一个七行的空心菱形
#include<stdio.h>
void main()
{
int i,j,k;
/* i 控制要打印的行数
*j 控制要打印的空格数
*k 控制要打印的星号数*/
//先打印上边的4行
for(i=1;i<=4;i++) //控制打印的行数
{
for(j=1;j<=4-i;j++)//控制每行要打印的空格数
printf(" ");
for(k=1;k<=2*i-1;k++)//控制打印第一个" * " 到第二个" * "
{
if(k==1||k==2*i-1)//判断“*”号是第一个或者最后一个。如果是则打印*号。否则打印空格
printf("*");
else
printf(" ");
}
printf("\n");
}
//然后打印下面的3行
for(i=1;i<=3;i++)//控制打印的行数
{
for(j=1;j<=i;j++)//控制打印的空格数
printf(" ");
for(k=1;k<=7-2*i;k++)//控制每行要打印的"*"数
{
if(k==1||k==7-2*i) //判断“*”号是第一个或者最后一个。如果是则打印*号。否则打印空格
printf("*");
else
printf(" ");
}
printf("\n");
}
}
下面是打一个可以输入几行的菱形
#include <stdio.h>
void main()
{
int i,j,k,n;
printf("请输入你要看到几行的菱形:");
scanf("%d",&n);
for (i=1;i<=n;i++)//先打印上面N行
{
for(k=1;k<=n-i;k++)//控制打印的空格
{
printf(" ");
}
for(j=1;j<=2*i-1;j++)//控制打印的*号
{
printf("*");
}
printf("\n");
}
for (i=n-1;i>=1;i--)//先打印下面N行 如果是要打印锥形.可以改一下I的初始值为i=n就行了
{
for(k=1;k<=n-i;k++)//控制打印的空格
{
printf(" ");
}
for(j=1;j<=2*i-1;j++)//控制打印的*号
{
printf("*");
}
printf("\n");
}
}
[此贴子已经被作者于2007-6-6 12:49:03编辑过]