帮忙调试一下:
不要只指出几个错误的解答,只要最终的符合本来思想的代码。谢谢!!
#include "stdafx.h"
#include "iostream.h"
struct Lnode
{
double data;
Lnode *next;
};
void ShowList(Lnode * list)
{
if(list)
{
cout<<list->data<<endl;
if(list->next)
ShowList(list->next);
}
}
void AddToEnd(Lnode *new1,Lnode *head)
{
if(head==NULL)
{
head=new1;
new1->next=NULL;
}
else
AddToEnd(new1, head->next);
}
Lnode *GetNode()
{
Lnode * item;
item=new Lnode;
if(item)
{
item->next=NULL;
item->data=0;
}
else
cout<<"Nothing allocated\n";
return item;
}
void main()
{
Lnode *head=NULL;//链首
Lnode *temp;
temp=GetNode();
while (temp)
{
cout<<"data:";
cin>>temp->data;
if(temp->data>0)
AddToEnd(temp,head);
else
break;
temp=GetNode();
}
ShowList(head);
}