看看此程序有何问题

cluber2001 2002-12-24 02:07:02
#include<iostream.h>

struct Lnode
{
double data;
Lnode* next;
};

void Showlist(Lnode* list)
{
while(list)
{
cout<<list->data<<endl;
list=list->next;
}
}

void AddToEnd(Lnode* p,Lnode* head)
{
Lnode* pk=head;
if(pk==NULL)
pk=p;
else
while(pk->next)
{
pk=pk->next;
}
pk->next=p;
p->next=NULL;
}

Lnode* GetNode()
{
Lnode* item;
item=new Lnode;
if(item)
{
item->next=NULL;
item->data=0.0;
}
else
cout<<"Nothing allocated\n";
return item;
}
void main()
{
Lnode* head=NULL;
Lnode* temp;
temp=GetNode();
while(temp)
{
cout<<"data?"<<endl;
cin>>temp->data;
if(temp->data>0)
AddToEnd(temp,head);

else
break;
temp=GetNode();
}
Showlist(head);
}
...全文
31 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
langzi8818 2002-12-24
  • 打赏
  • 举报
回复
#include<iostream.h>

struct Lnode
{
double data;
Lnode* next;
};

void Showlist(Lnode* list)
{
while(list!=NULL)
{
cout<<list->data<<endl;
list=list->next;
}
cout<<"s";
}
Lnode* GetNode()
{
Lnode* item;
item=new Lnode;
if(item)
{
item->next=NULL;
item->data=0.0;
}
else
cout<<"Nothing allocated\n";
return item;
}

void AddToEnd(Lnode* p,Lnode**head)
{
Lnode *s;
Lnode*pk=*head;
s=GetNode();
s->data=p->data;
//s->next=NULL;
if(pk==NULL)
{pk=s;
*head=pk;
}
else
{
while(pk->next)
{
pk=pk->next;
}
pk->next=s;
}

}


void main()
{
Lnode* head=NULL;

Lnode* temp;
temp=GetNode();
while(temp)
{
cout<<"data?"<<endl;
double k;
cin>>k;
temp->data=k;

if(temp->data>0)
AddToEnd(temp,&head);

else
break;
//temp=GetNode();
}
Showlist(head);
}
zhang_jiang 2002-12-24
  • 打赏
  • 举报
回复
改过以后的:
#include<iostream.h>

struct Lnode
{
double data;
Lnode* next;
};

void Showlist(Lnode* list)
{
while(list)
{
cout<<list->data<<endl;
list=list->next;
}
}

void AddToEnd(Lnode* p,Lnode** head)// alternation
{
Lnode* pk=*head;
if(pk==NULL)
{
pk=p;
*head =pk;
}
else
{// add
while(pk->next)
{
pk=pk->next;
}
pk->next=p;
p->next=NULL;
}// add
}

Lnode* GetNode()
{
Lnode* item;
item=new Lnode;
if(item)
{
item->next=NULL;
item->data=0.0;
}
else
cout<<"Nothing allocated\n";
return item;
}
void main()
{
Lnode* head=NULL;
Lnode* temp;
temp=GetNode();
while(temp)
{
cout<<"data?"<<endl;
cin>>temp->data;
if(temp->data>0)
AddToEnd(temp,&head);// alternation

else
break;
temp=GetNode();
}
Showlist(head);
}
cluber2001 2002-12-24
  • 打赏
  • 举报
回复
有没有人帮忙啊

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧