利用for循环打印菱形思路,但是有报错,求助哪里有问题
查看原帖
利用for循环打印菱形思路,但是有报错,求助哪里有问题
614832
GYP123楼主2022/4/18 18:57
#include<stdio.h>
int main()
{
	int a[100][100];
	int n,m,k,i,j,x,y,p,o=0;
	scanf("%d%d%d",&n,&m,&k);
	for(i=1;i<=n;i++)
	{
		for(j=1;j<=n;j++)
		{
			a[i][j]=0;
		}
	}//标记所有位置
	if(m>0)//标记萤石 
	{
		for(p=2;p<=m+1;p++)
		{
		scanf("%d%d",&x,&y);
		for(i=x-2;i<=3;i++)
	{
		for(j=y-2;j<=(-1)*i+3;j++)//5| | 
		{
		a[i][j]=0;
		}
		for(j=y-2;j<=2*i-1;j++)//1 * 
		{
		a[i][j]=1;
		}
	}
	for(i=x-2;i<3;i++)
	{
		for(j=y-2;j<=i;j++)//2 | |
		{
		a[i][j]=0;
		}
		for(j=y-2;j<=(-2)*i+5;j++)//7 * 
		{
			a[i][j]=1;
		}

	}
	 	}
	}
	
	if(k>0)//标记火把 
	{
		for(i=m+2;i<=m+k+1;i++)
		{
			scanf("%d%d",&x,&y);
			for(p=x-2;p<=x+2;p++)
			{
				for(j=y-2;j<=y+2;j++)
				{
					a[p][j]=1;
				}
			}
		}
//打印方块 
	 } 
	 for(i=1;i<=n;i++)
	 {
	 	for(j=1;j<=n;j++)
	 	{
		if(a[i][j]==0)
		o++;
		 }
	 }
	printf("%d",o);
	return 0;
}
2022/4/18 18:57
加载中...