标题
有序序列插值
问题描述
将输入的一系列整数保存在数组中, 然后将数组中的元素按照从小到大的顺序排列, 在将一个给定的整数插入到排好序的数组中, 使得数组中的元素仍然保持从小到大的顺序。
输入说明
输入数据分为三行。
第一行包含了一个整数n, 表示整数系列的个数,1≤n≤20。
第二行包含n个整数, 整数区间为[0,10000]。
第三行包含了一个整数m, 表示即将插入数组的整数, (0≤\m10000。
输出说明
将数组元素按从小到大的顺序输出, 中间用空格分隔。
输入样例
6
5 8 2 6 1 4
7
输出样例
1 2 4 5 6 7 8
#include <stdio.h>
int main()
{
int n,i,j;
scanf("%d",&n);
int a[n+1]={0};
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
scanf("%d",&a[n]);
for(i=0;i<n;i++) {
for(j=0;j<n-i;j++){
if(a[j]>a[j+1]){
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(i=0;i<n+1;i++){
printf("%d ",a[i]);
}
return 0;
}