题目:
自定义函数实现对一个有序数组进行插入操作,保证插入后的数组依然有序。主函数调用。
要求:
1)共自定义2个函数,分别对数组进行插入和输出。
2)数组、待插数据在主函数中定义和赋值。
代码实现如下:
#include<bits/stdc++.h>
using namespace std;
void print(int a[],int n) {//输出函数
for(int i=0; i<n ; i++) cout<<a[i]<<" ";
}
void insert_sort(int a[],int insert,int n) {//插入函数
int flag;
if(insert>=a[n-1]) flag=n;
else {
for(int i=0; i<n; i++) {
if(insert<a[i]) {
flag=i;
break;
}
}
}
n++;
for(int i=n-1; i>=flag; i--) {
a[i+1]=a[i];
}
a[flag]=insert;
print(a,n);//调用输出函数
}
int main() {
int a[1000],n,insert;
cin>>n;
for(int i=0; i<n; i++) {
cin>>a[i];
}
cin>>insert;
insert_sort(a,insert,n);//调用插入函数
return 0;
}