问题提出
输入一个正整数n(为奇数),打印一个高度为n的“ * ”菱形图案。例如,当n为7的时候,打印出一下图案。
思路
代码:
#include<stdio.h>
int main()
{
int i,j,n;
printf("输入菱形的高n(n为奇数):");
scanf("%d",&n);
if(n<=0||n%2==0) //输入检验
printf("输入有误!");
else
{
for(i=1;i<=n/2+1;i++){ //上三角形的循环打印
for(j=1;j<=n/2+i;j++){
if(j>=n/2-i+2)
printf(" * ");
else
printf(" ");
}
printf("\n");
}
for(i=n/2;i>=1;i--){ //下三角形的循环打印
for(j=1;j<=n/2+i;j++){
if(j>=n/2-i+2)
printf(" * ");
else
printf(" ");
}
printf("\n");
}
}
return 0;
}
运行演示: