有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
【有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。】如果:排序好的数组是从小到大;
下面给一个有bug的代码(如果输入的数字小于第一个数,这个数没办法插入到第一个),欢迎大神指正!
代码:
#include
int main()
{
int a[5] = {1,3,5,6};
int n,i,temp;
scanf("%d", &n);
if(n>=a[3])
a[4] = n;
else
{
for(i=3;
i>=0;
i--)
{
if(n>=a[i])
{
for( ;
i<5;
i++)
{
temp = a[i+1];
a[i+1] = n;
n = temp;
}
}
}
}
for(i=0;
i<5;
i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
推荐阅读
- 一粒饥饿不堪的米
- 醒不来的梦
- Linux下面如何查看tomcat已经使用多少线程
- 写给我20岁时爱过的那个男孩
- 我的2020年年度规划
- 你是否也是一道风景()
- 我有一个小姑娘:童言童语
- 有一个人
- 八零后也已经老了
- 没有毕业的毕业旅行