c语言 链表-数据结构链表创建出错

问题描述

数据结构链表创建出错

麻烦大家帮我看看哪里出错了,十分感谢啊

#include "stdio.h"
#include "malloc.h"
#include "stdlib.h"
#define NULL 0
#define OK 1

typedef int ElemType;
typedef int Status;

typedef struct LNode{
ElemType data;
struct LNode *next;
}LNode,LinkList;

Status InitLinkList(LinkList *L)
{
L=(LinkList *)malloc(sizeof(LNode));
return 0;
}

Status CreatLinkList(LinkList *L)
{
L=(LinkList *)malloc(sizeof(LNode));
L->next=NULL;
LinkList *p,*q;
p=L;
ElemType temp=0;
printf("请按递增的顺序输入数据,输入-1结束n");
for(int i=0;;i++)
{ scanf("%d",temp);
if(temp == -1)break;
q=(LinkList *)malloc(sizeof(LNode));
q->data=temp;
q->next=NULL;
p->next=q;
p=q;
L->data++;
}
return OK;

}
Status PrintfLinkList(LinkList *L)
{
LinkList *p;
p=L->next;
while(p!=NULL)
{
printf("%dt",p->data);
p=p->next;
}
printf("n");
return 0;
}

void main()
{
LinkList *m;
m=(LinkList *)malloc(sizeof(LNode));
CreatLinkList(m);
PrintfLinkList(m);
}

时间: 2024-10-03 03:19:44

c语言 链表-数据结构链表创建出错的相关文章

单链表-数据结构 链表的创建 不知道怎么改

问题描述 数据结构 链表的创建 不知道怎么改 #include #include #include typedef struct Node //创建新的数据类型 { int data; //数据域 struct Node * pNext; //指针域 }NODE, *PNODE; //NODE等价与struct Node //PNODE等价于struct Node * //函数声明 PNODE create_list(); void traverse_list(NODE pHead); int

用C语言实现数据结构的链表创建时出错

问题描述 用C语言实现数据结构的链表创建时出错 请教大家,下面的程序哪里有错啊?十分感谢 #include "stdio.h" #include "malloc.h" #include "stdlib.h" #define NULL 0 #define OK 1 typedef int ElemType; typedef int Status; typedef struct LNode{ ElemType data; struct LNode *

C语言创建和操作单链表数据结构的实例教程_C 语言

1,为什么要用到链表 数组作为存放同类数据的集合,给我们在程序设计时带来很多的方便,增加了灵活性.但数组也同样存在一些弊病.如数组的大小在定义时要事先规定,不能在程序中进行调整,这样一来,在程序设计中针对不同问题有时需要3 0个大小的数组,有时需要5 0个数组的大小,难于统一.我们只能够根据可能的最大需求来定义数组,常常会造成一定存储空间的浪费. 我们希望构造动态的数组,随时可以调整数组的大小,以满足不同问题的需要.链表就是我们需要的动态数组.它是在程序的执行过程中根据需要有数据存储就向系统要求

c语言-C语言(数据结构)链表创建问题

问题描述 C语言(数据结构)链表创建问题 #include #include//含malloc.h #define LEN sizeof( Faction) //一元多项式结构体 typedef struct Faction{ int coefficient;//系数 int exponent;//指数 struct Faction next; }Faction; //创建链表 Faction *creat() { Faction *head, *p1, *p2; head = NULL; p1

c语言-线性链表数据结构的插入与删除

问题描述 线性链表数据结构的插入与删除 在你自己的文件下,建立一个C语言程序SL.C,完成下列要求: 1. 定义长度为10的数组,输入9个数据(1,3,4,5,7,9,12,20,28),然后输出这九个数组元素的存储单元地址和相应的数值: 2. 建立一个数组元素的插入函数,能够按照数据从小到大的次序自动找到插入位置完成插入元素的操作,调用此函数插入数据15,然后输出数值元素的存储单元地址和相应的数值: 3. 建立一个数组元素的删除函数,能够按照数据自动删除指定元素的操作,调用此函数删除数据值为9

数据结构 链表 c语言 简单问题

问题描述 数据结构 链表 c语言 简单问题 正在学习数据结构 有个问题想问一下 下面的代码中为什么 pt == NULL 就说明列表满? //如果列表满则返回真 bool ListIsFull (const List * plist) { Node * pt; bool full; pt = (Node *)malloc(sizeof (Node)); if (pt == NULL) full = true; else full = false; free (pt); return full;

数据结构 链表 插入出错

问题描述 数据结构 链表 插入出错 #include <stdio.h> #include <string> #include <iostream> using namespace std; struct LNode{ string name; string sex; int age; LNode *next; }; LNode *students; void InitList(LNode *list){ list=(LNode *)malloc(sizeof(LNod

C语言之单链表的插入、删除与查找_C 语言

单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素.要实现对单链表中节点的插入.删除与查找的功能,就要先进行的单链表的初始化.创建和遍历,进而实现各功能,以下是对单链表节点的插入.删除.查找功能的具体实现: #include<stdio.h> #include<stdlib.h> #include<string.h> typedef int ElemType; /** *链表通用类型 *ElemType 代表自定义的数据类型 *struct

c语言-C语言新人关于链表的问题

问题描述 C语言新人关于链表的问题 如何实现对一个链表进行排序后的输出,但是不改变链表本身. 不能新建链表来拷贝. 解决方案 我也是新人,如果是这样的话.会比较麻烦.我的想法是这样的.先找到链表尾.知道一共有多少个数据,然后创建一个结构体数组,结构体中定义Int 排序,你的类型指针变量,排序后将排序的顺序存入数组.将链表地址存入指针变量,建一个循环,依次输出.不过此种方法依然需要建一个数组.不知道行不行 解决方案二: 必须借助内存空间,完成排序工作. 解决方案三: 你把链表的每个元素读出来存到一