目录

  • 1 题目
  • 2 分析
  • 3 实现
  • 4 运行结果

1 题目

有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

2 分析

对于一个有序的数组,要插入一个数,并保持依然有序,方法是从后往前比较,若插入的数小于比较的数,那么比较的数往后移,直至遇到插入的数大于比较的数为止,此时将该数插到此位置。

3 实现

#include <stdio.h>void insert(int A[], int n, int x)
{int i;for (i = n - 1; i >= 0; i--) {if (A[i] > x) {A[i + 1] = A[i]; // 当比较的数比x大时,将其后移} else {break; // 确定出x要插入的位置}}A[i + 1] = x; // 将x插入到数组中
}int main(void)
{int n = 8; // 初始数组大小为8int x = 5; // 要插入的数为5int A[20] = {1, 2, 3, 4, 6, 7, 8, 9};insert(A, n, x);for (int i = 0; i < n + 1; i++) {printf("%d ", A[i]);}return 0;
}

4 运行结果

1 2 3 4 5 6 7 8 9

C语言经典例39-在有序数组中插入一个数相关推荐

  1. C语言向有序数组中插入一个数使该数组仍保持有序

    C语言向有序数组中插入一个数使该数组仍保持有序 #include<stdio.h> int main() {     int n,i,j,t,k;     printf("您喜欢 ...

  2. c语言自动输入新数组,c语言 向有序数组中插入一个数,保持原顺序不变,将新数组输出...

    #include"stdafx.h" #include intmain() { intm,n,i,j,h; inta[17]={1,5,9,14,23,34,45,56,67,78 ...

  3. 【C语言】在有序数组中插入一个数,保证它依然有序

    #include<stdio.h> int main() {int a[100] = { 1,3,5,6,10,15,20 };int key, i, j;printf("请输入 ...

  4. C语言在一个排好序的数组中插入一个数,按序输出。

    #include<stdio.h> void main() { int a[4]={1,4,7}; int t,y; printf("以前数组为"); for(int  ...

  5. C语言:向一个有序数组中插入一个数据,并保持数组的有序性。

    C语言:向一个有序数组中插入一个数据,保持数组的有序性. #include <stdio.h> //向一个有序数组中插入一个元素,重新实现有序,并输出. int main() {//注意数 ...

  6. 有序数组中插入元素依然保持有序

    有序数组中插入元素依然保持有序 如何在一个有序数组中插入元素,使得数组依然保持有序,废话不多说直接上代码(C/C++) 如何在一个有序数组中插入元素,使得数组依然保持有序,废话不多说直接上代码(C/C ...

  7. C语言 数组中插入一个数

    题目要求:在一个已按升序排列的数组中插入一个数,插入后,数组仍然按照升序排列,已知升序数组为{1,2,4,6,8,9,12,15,149,156} 第一种方法: 要插入一个数,先随便用一个数去代替它的 ...

  8. 循环有序数组中查找某个数

    循环有序数组中查找某个数 利用二分查找,  一个循环有序数组从中间切分,一定分成一个有序数组和一个循环有序数组,由于循环有序数组不容易判断,我们只需判断哪一边是有序数组以及target是不是在有序数组 ...

  9. 实验报告幻方,数组的排序和向数组中插入某个数

    数学与计算机学院 程序设计 实验报告 年级 11级数电二班 学号2011435058  姓名魏珊珊 成绩______ 专业 电气信息类计算机类 实验地点 主楼402  指导教师 石强实验题目­­学习数 ...

最新文章

  1. 《R语言实战》第7章
  2. Spring中对于WebApplicationInitializer的理解
  3. ThreadPoolExecutor的七个参数详解
  4. Linux Shell脚本编程--jq命令
  5. spring mvc学习(34):restful的delete
  6. php有空语句吗?,php是空还是空?
  7. 数据结构视频教程 -《[北风网]C#版数据结构与算法高级教程》
  8. swagger2 注解说明
  9. 极域电子书包课堂管理系统
  10. 推荐十款现今最受欢迎的数据可视化工具,供你参考
  11. 【腾讯地图】纯手写微信定位考勤小程序,内附完整源码!
  12. 雷柏V500s和V500的win键无效
  13. VLC对视频流做翻转、旋转
  14. RLC并联谐振电路分析
  15. hackthebox(HTB) Ambassdor !
  16. MySQL数据库常见错误与解决方法总结
  17. 怎么给电脑安装window7系统呢
  18. IT圈子很小,遭遇人肉搜索后果很严重
  19. Alink(02) 情感分析(官网案例)详细解析(注释详细版)
  20. 百度:良心何在?素质何在?道德何在?法律常识何在?人性何在?

热门文章

  1. 读《不要等到毕业以后》有感①
  2. springMvc解决json中文乱码
  3. 在Eclipse中的Android项目里实现代码“.NET研究”复用
  4. 如何从SQL Server 中取得字段说明
  5. C# 字符串大小写混合转换(同时进行)
  6. [bzoj2288][pojChallenge]生日礼物【贪心+堆+链表】
  7. ALV添加文字输入框
  8. 预备作业01:你期望的师生关系是什么?
  9. jquery的deferred对象
  10. 各类JDBC数据库连接方式