从键盘任意输入10个整数,用插入法完成从小到大排序,,,插入法阿,求大神帮忙,谢谢

如题所述

#include <stdio.h>
//插入法:在前面的有序序列中寻找相应的位置插入
void InsertSort(int *a,int n)
{
 int i,j;
 for(i=1;i<n;i++)
 {
  //从后面无序的往前面有序的插
  for(j=i-1;j>=0;j--)
  {
   if(a[i]<a[j])
   {
    a[j+1]=a[j];
   }
   break;  //找到插入位置了
  }
  a[j+1]=a[i];
 }
   for(int k=0;k<n;k++)
    printf("%d\t",a[k]);
   printf("\n");
   return ;
}

int main(int argc, char* argv[])
{
  int a[10];
 printf("输入10个数\n");
 for(int i=0;i<10;i++)
 {
  scanf("%d",&a[i]);
 }
  InsertSort(a,10);
 return 0;
}追问

运行不出 ?

温馨提示:答案为网友推荐,仅供参考