题目:
输入一个n,表示两个菱形图形(实心和空心)的行数(或者一半行数),利用循环语句实现输出。
*
* * *
* * * * *
* * *
*
*
* *
* *
* *
*
说明:
此题相当于两个题,要打印出两个图。
提示:
第一个菱形分析*
号个数和规律;第二题分析*
出现位置及变化规律
#include<stdio.h>
int main()
{
int n,i,j,k;//n为一半行数 ,i为行,j为空格数
scanf("%d",&n);
for(i=1;i<=n;i++)//将两个图分成有规律的四个部分,利用for循环输出
{
for(j=0;j<(2*n-2*i);j++)printf(" ");
for(j=0;j<(2*i-1);j++)
{
printf("* ");
}
printf("\n");
}
for(i=1;i<n;i++)
{
for(j=0;j<(2*i);j++)printf(" ");
for(j=0;j<(2*n-1-2*i);j++)
{
printf("* ");
}
printf("\n");
}
printf("\n");//两个图换行分界
for(i=1;i<=n;i++)
{
for(j=0;j<(2*n-2*i);j++)printf(" ");
printf("*");
if(i!=1)
{
for(j=0;j<(4*i-5);j++)
printf(" ");
printf("*");
}
printf("\n");
}
for(i=1;i<n;i++)
{
for(j=0;j<(2*i);j++)printf(" ");
printf("*");
if(i!=n-1)
{
for(j=0;j<(4*n-5-4*i);j++)
printf(" ");
printf("*");
}
printf("\n");
}
return 0;
}