哪位高手帮我看一下我的程序错哪?

来源:百度知道 编辑:UC知道 时间:2024/05/21 16:14:00
#include <stdio.h>
#include <malloc.h>
typedef int elemtype;
typedef struct LNode

{
elemtype data;
struct LNode *next;
} LNode,*Linklist;/* 单链表的结点类型 */

Linklist LinkedListInit()
{
L =( LNode* )malloc(sizeof(LNode));
L->next=null;
return L;
}/* 初始化单链表 */

void LinkedListClear(LinkedList L)
{
L->next=NULL;
delete L;
printf("链表已经清空\n");
} /* 清空单链表 */

int LinkedListEmpty(LinkedList L)
{
return (L->next==null)
}/* 检查单链表是否为空 */

void LinkedListTraverse(LinkedList L)
{
LinkedList p;
p=L->next;
if(p==NULL)
printf("单链表为空表\n");
else
{
printf("链表中的元素为:\n");
while(p!=NULL)
{
printf("%d ",p->data); p=p->next;
}
}
printf("\n"

不知这段代码是否你写的,错误太多太多了。
建议好好把C语言复习一遍!!
下面给出修改过的代码,编译已经通过,逻辑错误自己解决。
所有错误的地方已经标出,希认真学习参考。

#include <stdio.h>
#include <malloc.h>
//typedef int elemtype; // 错误
typedef int DataType;
typedef struct LNode
{
// elemtype data; // 错误
DataType data;
struct LNode *next;
//} LNode,*Linklist;/* 单链表的结点类型 */ // 错误
} LNode,*LinkedList;/* 单链表的结点类型 */

//Linklist LinkedListInit() // 错误
LinkedList LinkedListInit()
{
LinkedList L =( LNode* )malloc(sizeof(LNode));
// L->next=null; // 错误
L->next=NULL;
return L;
}/* 初始化单链表 */

void LinkedListClear(LinkedList L)
{
L->next=NULL;
delete L;
printf("链表已经清空\n");
} /* 清空单链表 */

//int LinkedListEmpty(LinkedList L)// 错误
bool LinkedListEmpty(LinkedList L)
{
// return (L->next==null) // 错误
return (L->next==NULL)