第14周OJ实践 输入一个数插入有序数组中
Problem B: 输入一个数插入有序数组中
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 3239 Solved: 2059
[Submit][Status][Web Board]
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>
#include <stdlib.h>
int main()
{
int a[10],i,n;
for(i=0;i<9;i++)
scanf("%d",&a[i]);//输入已排好的9个元素
scanf("%d",&n);//输入需要插入的数字
i=8;//从已知数列的最后一位与N进行比较。
while(i>=0&&a[i]>n)
{
a[i+1]=a[i];//最大的数往最右面排
i--;//使上次已排好的数字不参与这次的排序
}
i++;//此时即为a[i]
a[i]=n;
for(i=0;i<10;i++)
printf("%d
", a[i]);//顺序输出
return 0;
}
运行结果:
学习心得:学会多给程序加注释,以便日后简单查看!
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇:没有了
- 下一篇:没有了
