1045:插入有序数组中
Description
已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中。
Input
第一行,原始数列。第二行,需要插入的数字。
Output
排序后的数列
Sample Input
1 7 8 17 23 24 59 62 101
50
Sample Output
1
7
8
17
23
24
50
59
62
101
参考解答:
#include<stdio.h>
int main(){int a[10],i,n,k;
for(i=0;i<9;i++){scanf("%d",&a[i]);}
scanf("%d",&n);
for(i=0;i<9;i++)
{ if(n<a[i])
break;}
k=i;
for(i=8;i>=k;i--)
{ a[i+1]=a[i];}a[k]=n;for(i=0;i<10;i++)
printf("%d\n",a[i]);}
以下是贺利坚老师写的
思路相同,但贺老师的代码减少了变量的使用,更为方便。