求大神指导 实在找不到原因
#include<stdio.h>#include<stdlib.h>
:cry
typedef struct node
{
char data;
struct node *next;
}LinkList;
LinkList *CreateList()
{
char c;
LinkList *head;
LinkList *s;
printf("请输入链表元素,以‘#’结束:\n");
c=getchar();
while('#'!=c )
{
s=(LinkList *)malloc(sizeof(LinkList));
head=NULL;
s->data=c;
s->next=head;
head=s;
while(c>=45&&c<=57)
{
c=getchar();
}
while(c>=65&&c<=90)
{
printf("请输入嵌套链表内容:\n");
CreateList();
}
c=getchar();
}
return head;
}
void Print(LinkList *head)
{
LinkList *q;
q=head;
if(NULL!=head)
{
do
{
if(q->data>=45&&q->data<=57)
{
printf("%c ",q->data);
q=q->next;
}
if( q->data>=65&&q->data<=90)
{
Print(q);
}
}while(NULL!=q);
}
}
int main()
{
LinkList *L;
L=CreateList();
return 0;
}
大神在哪里,come 北鼻
@c语言大神
递归调用CreateList,但返回值没有接收,你开辟的内存不就丢失了吗? 顶一个~~~~~~ printf("请输入嵌套链表内容:\n");
CreateList();
这样以后,head又被初始化为NULL了 mumudontcry 发表于 2014-7-28 02:43
顶一个~~~~~~
帮忙顶一下 确实是值得思考的一个问题!
页:
[1]