指针数组排序
指针就是地址,指针一般指向数组的首元素地址
#include<stdio.h>
int main()
{
void sort(int *b,int n);
int a[10],i,*p;
p=a;
printf("输入10个数\n");
for(i=0;i<10;i++)
scanf("%d",p++);
p=a;
sort(a,10);
printf("输出排序后的数组\n");
for(i=0;i<10;i++)
printf("%d ",*p++);
printf("\n");
return 0;
}
void sort(int *b,int n)
{
int *i,*j,*p,t;
i=b;j=b;p=b+n-1;//p=n-1,冒泡排序,n-1次循环,在j次循环时,两两之间进行n-j次比较
for(j=b;j<=p;j++)
{
for(i=b;i<=j-1;i++)
{
if(*i<*j)
{
t=*i;
*i=*j;
*j=t;
}
}
}
}
文章评论