我正在尝试在INSERTION SORT
此处实施C
,我认为我已经成功完成了。但是,我在passing arrays as arguments
.
我想要就地排序,这意味着传递给insertion_sort
函数的原始数组应该包含排序数组本身的元素。
#include<stdio.h>
int * insertion_sort(int *a,int length)
{
int j;
for(j=1;j<length;j++)
{
int i,key=a[j];
for(i=j-1;j>=0;j--)
{
if(a[i]<=key)
break;
a[i+1]=a[i];
}
a[i+1]=key;
}
return *a;
}
int main(void)
{
int a[]={10,12,7,6,9,8};
insertion_sort(a,6);
int i;
for(i=0; i<6; i++)
printf("%d\n", a[i]);
return 0;
}
编辑 输出屏幕中没有打印任何内容。帮我找到这里的错误。谢谢 !!