#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
typedef struct node{
int data;
struct node* next;
}node,*linklist;
void intlist(linklist*l){
*l=(node*)malloc(sizeof(node));
(*l)->next=NULL;
}
void creatfromhead (linklist l,int n){
int a;
node *s;
for (int i = 0; i <n; i++)
{
s=(node*)malloc(sizeof(node));
scanf("%d",&a);
s->data=a;
s->next=l->next;
l->next=s;
}
}
void main(){
int n,i;
scanf("%d",&n);//n链表个数,i显示第几个元素
linklist*l;
*l=(linklist)malloc(sizeof(node));
intlist(l);
creatfromhead(*l,n);
linklist *p;
*p=(*l)->next;
for (i=(-1); i <n+1 ; i++)
{
if(i==0)
*p=NULL;
else if(i==(-1))
*p=*l;
else
{
i=i--;
while(p!=NULL&&(i-1)!=0)
{
*p=(*p)->next;
i=i--;
}
}
printf("%d",(*p)->data);
}
}
//10 5 1 2 3 4 5 6 7 8 9 10
//10 10 1 2 3 4 5 6 7 8 9 10
//10 0 1 2 3 4 5 6 7 8 9 10
linklist*l;
*l=(linklist)malloc(sizeof(node));
intlist(l);
//改成 =>
linklist l;
l=(linklist)malloc(sizeof(node));
//intlist(l);
试着改一下,linklist本身就是指针了,别弄错了。