新微赢技术网

标题: 请教一个关于单链表的创建和输出问题 [打印本页]

作者: 皇家㊣贺v    时间: 2009-11-3 03:50
标题: 请教一个关于单链表的创建和输出问题
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
typedef struct node
{
int date;
struct node *next;
}slnode,*Linklist;
void initiate(Linklist L)//初始化单链表//
{
L=(Linklist)malloc(sizeof(slnode));
L->next=NULL;
}
linklist creat_list()//创建链表//
{
Linklist L;
initiate(L);
int n;
cout<<"请输入结点数"<<endl;
cin>>n;
L->date=n;
cout<<"请输入结点数据"<<endl;
for(int i=0;i<n;i++)
{
Linklist p;
p=(Linklist)malloc(sizeof(slnode));
cin>>p->date;
p->next=L->next;p=L->next;
};
return L ;
}
void display_list(Linklist L)//输出链表
{
cout<<"输出"<<endl;
Linklist p;
for(int i=0;i<L->date;i++)
{
p->next=L->next;
p=L->next;
cout<<p->date;
};
}
void main()
{
Linklist p;
p=creat_list();
display_list(p);
}
出入结点数后,该程序就运行不起来了!
作者: 我是哈密瓜耶    时间: 2009-11-3 03:50
你这题的问题多
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
typedef struct node
{
int date;
struct node *next;
}slnode,*Linklist;
void initiate(Linklist &L)//初始化单链表//
{
L=(Linklist)malloc(sizeof(slnode));
L->next=NULL;
}
Linklist creat_list()//创建链表//
{
Linklist L = NULL;
initiate(L);
int n;
cout<<"请输入结点数"<<endl;
cin>>n;
L->date=n;
cout<<"请输入结点数据"<<endl;
Linklist p2 = L;
for(int i=0;i<n;i++)
{
Linklist p;
p=(Linklist)malloc(sizeof(slnode));
cin>>p->date;
p2->next = p;
p2 = p;
p->next = NULL;
}
return L ;
}
void display_list(const Linklist &L)//输出链表
{
cout<<"输出"<<endl;
Linklist p = L->next;
while(p != NULL)
{
cout<<p->date<<" ";
p = p->next;
}
}
void main()
{
Linklist p;
p=creat_list();
display_list(p);
}
作者: aiq無奈tx    时间: 2009-11-3 03:50
PS
最好不要把C的习惯带进C++




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2