错误怎么改?
#include<stdio.h>#include<stdlib.h>
typedef void Status;
typedef int ElemType;
typedef struct Lnode
{
ElemType data;
struct Lnode *next;
}Lnode,*LinkList;
LinkList p;
Status InitList(LinkList &L)
{
L=(LinkList)malloc(sizeof(Lnode));
L->next=NULL;
}
Status CreateList_L(LinkList &L,int n)
{
int i;
InitList(L);
for(i=n;i>0;i++)
{
p=(LinkList)malloc(sizeof(Lnode));
scanf(&p->data);
p->next=L->next;
L->next=p;
}
}
Status OutList_L(LinkList &L,int n)
{
int i;
p=L;
for(i=1;i<n;i++)
{
printf("%d",p->data);
p=p->next;
}
}
Status ReeverseList_L(LinkList &L,int n)
{
LinkList m;
LinkList n;
m=L;
p=m->next;
m->next=NULL;
while(n!=NULL)
{
n=p->next;
p->next=m;
m=p;
p=n;
}
}
void main()
{
int n,m;
printf("请输入元素的个数:\n");
scanf("%d",&n);
Lnode L;
CreateList_L(L,n);
printf("输出数据:1\n");
printf("逆置:2\n");
scanf("%d",&m);
switch(m)
{
case'1':OutList(L,n);break;
case'2':ReverseList_L(L,n);break;
default:printf("error\n");
}
}