ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

18052 插入数据

2021-01-09 15:59:50  阅读:127  来源: 互联网

标签:18052 23 int 29 插入 数组 数据 display 97



插入数据


Description
已经有一个按升序排列的数组,编写程序输入一个整数x,把x插入到数组中,使数组仍然保持升序。
数组如下:
2 3 5 7 11 13 17 23 29 31 34 71 79 97 103

#include <stdio.h>
int a[16]={2, 3, 5, 7, 11, 13, 17, 23, 29, 31, 34, 71, 79, 97, 103};
void display()
{
int i;
for(i=0; i<16; i++) printf("%d ", a[i]);
}
int main()
{


display();
return 0;

}

输入格式
输入一个整数x

输出格式
输出更新后的数组元素

代码如下:

#include <stdio.h>
int a[16]= {2, 3, 5, 7, 11, 13, 17, 23, 29, 31, 34, 71, 79, 97, 103};
void display()
{
    int i;
    for(i=0; i<16; i++) printf("%d ", a[i]);
}

/*
思路:遍历找到整数要插入的位置,
    插入之后,后面的数组元素全部向后移动一个位置
*/

int main()
{
    int i=0,x,temp;
    scanf("%d",&x);
    if(a[14]<=x)//没有一个数比X大
    {
        a[15]=x;
    }
    else//保证数组中至少有一个数比X大
    {
        while(a[i]<=x)
            i++;//遍历目标,此时a[i]是X要插入的位置
        for(;i<16;i++)//插入x,并将后面的数组元素往后退一格
        {
            temp=a[i];
            a[i]=x;
            x=temp;
        }
    }
    display();
    return 0;
}

标签:18052,23,int,29,插入,数组,数据,display,97
来源: https://blog.csdn.net/m0_50517610/article/details/112392685

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有