求高手解决单链表问题

来源:百度知道 编辑:UC知道 时间:2024/06/30 08:15:35
程序实现环境C++6.0
用C语言实现,就是文件名为 ***.c
题目:
单链表操作
设计一个程序,实现从键盘接受数据,进行单链表的建立(尾插法)、结点的插入(指定结点插入及指定位置插入两种)、结点的删除(指定位置删除及指定结点删除两种)以及单链表的逆置(注:每一步都需要打印出结果)

我写的程序如下链接,请高手修改啊!!!
http://www.isload.com.cn/myfile/download/u5fx0x2iao8pb/danlianbiao.txt

改····改····改一下就好啊~~!!!!!

要能运行成功,不出错的代码!!!

问题真不少,要是仅仅为了你50分,真不值得,希望你看懂改的地方提高自己的编程水平吧!修改仅仅能达到要求,至于特殊情况没有过多考虑.你在测试测试.
#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 100 /* 单链表的最大长度设为100 */
typedef int datatype; /* 设datatype的类型为int型 */
typedef struct node /* 结点类型定义 */
{
datatype data; /* 结点的数据域 */
struct node *next; /* 结点的指针域 */
}linklist; /* linklist为单链表类型 */
linklist *head = NULL;//改 /* head是指向单链表linklist的指针 */

/*linklist **/void hrear_creat() /* 用尾插法建立带头结点的单链表 */
{
int x;
linklist *p,*rear;
/// 这里一改就可以多次插入了
if (head == NULL)
{
head=(struct node*)malloc(sizeof(linklist));
head->data=-999;
rear=head;
}
else
{
rear=head;
while(rear->next)
{
rear = rear->next;
}
}
/// 修改结束
printf("&