在一个升序排列的数组中插入一个数 (10分)
编写函数fun,在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列。

函数接口定义:

void fun(int a[N],int number);

其中 a 和 number 都是用户传入的参数。函数在一个已按升序排列的数组 a 中插入一个数 number ,插入后,数组元素仍按升序排列
裁判测试程序样例:

#include <stdio.h>
#define N 11
void fun(int a[N], int number);
int main()
{int i, number, a[N] = {1, 2, 4, 6, 8, 9, 12, 15, 149, 156};scanf("%d", &number);printf("The original array:\n");for (i = 0; i < N - 1; i++)printf("%5d", a[i]);printf("\n");fun(a, number);printf("The result array:\n");for (i = 0; i < N; i++)printf("%5d", a[i]);printf("\n");return 0;
}

输入样例:

6

输出样例:

The original array:1    2    4    6    8    9   12   15  149  156
The result array:1    2    4    6    6    8    9   12   15  149  156

个人答案如下:

void fun(int a[N], int number)
{int m;for (int i = 0; i < N; i++){if (a[i] >= number){m = i;for (int q = (N-1); q > i; q--){a[q] = a[q - 1];}break;}}a[m] = number;
}

原理:
如果输入的数number大于arr[i];
那么从数组arr最后一位arr[N]开始,将arr[N]的值赋给arr[N+1],同时N- -,直到N>i;
最后将number赋值给arr[i];

C语言 在一个升序排列的数组中插入一个数相关推荐

  1. C语言经典例39-在有序数组中插入一个数

    目录 1 题目 2 分析 3 实现 4 运行结果 1 题目 有一个已经排好序的数组.现输入一个数,要求按原来的规律将它插入数组中. 2 分析 对于一个有序的数组,要插入一个数,并保持依然有序,方法是从 ...

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

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

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

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

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

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

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

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

  6. 在升序排序的数组中插入一个元素 用函数编程实现在一个按升序排序的数组中查找x应插入的位置,将x插入数组中,使数组元素仍按升序排列。 提示:插入(Insertion)是数组的基本操作之一。插入法排序算法

    我先使用了三个函数参数,参数分别为数组a[],数组元素数量number和需要插入的数字n.函数定义为int f(int a[],int number,int n); #include <stdi ...

  7. 在一个已经排序好的数组中插入一个数,按原来排序的规律

    思路:一个升序数组,插入一个数,若比最后一个数大,放到a[10]中.其他位置插入统一向后移一个. 注:if中最后加个break. #include<stdio.h> int main() ...

  8. 题目标题: 插队(在一个排好序的数组中插入一个数)

    题目描述: 编写程序,对一个已经排好序的数组,输入一个元素.将该元素按原来的排序规则将它插入到数组中.例如原数组为:1 2 6 7 9,输入待插入的元素3,则插入完成后结果为: 1 2 3 6 7 9 ...

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

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

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

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

最新文章

  1. R语言ggplot2可视化堆叠的条形图(stacked bar plot)并在每一个条形图的的中间添加对应的数值、值标签定位在geom_col堆叠的条形图中的每个条形段的中间
  2. vue2 构建一个旅游类WebApp
  3. Disruptor是一个高性能的异步处理框架
  4. VS2010配置QT5.5.0开发环境
  5. 绍兴市一男子醉酒驾车还冲上公交车暴打司机
  6. centosx64 6.2安装virtualbox
  7. 第八章节 文件操作一 (文件常用操作)
  8. 资源 | 有没有必要把机器学习算法自己实现一遍?
  9. mysql 8.X主从复制
  10. UE4/UE5 WebBrowser无法播放直播流的问题
  11. GO语言开发天天生鲜项目第四天 商品后台管理
  12. 尚学堂__百战程序员__1573题------第一章 初始java
  13. cascader回显
  14. matlab韦伯分布,科学网—威布尔分布 Weibull Distribution 资源网页搜集 - 杨正瓴的博文...
  15. 苹果手机计算机怎样拉到桌面,20个你应该知道的iPhone 7实用小技巧
  16. 微信分享服务器,微信分享的链接会被腾讯后台先访问
  17. linux 常用文本处理工具
  18. 靶机5 DC-4(过程超详细)
  19. 【C语言】ISBN识别码判断
  20. Fluent流体材料——NIST Real Gas模型

热门文章

  1. ProE\Creo实用技巧-族表实例通过关系式、Program实现自动切换
  2. 08.BOM--JavaScript高级程序设计(笔记)
  3. LG XGT PLC 通讯模块IP地址设置不了
  4. 【Unity工具,简单学习】PUN 2,多人在线游戏开发,初步使用
  5. unity3d android 触摸事件,解决Unity3D关于手机触屏事件的方法
  6. go语言后台管理系统
  7. 世界经济危机对我们淘宝人的影响
  8. Android遥控器组合键的处理
  9. Bugku-WEB-writeup(持续学习中~)
  10. 让郑州肉类商品交易所来打破骗局