#include<iostream>
#include<stdlib.h>
using namespace std;
struct Node{
int data;
Node *Next;
};
int main(){//拉丁方正问题
int n;
cin>>n;
Node *pNode=(Node*)malloc(sizeof(Node));
pNode->data=1;
pNode->Next=pNode;
Node *p=pNode;
for(int i=2;i<=n;i++){//构建一个线性链表
Node *h=(Node*)malloc(sizeof(Node));
h->data=i;
h->Next=p->Next;
p->Next=h;
p=h;
}
Node *move;//移动的指针来判断位置
for(int j=0;j<n;j++){//循环输出
move=pNode;
for(int x=0;x<j;x++){
move=move->Next;
}
for(int y=0;y<n;y++){
cout<<move->data<<" ";
move=move->Next;
}
cout<<endl;
}
return 0;
}
拉丁方正
最新推荐文章于 2022-08-18 11:19:30 发布