这个废了我3天时间
第一种:
void zuobiao()
{
#define sp_size 1089
#define overflow if(k >= sp_size)break;
short sp_x[sp_size];
short sp_y[sp_size];
short s_x[sp_size];
short s_y[sp_size];
int k=0,i;
int set=0;
while(1)
{
if (k==0)
{
sp_x[k]=0;
sp_y[k]=0;
k++;
set++;
}
else
{
overflow;
for (i=1;i<=set;i++)
{
sp_x[k]=1;
sp_y[k]=0;
k++;
}
overflow;
for (i=1;i<=set;i++)
{
sp_x[k]=0;
sp_y[k]=-1;
k++;
}
set++;
overflow;
for (i=1;i<=set;i++)
{
sp_x[k]=-1;
sp_y[k]=0;
k++;
}
overflow;
for (i=1;i<=set;i++)
{
sp_x[k]=0;
sp_y[k]=1;
k++;
}
set++;
}
}
for (k=0;k<sp_size;k++)
{
s_x[k]=0;
s_y[k]=0;
for (int j=0;j<k+1;j++)
{
s_x[k]+=sp_x[j];
s_y[k]+=sp_y[j];
}
}
}
第二种:
void coordinate_value()
{
#define check if(x > size-1)break;
#define check_1 if(y > size-1)break;
int x = 0, y = 0, i, j;
int counter = 1, sign = -1;
short *Sp_x = (short*)calloc(size, sizeof(short));
short *Sp_y = (short*)calloc(size, sizeof(short));
//Sp_x 배열
//
for (int i = 0; i < size; i++)
{
if (x == 0) {
for (i = 0; i < counter; i++)
{ check;
Sp_x[x] = 0;
x++;
}
}
check;
if (x != 0) {
for (i = 0; i < counter; i++)
{
check;
Sp_x[x] = 1;
x++;
}
check;
for (i = 0; i < counter; i++)
{
check;
Sp_x[x] = 0;
x++;
}
check;
counter++;
for (i = 0; i < counter; i++)
{
check;
Sp_x[x] = sign;
x++;
}
check;
for (i = 0; i < counter; i++)
{
check;
Sp_x[x] = 0;
x++;
}
counter++;
}
check;
}
//S_x배열 생성(x좌표값 배열)
//
int a = 0;
for (i = 0; i < size; i++)
{
S_x[i] = 0;
for (j = 0; j < a + 1; j++)
{
S_x[i] += Sp_x[j];
}
a++;
}
counter = 1; //counter 초기화
//Sp_y 배열
//
for (int j = 0; j < size; j++)
{
if (y == 0)
{
for (j = 0; j < counter; j++)
{
Sp_y[y] = 0;
}
check_1;
y++;
}
check_1;
if (y != 0) {
for (j = 0; j < counter; j++)
{
check_1;
Sp_y[y] = 0;
y++;
}
check_1;
for (j = 0; j < counter; j++)
{
check_1;
Sp_y[y] = 1;
y++;
}
check_1;
counter++;
for (j = 0; j < counter; j++)
{
check_1;
Sp_y[y] = 0;
y++;
}
check_1;
for (j = 0; j < counter; j++)
{
check_1;
Sp_y[y] = sign;
y++;
}
check_1;
counter++;
}
}
//S_y배열 생성(y 좌표값 배열)
//
int b = 0;
for (i = 0; i < size; i++)
{
S_y[i] = 0;
for (j = 0; j < b + 1; j++)
{
S_y[i] += Sp_y[j];
}
b++;
}
}