实验二单链表的操作与应用..docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验二单链表的操作与应用.

南京信息工程大学实验(实习)报告实验(实习)名称单链表的操作与应用实验日期2012/11/2得分指导教师吴婷婷系计算机与软件学院专业网络工程年级2011班次1姓名管超学号20111346032单链表的操作与应用实验目的掌握线性表的单链表基本操作:建立、插入、删除、查找、合并、打印等运算。实验准备奔腾2计算机或以上机型Visual C++ 6.0实验内容百货公司库中有一批电视机,按某价格从低到高的次序构成了一个单链表并存于计算机中,链表的每一个结点指出同样价格的若干台。现在又有新到的m台价格为h元的电视机入库。编写仓库电视机链表增加电视机的算法。结点结构的定义为:typedefstruct node{int number, price;struct node *next;}list;实验代码#includestdio.h#includeconio.h#includestdlib.htypedefstruct node{int number;int price;struct node *next;}List;//初始化链表List* Init_func(List L){List *head;head = (List *)malloc(sizeof(List));if (head == NULL){printf(无法分配空间!\n);exit(0);}else{head-next = NULL;}return head;}//初始化数据voidInitData_func(List *head){List *ptr, *previous, *current;ptr = (List *)malloc(sizeof(List));if (ptr == NULL){printf(无法分配空间!);exit(0);}else{printf(\n请输入电视的价格: );scanf(%d, (ptr-price));printf(请输入库存电视台数: );scanf(%d, (ptr-number));}previous = head;current = head-next;while ((current != NULL) (current-price ptr-price)){previous = current;current = current-next;}previous-next = ptr;ptr-next = current;}//添加一个数据并进行整合voidInsert_func(List *head){List *ptr, *previous, *current;int price, number;printf(\n请输入电视的价格: );scanf(%d, price);printf(请输入电视的台数: );scanf(%d, number);previous = head;current = head-next;if (current == NULL){printf(\n库存中无电视, 正在为您添加数据...\n);ptr = (List *)malloc(sizeof(List));if (ptr == NULL){printf(无法分配空间!\n);exit(0);}else{ptr-price = price;ptr-number = number;}previous-next = ptr;ptr-next = current;printf(数据添加成功!\n);}else{while ((current != NULL) (current-price = price)){previous = current;current = current-next;}if (previous-price == price){printf(\n库存中有此价格电视, 正在为您归并...\n);previous-number += number;printf(数据归并成功!\n);}else{printf(\n库存中无此价格的电视, 正在为您添加数据...\n);ptr = (List *)malloc(sizeof(List));if (ptr == NULL){printf(无法分配空间!\n);exit(0);}else{ptr-price = price;ptr-number = number;}previous-next = ptr;ptr-next = current;printf(数据添加成功!\n);}}}//显示链表中的数据voidDisplay_func(List *head){List *current;current = head-next;if (current == NULL){printf(库存中没

文档评论(0)

sa1fs5g1xc1I + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档