解题思路:找到插入值需要插入到原数组的那个位置;插入位置后的所有数组元素依次往后移,为所需插入数腾出位置。

注意事项:
输入原始数组仅输入前9个位置,最后一个元素为空。
参考代码:

#include<iostream>

using namespace std;

int main()

{

    int a[10], n;

    int t = 9;

    for (int i = 0; i < 9; i++)

         cin >> a[i];

    cin >> n;

    for (int i = 0; i < 9; i++)

    {

         if (a[i]<n&&a[i + 1]>n)      //找到所需插入的位置

         {

             while (t > i + 1)             //利用t实现元素依次后移;直到第i+1个位置

             {

                  a[t] = a[t - 1];

                  t--;

             }

             a[i + 1] = n;              //第i+1个位置已被腾空,将所需插入数n赋值给a[i+1]

         }

    }

    for (int i = 0; i < 10; i++)

         cout << a[i] << endl;

    return 0;

}

点赞(0)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论