我是指针,却丢失了目标地址! 我是循环,却缺少了结束条件! 我是函数,却没有人来调用!
#include <stdio.h>
void main()
{
int n,m,i,j,s1,s2,s3,s4;
printf("请输入外菱形与内菱形高度\n");
printf("n=");
scanf("%d",&n);
printf("m=");
scanf("%d",&m);
if(((n%2==0||m%2==0)&&n!=0&&m!=0)||m>=n||n<=0||m<0)
return;
if(n!=0&&m==0)
{m=n/2+1;
for(i=1;i<=m;i++)
{
for(j=1;j<=m-i;j++)
printf(" ");
for(j=1;j<=2*i-1;j++)
printf("*");
printf("\n");
}
m--;
for(i=1;i<=m;i++)
{
for(j=1;j<=i;j++)
printf(" ");
for(j=1;j<=2*(m-i)+1;j++)
printf("*");
printf("\n");
}
}
else
{s1=(n-m)/2;
s2=(m+1)/2;
s3=(m-1)/2;
for(i=1;i<=s1;i++)
{
for(j=1;j<=(n+1)/2-i;j++)
printf(" ");
for(j=1;j<=i*2-1;j++)
printf("*");
printf("\n");
}
for(i=1;i<=s2;i++)
{
for(j=1;j<=s2-i;j++)
printf(" ");
for(j=1;j<=s1;j++)
printf("*");
for(j=1;j<=i*2-1;j++)
printf(" ");
for(j=1;j<=s1;j++)
printf("*");
printf("\n");
}
for(i=1;i<=s3;i++)
{
for(j=1;j<=i;j++)
printf(" ");
for(j=1;j<=s1;j++)
printf("*");
for(j=1;j<=(s3-i)*2+1;j++)
printf(" ");
for(j=1;j<=s1;j++)
printf("*");
printf("\n");
}
for(i=1;i<=s1;i++)
{
for(j=1;j<=n/2-s1+i;j++)
printf(" ");
for(j=1;j<=(s1-i)*2+1;j++)
printf("*");
printf("\n");
}
}
getch();
}
空心不空心都可以打印,n是外菱形的行高,m是内菱形的行高