📄 签名.cpp
字号:
#include<iostream.h>
const int xsize=80;
const int ysize=25;
struct node
{
int xstep;
int ystep;
int result;
};
void show(int n)
{
int size=(n+2)*(n+2),sum=0,step=n+1,pos=n+1,point[xsize][ysize];
node *list=new node[size];
for(int i=0;i<size;i++)
{
list[i].xstep=i+1;
list[i].ystep=1;
list[i].result=i-sum;
if(sum<4)
{
if(i==n+1||i==2*(n+1)||i==3*(n+1))
{
list[i].result=0;
sum++;
}
}
}
sum=0;
for(i=step;i<size&&step>=0;i=i+step)
{
for(int j=i+1;j<size;j++)
{
int temp=list[j].xstep;
list[j].xstep=list[i].ystep+list[i].xstep-list[j].ystep;
list[j].ystep=temp+list[i].ystep-list[i].xstep;
}
if(sum==2)
{
step--;
sum=0;
}
sum++;
}
for(i=0;i<ysize;i++)
for(int j=0;j<xsize;j++)
point[i][j]=0;
for(i=0;i<size;i++)
point[list[i].ystep][list[i].xstep]=list[i].result;
for(i=0;i<=n+2;i++)
{
for(int j=0;j<=n+2;j++)
{
if(point[i][j]==0)
cout<<" ";
else
if(point[i][j]>9&&point[i][j]<100)
cout<<point[i][j]<<" ";
else
if(point[i][j]<10)
cout<<point[i][j]<<" ";
else
cout<<point[i][j]<<" ";
}
cout<<endl;
}
}
void main()
{
int n;
cout<<"请输入n的值,n小于18!(因为屏幕大小限制)"<<endl;
cin>>n;
while(n>=18)
{
cout<<"n太大!"<<endl;
cin>>n;
}
show(n);
cout<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -