插入排序可以百度。
具体可以参考:插入排序相关
btw,我觉得这个题有个bug,因为只用进行一趟排序,那么把第0,1位的数从小到大换个位置就好了2333,不过我没有试。
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
int main()
{
int num,a[1005],i,j;
cin>>num;
for(i=0;i<num;i++)
cin>>a[i];
for(i=1;i<num;i++)//要从第一个开始比较,所以把i置为0;
{
if(a[i]<a[i-1])
{
int temp=a[i];
int j=i;
for(;j>0 && a[j-1]>temp;j--)
{
a[j]=a[j-1];
}
a[j]=temp;//因为只用进行一趟排序,所以到这里就是第一次,所以停止;
break;//去掉break就是完整的排序;
}
}
for(i=0;i<num;i++)
cout<<a[i]<<" ";
return 0;
}