C语言排序问题.......

来源:百度知道 编辑:UC知道 时间:2024/05/11 19:58:24
不知道是哪儿错了................先谢谢了

#include<stdio.h>
int main(void)
{
int s;
int temp[]={380,68,98,66,78};
void insert_sort(int *q,int n);
void print(int *p,int size);

s=sizeof temp/sizeof temp[0]-1;
insert_sort(temp,s);
print(temp,s);

return 0;
}

void insert_sort(int *q,int n)
{
int t,j,key;
for(t=2;t<=n;++t)
{
key=q[t];
j=t-1;
while(j>0 && q[j]>key)
{
q[j+1]=q[j];
j--;
}
q[j+1]=key;
}

}

void print(int *p,int size)
{
int k;
for(k=0;k<size;++k)
printf("%d ",*(p+k));
}
这个也不行啊....

#include<stdio.h>
int main(void)
{
int s,*p1;
int temp[]={380,68,98,66,78};
int* insert_sort(int *q,int n);
void print(int *p,int size);

s=sizeof temp/sizeof temp[0]-1;
p1=insert_sor

#include<stdio.h>
int main(void)
{
int s;
int temp[]={380,68,98,66,78};
void insert_sort(int *q,int n);
void print(int *p,int size);

s=sizeof(temp)/sizeof(temp[0])-1;//
insert_sort(temp,s);
print(temp,s);

return 0;
}

void insert_sort(int *q,int n)
{
int t,j,key;
for(t=1;t<=n;++t)//注意这里
{
key=q[t];
j=t-1;
while(j>=0 && q[j]>key)//注意这里
{
q[j+1]=q[j];
j--;
}
q[j+1]=key;
}

}

void print(int *p,int size)
{
int k;
for(k=0;k<=size;++k) //注意这里
printf("%d ",*(p+k));
}