插入算法(C语言)

复制代码
#include<cstdio>
#include<iostream>
#define  N 9
using namespace std;
int main()
{
    int arr[N+1] = { 1,4,7,13,16,19,22,25,280 }; 
    int in,i,j;//要插入的数字
    //打印要插入数字的数组所有元素
    printf("插入前的数组: ");
    for ( i = 0; i <N; i++)
    {
	printf(" %d ", arr[i]);
    }
    //从键盘读取一个要插入的元素
    printf("\n请输入一个要插入的数:");
    scanf_s("%d", &in);
    //找插入的位置
    for (i = 0; i < N; i++)
    {
    	if (arr[i] > in)//找到位置并跳出循环
	  {
		break;
	  }
    }
    //位移,向后移
    for (j = N; j > i; j--)
    {
    	arr[j] = arr[j - i];//为要插入的数字留出位置
    }
    arr[i] = in;//将来插入的数保存在该位置
    //打印插入后的数组
    printf("\n插入后的数组:\n");
    for (i = 0; i < N+1; i++)
    {
	printf(" %d ", arr[i]);
    }
    printf("\n");
    return 0;
}
相关推荐
rainbow688914 小时前
Java17新特性深度解析
java·开发语言·python
bin915314 小时前
C盘瘦身大作战:程序员的存储空间优化全攻略
c语言·开发语言·c盘清理·c盘清理技巧分享
hansang_IR14 小时前
【记录】AT_abc400模拟赛
c++·算法·模拟赛
小秋学嵌入式-不读研版14 小时前
智能台灯功能重设计方案
开发语言
Z.风止14 小时前
Go-learning(1)
开发语言·笔记·后端·golang
iAkuya14 小时前
(leetcode)力扣100 59括号生成(回溯||按括号序列的长度递归)
算法·leetcode·职场和发展
共享家952714 小时前
双指针算法(一)
数据结构·算法·leetcode
十八岁讨厌编程14 小时前
【算法训练营 · 二刷总结篇】回溯算法、动态规划部分
算法·动态规划
阿昭L14 小时前
C++异常处理机制反汇编(二):32位下基本类型异常分析
c++·逆向工程
知识分享小能手14 小时前
Oracle 19c入门学习教程,从入门到精通,VC++ + Oracle 实现汽配管理系统(21)
c++·学习·oracle