高手请进 C 关于链表的创建 删除 插入 输出的问题

来源:百度知道 编辑:UC知道 时间:2024/05/26 18:47:24
还有三处错误,请您运行以下,帮我找找错误
#include<stdio.h>
#include<stdlib.h>

typedef struct Lnode{ /*结构体说明*/
int data;
struct Lnode *next;
}Lnode, *linklist;

void creatlist(linklist head); /*创建列表*/
void output(linklist head); /*输出链表所有元素*/
void insert(linklist head,int i,int x); /*插入结点*/
void delete(linklist head,int x);/*删除结点*/
void length(linklist head); /*返回链表长度*/

main()
{linklist head,p;
int x,i;
char m;
printf("Creat the list:\n");
head=(linklist)malloc(sizeof(Lnode));
creatlist(head);
printf("This is an old link:");
output(head);
length(head);
printf("\n");

printf("Please select:\n");
printf("A......insert:\n");
printf("B......delete:\n");
printf("C......length:\n");
printf("Q........quit:\n");

可不止3个错误啊,还有逻辑上的问题,改写如下,修改的地方加了注释,但不全,错误的直接改了:
#include<stdio.h>
#include<stdlib.h>

typedef struct Lnode{
int data;
struct Lnode *next;
}Lnode, *linklist;

void creatlist(linklist head);
void output(linklist head);
void insert(linklist head,int i,int x);
void delete(linklist head,int x);
void length(linklist head);

main()
{
linklist head,p;
int x,i;
char m;
printf("Creat the list:\n");
head=(linklist)malloc(sizeof(Lnode));
creatlist(head);
printf("This is an old link:");
output(head);
length(head);
printf("\n");
/*界面交互设计有改动*/
do{

printf("Please select:\n");
printf("A......insert:\n");
printf("B......delete:\n");
printf("C......length:\n");
printf("Q........quit:\n");