题目描述

建立长度为n的单链表,在第i个结点之前插入数据元素data。

输入

第一行为自然数n,表示链式线性表的长度; 第二行为n个自然数表示链式线性表各元素值; 第三行为指定插入的位置i;第四行为待插入数据元素data。

输出

指定插入位置合法时候,输出插入元素后的链式线性表的所有元素,元素之间用一个空格隔开。输入不合法,输出"error!"。

样例输入

5
1 2 3 4 5
3
6

样例输出

1 2 6 3 4 5
#include<stdio.h>
#include<malloc.h>typedef struct SLink
{int data;int judge;struct SLink *next;
}slink;slink *createList()
{int n,temp;slink *L,*r,*s;scanf("%d",&n);L = (slink *)malloc(sizeof(slink));r = L;for(int i=0;i<n;i++){scanf("%d",&temp);s=(slink *)malloc(sizeof(slink));s->data = temp;r->next = s;r = s;}r->next = NULL;return L;
}int listLength(slink *L)
{int i=0;slink *p=L;while(p->next){i++;p = p->next;}return i;
}void Display(slink *L)
{slink *p;p = L->next;while(p->next!=NULL){printf("%d ",p->data);p = p->next;}printf("%d\n",p->data);
}slink *insertElem(slink *L,int site,int elem)
{int j = 0;slink *p,*s;p = L;if(site<1){L->judge = 0;return L;}while(j < site-1 && p!=NULL){j++;p = p->next;}if(p==NULL){L->judge = 0;return L;}else{s = (slink *)malloc(sizeof(slink));s->data = elem;s->next = p->next;p->next = s;L->judge = 1;return L;}
}int main()
{slink *L;int site,elem;L = createList();scanf("%d",&site);scanf("%d",&elem);L = insertElem(L,site,elem);if(L->judge){Display(L);}else{printf("error!");}return 0;
}

西南科技大学 swust oj #952: 单链表的插入操作的实现相关推荐

  1. SWUST OJ 953: 单链表的删除操作的实现

    建立长度为n的单链表,删除第i个结点之前的结点. 第一行为自然数n,表示链式线表的长度: 第二行为n个自然数表示链式线性表各元素值: 第三行为指定的删除参数i. #include <stdio. ...

  2. 西南科技大学OJ题 单链表的删除操作的实现0953

    单链表的删除操作的实现 1000(ms) 65535(kb) 2896 / 13622 建立长度为n的单链表,删除第i个结点之前的结点. 输入 第一行为自然数n,表示链式线性表的长度: 第二行为n个自 ...

  3. SWUST OJ 954单链表的链接

    swust oj 954 题目描述 建立长度为n的单链表A和长度为m的单链表B.编程实现将B表链接在A表的尾端,形成一个单链表A.数据类型指定为字符型. 输入 输出 样例输入 样例输出 源代码 #in ...

  4. SWUST OJ#955 单链表上查找算法的实现

    目录 题目 思路 代码 数据结构 STL 题目 题目描述 建立一个长度为n的带头结点的单链表,在该表中寻找第i个结点,若找到,则输出ok,否则输出error.处理数据类型为整型. 输入 第一行为链表的 ...

  5. 单链表的插入操作的实现(0952)SUWST-OJ

    Description 建立长度为n的单链表,在第i个结点之前插入数据元素data. Input 第一行为自然数n,表示链式线性表的长度:第二行为n个自然数表示链式线性表各元素值:第三行为指定插入的位 ...

  6. 单链表的插入操作(全)

    1 在指定位序插入数据 第一步   主要执行操作:查找  先查找所要插入位置的前一个元素  具体方法:根据链表的特点-每一个节点都需要一个数据域和指针域  所以只需从头节点遍历到所要插入数据的的前一个 ...

  7. 西南科技大学 swust OJ 943: 顺序表插入操作的实现

    题目描述 建立长度为n的顺序表,在指定的数据元素item之前插入数据元素data.如果指定的数据元素item不存在,则将data插入到顺序表的尾端.(数据类型为整型) 输入 第一行为顺序表的长度n: ...

  8. 【 C 】在单链表中插入一个新节点的尝试(二)

    在上篇博文中:[ C ]在单链表中插入一个新节点的尝试(一),我们最后提到了如果向单链表的开头(起始位置)插入一个节点,上篇博文中给出的程序显然完成不了这任务. 这篇博文中,我们将解决这个问题,给出一 ...

  9. 【 C 】在单链表中插入一个新节点的尝试(一)

    根据<C和指针>中讲解链表的知识,记录最终写一个在单链表中插入一个新节点的函数的过程,这个分析过程十分的有趣,准备了两篇博文,用于记录这个过程. 链表是以结构体和指针为基础的,所以结构体和 ...

最新文章

  1. 【阿里云产品公测】高大上的搜索服务OpenSearch, 你值得拥有!
  2. 基于光学导航系统,矩阵变换和3D-2D配准研究
  3. cisco vPC技术
  4. rust(11)-函数作为返回值和match(类似于switch)
  5. 牛客网NC112--进制转换
  6. Java 两线程交替打印奇偶数(一)
  7. 真·抬头发票!| 今日最佳
  8. java 字段名重复,java – JSON响应中的重复字段
  9. Web前端面试指导(十四):如何居中一个元素(正常、绝对定位、浮动元素)?
  10. 模型保存的方法-----保存整个模型
  11. 电脑指定区域旋转_随州平板电脑无线管道潜望镜QV厂家_武汉天仪仪器
  12. [置顶] 话说你最拼命的时候怎样拼命的?
  13. appcan使用心得体会
  14. mfc 中文乱码转换为正常中文_中文编码转换
  15. Vivado安装使用【Verilog】
  16. 基于PyTorch的生成对抗网络入门(3)——利用PyTorch搭建生成对抗网络(GAN)生成彩色图像超详解
  17. 儿子于靖洋的百天照片
  18. 连接器E-mark认证要准备什么资料?
  19. el-transfer 用法
  20. Vue.js(渐进式JavaScript框架)

热门文章

  1. 即便是SQL Guy, 也无法逃离UML
  2. csgo调哪个会流畅_对于游戏卡顿掉帧说不,三步提高游戏流畅性,让你纵享丝滑画面...
  3. 手把手教你撸一个小程序带太阳码的海报分享
  4. python中ln怎么表示_Python基础篇(六)
  5. ajax文件上传data,ajax文件上传-FormData()
  6. 高通mm-camera_vendor
  7. Matlab常用函数集合(各类文件读取/保存、数据转换、处理)——持续更新中
  8. echarts天气预报
  9. Vue babel-polyfill 解决IE兼容问题
  10. Android开发-Fragment嵌套Fragment