using namespace std
//定义单链表,参考教材P30
typedef struct LNode
{
int data
struct LNode *next
}LNode,*LinkList
void output(LinkList L)
int findMax(LinkList L)
//单链表的初始化,参考教材P32
void InitList_L(LinkList &L)
{
L=new LNode
L->next=NULL
}
//尾插法创建单链表,参考教材P37--P38
void CreateList_L(LinkList L,int n)
{
int i
LinkList p,r
r=L
//cout<<"请依次输入该表的各个元素:"
for(i=0
{
p=new LNode
cin>>p->data
p->next=NULL
r->next=p
r=p
}
}
void output(LinkList L)
{
LinkList p=L
while(p){
printf("%d",p->data )
if(p->next ) printf(",")
p=p->next
}
}
int findMax(LinkList L)
{
int max
if(!L->next ) return L->data
else{
max=findMax(L->next )
return max>=L->data?max:L->data
}
}
int main(void)
{
LinkList L
int n
cin>>n
InitList_L(L)
CreateList_L(L,n)
output(L->next)
cout<<endl
cout<<findMax(L->next)<<endl
return 0
}
c++