#define _CRT_SECURE_NO_WARNINGS

#include<stdio.h>
#include<malloc.h>
#define LEN sizeof(struct Node) struct Node
{
int data;
struct Node* Next;
}; typedef struct Node *PtrToNode;
typedef PtrToNode List;//表
typedef PtrToNode Position;//位置 List ReCreatTable(int n);//逆序建立单链表
void PrintTable(Position head);//遍历单链表
void Insert5th(Position head);//在单链表第五个元素前插入一个值为999的元素
void Delete5th(Position head);//删除单链表第五个元素 List ReCreatTable(int n)
{
int i;
Position p, head;
head = (Position)malloc(LEN);
head->Next = NULL;
for (i = ; i <= n; i++)
{
p = (Position)malloc(LEN);
printf("请输入元素:");
scanf("%d", &p->data);
p->Next = head->Next;
head->Next = p;
}
return (head);
} void PrintTable(Position head)
{
Position s;
s = head->Next;
printf("链表:");
while (s != NULL)
{
if (s->Next == NULL)
printf("%d\n", s->data);
else
printf("%d ", s->data);
s = s->Next;
}
} void Insert5th(Position head)
{
Position P, TmpCell;
TmpCell = (Position)malloc(LEN);
P = head;
int i;
for (i = ; i < ; i++)
{
P = P->Next;
}
if (TmpCell == NULL)
printf("Out of space!!!");
TmpCell->data = ;
TmpCell->Next = P->Next;
P->Next = TmpCell;
} void Delete5th(Position head)
{
Position P, TmpCell;//TemCell是删除元素
P = head;
int i;
for (i = ; i < ; i++)
{
P = P->Next;
TmpCell = P->Next;
}
P->Next = TmpCell->Next;
free(TmpCell);
} int main()
{
int n;
Position head;
printf("请输入链表元素个数:");
scanf("%d", &n);
head = ReCreatTable(n);
PrintTable(head);
printf("在第五个元素前插入999后");
Insert5th(head);
PrintTable(head);
printf("删除第五个元素后");
Delete5th(head);
PrintTable(head);
return ;
}

C语言链表:逆序建立单链表的更多相关文章

  1. SDUT OJ 数据结构实验之链表二:逆序建立链表

    数据结构实验之链表二:逆序建立链表 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descr ...

  2. SDUT-2117_数据结构实验之链表二:逆序建立链表

    数据结构实验之链表二:逆序建立链表 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 输入整数个数N,再输入N个整数,按照 ...

  3. 链表逆序(JAVA实现)

    题目:将一个有链表头的单向单链表逆序 分析: 链表为空或只有一个元素直接返回: 设置两个前后相邻的指针p,q,使得p指向的节点为q指向的节点的后继: 重复步骤2,直到q为空: 调整链表头和链表尾: 图 ...

  4. ZT C语言链表操作(新增单向链表的逆序建立)

    这个不好懂,不如看 转贴:C语言链表基本操作http://www.cnblogs.com/jeanschen/p/3542668.html ZT 链表逆序http://www.cnblogs.com/ ...

  5. Reverse Linked List II 单向链表逆序(部分逆序)

    0 问题描述 原题点击这里. 将单向链表第m个位置到第n个位置倒序连接.例如, 原链表:1->2->3->4->5, m=2, n =4 新链表:1->4->3-& ...

  6. ZT 链表逆序

    链表逆序 原帖地址http://blog.csdn.net/niuer09/article/details/5961004 分类: C/C++2010-10-23 17:23 18425人阅读 评论( ...

  7. 链表逆序,java实现

    package com.cskaoyan.linkedlist; //反转数组 public class LinkedListDemo2 { public static Node reverse(No ...

  8. C# 单向链表 逆序(递归)

    static void Main(string[] args) { while (true) { LinkedList L = new LinkedList(); L.Add(new Node(&qu ...

  9. 链表逆序---python

    class ListNode: Value = '' # 节点要储存的值,因为Python是弱类型,因此无需传入泛型 Next = None # 下一个节点,初始化时为空值 def __init__( ...

随机推荐

  1. python pyqt4问题记录

    在python中在终端中使用pip无法完成pyqt4的安装. 在官网下载相应的最新文件,在cmd中使用命令也无法实现安装 最终发现python最新的版本(现在已是3.7版本),无法安装. 解决办法为将 ...

  2. webpack基本配置文件(含解释)

    const path = require('path'); // 以下文件需要npm i 文件名 --save-dev const uglify = require('uglifyjs-webpack ...

  3. canvas和SVG

    Canvas的介绍 1.1.创建canvas元素 canvas的定义:它是HTML5中新增一个HTML5标签与操作canvas的javascript API,它可以实现在网页中完成动态的2D与3D图像 ...

  4. CentOS7+Win10双系统的CentOS7启动bug

    自从安装了CentOS7系统,它的启动时间常常要三分钟以上,实在忍不了. 以下是CentOS7系统的启动记录片断: May 18 13:04:05 DESKTOP-23V3CHU kernel: XF ...

  5. 三星I939D手机刷机记录

    三星I939D刷机经过 2017.10.21 ===================== 之前手机的Recovery已经升级过了. 由于一直没有找到原版的升级包,而网上的升级包几乎没有一个干净的,垃圾 ...

  6. Django REST framework--序列化

    Django REST framework--序列化 基础准备工作 创建项目添加应用 (venv) lee@lee:~/PycharmProjects/Djdemo/djdemo$ python ma ...

  7. UnboundLocalError: local variable 'f' referenced before assignment

    参考方案链接: 1.http://blog.chinaunix.net/uid-631981-id-3766212.html 2.http://blog.sina.com.cn/s/blog_4b9e ...

  8. python笔记25-sys模块

    import sys#sys.argv命令行参数List,第一个元素是程序本身路径# sys.exit('xxxxx')#退出程序,正常退出时exit(0)# print(sys.version) # ...

  9. SoapUI--the use of Script Library

    SoapUI--the use of Script Library 有两种方法在soapUI中引用自己的groovy脚本库. 方法一:把自己的script folder放到soapUI install ...

  10. ftp远端上的文件下载

    用linux下的wge下t载比在window下一个个点方便多了,命令如下: wget ftp:// 110.110.110/\*.mseed --ftp-user=username --ftp-pas ...